# calls

session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 279556d1b89957cb
command_snippet:
  cd /home/enmanuel/fn_registry PW="$(pass show captacion/postgres | head -1)" printf 'CAPTACION_DSN=postgresql://captacion:%s@localhost:5433/trends\n' "$PW" > projects/captacion_clientes/.env chmod 600


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: b312c92e92955c3a
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== directo con venv python ===" python/.venv/bin/python3 python/functions/pipelines/ingest_market_trends.py --source competitor 2>&1 | tail -15


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 5658160287bcccba
command_snippet:
  cd /home/enmanuel/fn_registry BIN=apps/dag_engine/dag_engine echo "=== validate market-intel-daily ==="; $BIN validate apps/dag_engine/dags/market-intel-daily.yaml 2>&1 | tail -3 echo "=== validate co


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 0024dd728871b44e
command_snippet:
  cd /home/enmanuel/fn_registry sleep 3 echo "=== status competitor-prices-hourly (CLI) ===" apps/dag_engine/dag_engine status competitor-prices-hourly 2>&1 | head -20 echo; echo "=== ¿insertó algo? (


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: 8639c178f010c9b4
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== velocidad 1 frame ===" { time bash bash/functions/shell/monitor_listening_ports.sh --once >/tmp/frame.txt; } 2>&1 echo "filas: $(($(wc -l </tmp/frame.txt)-1))" 


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: b32cfb1df201771d
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== rutas API (grep handlers) ==="; grep -rhoE 'HandleFunc\("[^"]+"' apps/dag_engine/*.go 2>/dev/null | sort -u | head -30 echo; echo "=== logs recientes del servic


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 86b37d705aa80f10
command_snippet:
  cd /home/enmanuel/fn_registry curl -s -m 5 "http://localhost:4200/api/runs" 2>/dev/null | python3 -c " import sys,json,urllib.request d=json.load(sys.stdin) runs = d if isinstance(d,list) else d.get('


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: d8b5792c69d57e06
command_snippet:
  cd /home/enmanuel/fn_registry grep -rln "def metabase_update_dashboard_safe\|def metabase_create_dashboard\b\|def metabase_create_card\b\|def metabase_dashboard_append_row" python/functions/metabase/*


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: heredoc_py
args_hash: a157851aaf2d5b80
command_snippet:
  cd /home/enmanuel/fn_registry export MB_ADMIN_PW="$(pass show captacion/metabase | head -1)" python/.venv/bin/python3 - <<'PYEOF' import os, sys; sys.path.insert(0,'python/functions') from metabase.cl


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: 9c2fe4b22d558479
command_snippet:
  cd /home/enmanuel/fn_registry s=$(date +%s%N) bash bash/functions/shell/monitor_listening_ports.sh --once >/tmp/frame.txt 2>/tmp/frame.err; rc=$? e=$(date +%s%N) echo "rc=$rc  ms=$(( (e-s)/1000000 )) 


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 1d04a58684b51ee9
command_snippet:
  cd /home/enmanuel/fn_registry ./fn index 2>&1 | grep -E "Indexed|ERROR" | head -3 echo "=== fn doctor capabilities: ¿reconoce market-intel? ===" ./fn doctor capabilities 2>/dev/null | grep -iE "marke


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: 5f6aab4a601171d9
command_snippet:
  echo "proc --once vivo?:"; pgrep -af "monitor_listening_ports.sh --once" | grep -v zsh || echo "  (ninguno -> ya termino)" echo "--- contenido frame.txt ---" wc -l /tmp/frame.txt 2>/dev/null; head -8 


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: dc87e548d1579605
command_snippet:
  cd /home/enmanuel/fn_registry echo "hung pid 2054170 alive?"; { ls -d /proc/2054170 >/dev/null 2>&1 && echo ALIVE || echo dead; } echo "=== ss timing ==="; timeout 6 bash -c 's=$(date +%s%N); n=$(ss -


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: 894410c03433b817
command_snippet:
  cd /home/enmanuel/fn_registry s=$(date +%s%N) timeout 8 bash bash/functions/shell/monitor_listening_ports.sh --once >/tmp/frame.txt 2>/tmp/frame.err; rc=$? e=$(date +%s%N) echo "rc=$rc  ms=$(( (e-s)/1


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: c3d719fdf682d30a
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== cierro TUI vieja ===" for w in $(xdotool search --name "NETMON-ports" 2>/dev/null); do wmctrl -ic "$w" 2>/dev/null && echo "cerrada win $w"; done # esperar a qu


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: b7bf76f0d60654d1
command_snippet:
  win=$(xdotool search --name "NETMON-ports" | tail -1); echo "win=$win" wmctrl -i -r "$win" -b remove,maximized_vert,maximized_horz 2>/dev/null xdotool windowsize "$win" 1900 1030 xdotool windowmove "$


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: 7edb44d77b0f48d4
command_snippet:
  ./fn index 2>&1 | tail -2 echo "--- verifico version indexada ---" ./fn show monitor_listening_ports_bash_shell 2>/dev/null | grep -iE 'version|0\.2\.0' | head -3


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: b3e1cb7a746afbdf
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== SIN sudo (procesos propios traen CMD; los de root siguen como -) ===" timeout 8 bash bash/functions/shell/monitor_listening_ports.sh --once 2>/dev/null | head -


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: 787cfc628bd4e6de
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== index ==="; ./fn index 2>&1 | tail -1 echo "=== cierro TUI vieja ===" for w in $(xdotool search --name "NETMON-ports" 2>/dev/null); do wmctrl -ic "$w" 2>/dev/nu


session_id: 3e7efc18-1a6d-4ccf-92ae-ab31b6ee1640
tool_used: bash_other
args_hash: 39073fe14ad9b02b
command_snippet:
  echo "=== procesos con la ruta del script + su user ===" ps -eo pid=,user=,args= | grep -F "monitor_listening_ports.sh" | grep -v -F "grep" echo "=== hay alguno root? ===" ps -eo user=,args= | grep -F


session_id: 9a6744de-c4ec-4356-a4cb-f0f65b153d93
tool_used: bash_other
args_hash: 89a90ada36a8e1f4
command_snippet:
  curl -s http://localhost:3030/api/session/properties | python3 -c "import sys,json; d=json.load(sys.stdin); v=d.get('version',{}); print('version:', v.get('tag'), v.get('date')); print('token-features


session_id: 9a6744de-c4ec-4356-a4cb-f0f65b153d93
tool_used: bash_other
args_hash: b5c260445262c3cc
command_snippet:
  echo "=== /api/ee/serialization/export (espera 402/403 si gated) ==="; curl -s -o /dev/null -w "status=%{http_code}\n" http://localhost:3030/api/ee/serialization/export echo "=== /api/metabase-mcp (ex


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 54350a6abedc8b01
command_snippet:
  echo "=== chromium binarios ==="; for b in chromium chromium-browser google-chrome brave-browser; do which $b 2>/dev/null; done echo "=== puertos CDP escuchando ==="; ss -ltnp 2>/dev/null | grep -E ':


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: sqlite_direct
args_hash: b9c3590c3414b2b4
command_snippet:
  sqlite3 $HOME/fn_registry/registry.db "SELECT id, signature, returns, error_type FROM functions WHERE id = 'cdp_eval_py_browser';"


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 9c189cfd55c7ab2f
command_snippet:
  cd $HOME/fn_registry && ./fn show error_go_core 2>/dev/null | head -5; echo "---SEARCH---"; ./fn search "tiktok" 2>/dev/null | head -20


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: fd338d05a347c0be
command_snippet:
  cd $HOME/fn_registry && ls python/functions/browser/__init__.py 2>/dev/null && grep -n "cdp_eval" python/functions/browser/__init__.py 2>/dev/null; echo "---datascience init---"; ls python/functions/d


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 491d3faf410cbd28
command_snippet:
  curl -s http://localhost:9222/json/version 2>/dev/null | head -20; echo "---LIST---"; curl -s http://localhost:9222/json/list 2>/dev/null | python3 -c "import sys,json; d=json.load(sys.stdin); print(l


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 4950233980a26d3f
command_snippet:
  cd $HOME/fn_registry && ls python/.venv/bin/python3 2>/dev/null && python/.venv/bin/python3 -c "import websocket, requests; print('deps ok')" 2>&1 | head; echo "---9222 alive?---"; curl -sf "http://12


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: caf4cebfddbe3da6
command_snippet:
  python/.venv/bin/python3 -c " import sys, os sys.path.insert(0, os.path.join('python','functions')) from browser.cdp_eval import cdp_eval r = cdp_eval('1+1', port=9222) print('IMPORT OK', r) "


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: heredoc_py
args_hash: 71be1425cd80abf9
command_snippet:
  python/.venv/bin/python3 - <<'PYEOF' import requests, json, time, urllib.parse PORT=9222 query="gadgets"; ship_to="ES" url=f"https://www.aliexpress.com/w/wholesale-{query}.html?SortType=total_tranpro_


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: heredoc_py
args_hash: a1941eea5699fbda
command_snippet:
  python/.venv/bin/python3 - <<'PYEOF' import requests, json, urllib.parse PORT=9222 query="gadgets"; ship_to="ES" url=f"https://www.aliexpress.com/w/wholesale-{query}.html?SortType=total_tranpro_desc&s


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: heredoc_py
args_hash: 7c3cc6fe9be497f4
command_snippet:
  sleep 6; python/.venv/bin/python3 - <<'PYEOF' import sys, os sys.path.insert(0, os.path.join('python','functions')) from browser.cdp_eval import cdp_eval SUB="aliexpress.com/w/wholesale-gadgets" # tit


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: heredoc_py
args_hash: d9c0bfe400c86b24
command_snippet:
  python/.venv/bin/python3 - <<'PYEOF' import sys, os, time sys.path.insert(0, os.path.join('python','functions')) from browser.cdp_eval import cdp_eval SUB="aliexpress.com/w/wholesale-gadgets" for i in


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: heredoc_py
args_hash: 9e7e9791314cb9d9
command_snippet:
  cd $HOME/fn_registry && python/.venv/bin/python3 - <<'PYEOF' import json, time, requests, sys sys.path.insert(0, "python/functions") from browser.cdp_eval import cdp_eval  PORT = 9222 URL = "https://a


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: heredoc_py
args_hash: 4f8837d2c0668214
command_snippet:
  python/.venv/bin/python3 - <<'PYEOF' import sys, os, json sys.path.insert(0, os.path.join('python','functions')) from browser.cdp_eval import cdp_eval SUB="aliexpress.com/w/wholesale-gadgets" expr = r


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: bf27c4cb80bed324
command_snippet:
  ls -la /home/enmanuel/fn_registry/projects/ 2>/dev/null | head -50; echo "---PROJECTS DONE---"; ls /home/enmanuel/fn_registry/projects/ | grep -i -E 'capt|lead|client|funnel|market' || echo "no projec


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: c751af9ecfee8f82
command_snippet:
  echo "=== puerto 3030 ==="; curl -s -m 5 -o /dev/null -w "%{http_code}\n" http://localhost:3030/api/health 2>/dev/null || echo "no responde /api/health"; curl -s -m 5 http://localhost:3030/api/health 


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: 0917c82d22b3186a
command_snippet:
  echo "=== postgres local ==="; ss -ltnp 2>/dev/null | grep -E ':5432|:3030|:3306' || echo "no pg/mysql/3030 listening (ss)"; echo "=== pg_apply_sql nuevo ==="; head -40 /home/enmanuel/fn_registry/pyth


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: b413d7686076a899
command_snippet:
  cd /home/enmanuel/fn_registry/projects/captacion_clientes; echo "=== ARBOL (2 niveles) ==="; find . -maxdepth 2 -not -path '*/.git/*' -not -path '*/node_modules/*' -not -path '*/.venv/*' | sort | head


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: 86a8a865c1826533
command_snippet:
  echo "=== docker inspect captacion-postgres env ==="; docker inspect captacion-postgres --format '{{range .Config.Env}}{{println .}}{{end}}' 2>/dev/null | grep -i -E 'POSTGRES|USER|DB|PASS'; echo "===


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: dffd498cbf154c83
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== osint_db service vivo? ==="; curl -s -m 4 http://127.0.0.1:8771/ 2>/dev/null | head -c 200; echo echo "=== localizar vault osint ===" for p in projects/osint/va


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: cadeae66d832f9cd
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== estructura vault osint ==="; ls -la projects/osint/vaults/ 2>/dev/null | head; echo "---"; for d in projects/osint/vaults/*/; do echo "$d -> $(readlink -f "$d")


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 64ef1c6f8be3e1f5
command_snippet:
  cd /home/enmanuel/fn_registry VAULT=/home/enmanuel/Obsidian/osint echo "=== notas que mencionan enmanuel/gutierrez ===" grep -rilE "enmanuel|gutierrez" "$VAULT" 2>/dev/null | head -10 echo "=== person


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: 21076bb001a16618
command_snippet:
  cd /home/enmanuel/fn_registry/projects/captacion_clientes echo "=== db/migrations ==="; ls -la db/migrations/ 2>/dev/null; echo echo "=== .env (redactado pass) ==="; sed -E 's/(PASS|PASSWORD|TOKEN|KEY


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: f2e1b9b6eb46e7b0
command_snippet:
  echo "=== DBs en postgres (user captacion) ==="; docker exec captacion-postgres psql -U captacion -d metabase -tA -c "SELECT datname FROM pg_database WHERE datistemplate=false ORDER BY 1;" 2>&1 echo "


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: dd7f0cce3c5ae6a3
command_snippet:
  cd /home/enmanuel/fn_registry/projects/captacion_clientes; echo "=== reports MVP (head) ==="; head -80 reports/0001-2026-06-14-captacion-clientes-mvp.md 2>/dev/null


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: 7aed40a5f79998cb
command_snippet:
  cd /home/enmanuel/Obsidian/osint/personas echo "=== enmanuel-gutierrez-perez.md (campos telefono) ===" grep -iE "tel|phone|móvil|movil|tlf|\+34|\+[0-9]{6,}|whatsapp" enmanuel-gutierrez-perez.md 2>/de


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: 3e77b201f3c32ac9
command_snippet:
  echo "=== metabase admin pass (existe?) ==="; pass metabase/admin-password >/dev/null 2>&1 && echo "admin-password OK" || echo "NO";  echo "=== buscar email admin metabase en proyecto/registry ==="; g


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: 0b6ebb2d68d7d217
command_snippet:
  echo "=== pg_insert_rows firma+ejemplo ==="; sed -n '1,40p' /home/enmanuel/fn_registry/python/functions/infra/pg_insert_rows.md 2>/dev/null echo "=== metabase trends db details (engine/host) via API n


session_id: ce722b37-3c76-4d5a-ac21-f92d6584fde2
tool_used: bash_other
args_hash: b27db39e6cb74ff6
command_snippet:
  curl -s -m 5 http://localhost:9222/json 2>/dev/null | python3 -c " import sys,json d=json.load(sys.stdin) for t in d:     if t.get('type')=='page':         print(t.get('id')[:8], '|', (t.get('title') 


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: 8f1b8d4d8169a890
command_snippet:
  echo "=== usuarios metabase ==="; docker exec captacion-postgres psql -U captacion -d metabase -tA -F'|' -c "SELECT email, is_superuser, is_active FROM core_user ORDER BY id;" 2>&1 echo "=== probar ca


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: 988bd1090ad65895
command_snippet:
  for P in admin-password egutierrez-password auto-test-password; do   PASS=$(pass metabase/$P 2>/dev/null | head -1)   echo "$P len=${#PASS}"   BODY=$(jq -nc --arg u "admin@captacion.local" --arg p "$P


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: da647ec868d6bc95
command_snippet:
  echo "=== captacion/metabase (estructura) ==="; pass captacion/metabase 2>/dev/null | sed -E 's/(pass|password|pw)[:=].*/\1=***/I' echo "=== intento auth ===" # primera linea = pass; buscar tambien li


session_id: ecaf350e-cd87-4c28-a5ce-0e78fc434468
tool_used: bash_other
args_hash: 96fe62681f19f8c6
command_snippet:
  cd /home/enmanuel/fn_registry/projects/message_bus/apps/uniweb/web/src echo "=== uniweb: createRoom (qué persist manda) ===" && grep -n "persist\|Persist\|createRoom\|create_room" bus/client.ts busSe


session_id: ecaf350e-cd87-4c28-a5ce-0e78fc434468
tool_used: bash_other
args_hash: 9b4c4b95d25dd8b8
command_snippet:
  cd /home/enmanuel/fn_registry/projects/message_bus/apps/uniweb/web/src echo "=== client.ts publish (core o jetstream?) ===" && sed -n '348,420p' bus/client.ts


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: heredoc_py
args_hash: 419f435be052a8f9
command_snippet:
  cd /home/enmanuel/fn_registry PGPASS="uzYodPL5KnuxGfANuMRtxguN2D1k" # Crear DB funnel_demo si no existe (CREATE DATABASE no va dentro de transaccion) EXISTS=$(docker exec captacion-postgres psql -U ca


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: d149855867e179a8
command_snippet:
  cd /home/enmanuel/fn_registry export FN_REGISTRY_ROOT=/home/enmanuel/fn_registry export CAPTACION_FUNNEL_DSN="postgresql://captacion:uzYodPL5KnuxGfANuMRtxguN2D1k@localhost:5433/funnel_demo" time pytho


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: 24fad28853300672
command_snippet:
  echo "=== v_stage_health (cuello arriba) ===" docker exec captacion-postgres psql -U captacion -d funnel_demo -P pager=off -c "SELECT ord, stage, metric, actual, bench_ok, ratio_salud, flag FROM v_sta


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: e24ee0fde798a4f2
command_snippet:
  cd /home/enmanuel/fn_registry export FN_REGISTRY_ROOT=/home/enmanuel/fn_registry export CAPTACION_FUNNEL_DSN="postgresql://captacion:uzYodPL5KnuxGfANuMRtxguN2D1k@localhost:5433/funnel_demo" python/.ve


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: d09ea770ce4314cf
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== ubicacion paquete metabase ===" ls python/functions/infra/metabase/ 2>/dev/null && echo "-> import: from infra.metabase import ..."  ls python/functions/metabas


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: heredoc_py
args_hash: 00e9e8b607e3db4b
command_snippet:
  cd /home/enmanuel/fn_registry export MB_PASS="$(pass captacion/metabase 2>/dev/null | head -1)" export PG_PASS="uzYodPL5KnuxGfANuMRtxguN2D1k" python/.venv/bin/python3 - <<'PYEOF' import os, sys, time 


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: heredoc_py
args_hash: 8bfca0aad169d298
command_snippet:
  cd /home/enmanuel/fn_registry export MB_PASS="$(pass captacion/metabase 2>/dev/null | head -1)" python/.venv/bin/python3 - <<'PYEOF' import os, sys sys.path.insert(0, os.path.join("python", "functions


session_id: 701845fc-44d8-4592-aaba-bbd67f517b22
tool_used: bash_other
args_hash: ee34d5ac4d0913e9
command_snippet:
  cd /home/enmanuel/fn_registry/projects/captacion_clientes # Añadir DSN del funnel_demo al .env si no está grep -q CAPTACION_FUNNEL_DSN .env 2>/dev/null || \   printf '\n# Funnel demo (embudo de capt


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 7c99d9ab0d683c2e
command_snippet:
  mkdir -p /home/enmanuel/afiliados && /home/enmanuel/fn_registry/python/.venv/bin/python3 -c "import openpyxl; print('openpyxl', openpyxl.__version__)" 2>&1 || echo "NO_OPENPYXL"


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 3ffb50559bd65c2b
command_snippet:
  cd /home/enmanuel/afiliados && /home/enmanuel/fn_registry/python/.venv/bin/python3 build_xlsx.py && ls -la programas_afiliados.xlsx


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 269a47e90cba7edc
command_snippet:
  BIN=$(command -v onlyoffice-desktopeditors || command -v DesktopEditors || command -v onlyoffice || ls /opt/onlyoffice/desktopeditors/DesktopEditors 2>/dev/null | head -1); echo "BIN=$BIN"; if [ -n "$


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 47d2637646a49c50
command_snippet:
  PIDS=$(pgrep -f 'remote-debugging-port=9333' 2>/dev/null); if [ -n "$PIDS" ]; then echo "Chrome headless 9333 zombie pids: $PIDS — matando"; kill $PIDS 2>/dev/null; echo "limpiado"; else echo "sin C


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 08d1774aab666493
command_snippet:
  mkdir -p /home/enmanuel/afiliados/incoming /home/enmanuel/afiliados/prompts; echo "kitty: $(command -v kitty || echo NO_KITTY)"; echo "DISPLAY=$DISPLAY"; echo "claude: $(command -v claude || echo NO_C


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 909a3136e82f37ed
command_snippet:
  which onlyoffice-desktopeditors desktopeditors 2>/dev/null; flatpak list 2>/dev/null | grep -i onlyoffice; ls /opt/onlyoffice 2>/dev/null; echo "---snap---"; snap list 2>/dev/null | grep -i onlyoffice


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 42e3fb422ace55ae
command_snippet:
  CLAUDE=/home/enmanuel/.local/bin/claude; i=0; for v in igaming forex crypto cpa_networks ecommerce; do setsid kitty --title "afi-$v" zsh -c "cd /home/enmanuel/afiliados && sleep $i && $CLAUDE --danger


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 607c3c125b7d3256
command_snippet:
  echo "DISPLAY=$DISPLAY"; for t in xdotool wmctrl libreoffice; do printf "%s: " "$t"; which "$t" 2>/dev/null || echo "NO"; done; printf "python-docx: "; python3 -c "import docx; print('OK', docx.__vers


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 9cd447a1436f94e6
command_snippet:
  echo "=== onlyoffice help (reload/flags) ==="; onlyoffice-desktopeditors --help 2>&1 | head -40 || echo "(sin --help util)"; echo; echo "=== openpyxl ==="; python3 -c "import openpyxl; print('openpyxl


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: heredoc_py
args_hash: b354ab9a04f63d2b
command_snippet:
  /home/enmanuel/fn_registry/python/.venv/bin/python3 - <<'PYEOF' from openpyxl import Workbook p = "/tmp/demo_reload.xlsx" wb = Workbook(); ws = wb.active; ws.title = "Demo" ws["A1"]="Estado"; ws["B1"]


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: cab3f7d237cfbcb9
command_snippet:
  wid=""; i=0 until [ -n "$wid" ] || [ $i -ge 30 ]; do   wid=$(wmctrl -l | grep -i "demo_reload" | awk '{print $1}' | head -1)   [ -n "$wid" ] && break   read -t 0.4 _ </dev/null 2>/dev/null; i=$((i+1))


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: abe35f554b6e1fd0
command_snippet:
  before=$(wmctrl -l | grep -i onlyoffice | awk '{print $1}' | sort | tr '\n' ',') echo "antes: $before" setsid onlyoffice-desktopeditors --view=/tmp/demo_reload.xlsx >/dev/null 2>&1 < /dev/null & echo 


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: aa41574ab38eddac
command_snippet:
  mkdir -p /tmp/oo_demo_cfg before=$(wmctrl -l | awk '{print $1}' | sort | tr '\n' ',') XDG_CONFIG_HOME=/tmp/oo_demo_cfg setsid onlyoffice-desktopeditors /tmp/demo_reload.xlsx >/tmp/oo_demo.log 2>&1 < /


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 91a18d46a4f73610
command_snippet:
  rm -rf /tmp/oo_home /tmp/oo_run; mkdir -p /tmp/oo_home /tmp/oo_run; chmod 700 /tmp/oo_run before=$(wmctrl -l | awk '{print $1}' | sort | tr '\n' ',') env HOME=/tmp/oo_home XDG_RUNTIME_DIR=/tmp/oo_run 


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: fd20d17e4ab5a4e2
command_snippet:
  i=0 until [ $i -ge 25 ]; do read -t 0.4 _ </dev/null 2>/dev/null; i=$((i+1)); done echo "=== procesos DesktopEditors ==="; ps -eo pid,etimes,args | grep -i "[D]esktopEditors\|[o]nlyoffice-desktop" | a


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 01e5f18199ea857c
command_snippet:
  i=0; until [ $i -ge 15 ]; do read -t 0.4 _ </dev/null 2>/dev/null; i=$((i+1)); done echo "=== xdotool search por PID 2932430 (y árbol) ===" for p in 2932430 2932681 2932688; do   wins=$(xdotool searc


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 20451008740e0f7d
command_snippet:
  echo "=== padres DesktopEditors (pid ppid etimes) ===" ps -eo pid,ppid,etimes,args | grep "[/]opt/onlyoffice/desktopeditors/DesktopEditors"  echo echo "=== xprop ventana 0x0a00002a (la visible demo_re


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: heredoc_py
args_hash: 83a137f4cff55a87
command_snippet:
  SECONDS=0 echo "=== 1. estado proceso/ventana antes ===" wid=$(xdotool search --name "demo_reload" 2>/dev/null | head -1); echo "wid actual=$wid pid=$(xdotool getwindowpid $wid 2>/dev/null)"  echo "==


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: sqlite_direct
args_hash: cf48a4c67bc26f01
command_snippet:
  sqlite3 registry.db "SELECT id, purity, signature FROM functions WHERE domain='shell' AND lang='bash' ORDER BY name;"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 225bc4dac1809aa8
command_snippet:
  cat bash/functions/shell/monitor_listening_ports.sh 2>/dev/null | head -40; echo "=== MD ==="; cat bash/functions/shell/monitor_listening_ports.md 2>/dev/null | head -50


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: ad2e5ad3a1f86427
command_snippet:
  cat bash/functions/infra/rsync_deploy.md 2>/dev/null | head -60; echo "=== check deps sh ==="; cat bash/functions/shell/bash_check_deps.sh 2>/dev/null | head -40


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: b26efb35385c42c6
command_snippet:
  for f in open_onlyoffice_file reload_onlyoffice_file close_onlyoffice_instance; do echo "=== $f ==="; bash -n "bash/functions/shell/$f.sh" && echo "syntax OK"; done


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 5ca65b2e1ee56e76
command_snippet:
  for id in open_onlyoffice_file_bash_shell reload_onlyoffice_file_bash_shell close_onlyoffice_instance_bash_shell; do echo "========== $id =========="; ./fn show "$id" 2>&1; echo; done


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: heredoc_py
args_hash: 430dcad1bdeef816
command_snippet:
  /home/enmanuel/fn_registry/python/.venv/bin/python3 - <<'PYEOF' from openpyxl import Workbook from datetime import datetime p="/tmp/demo_reload.xlsx" wb=Workbook(); ws=wb.active; ws.title="Demo" ws["A


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 1fcb0f80b33bb653
command_snippet:
  cd /home/enmanuel/afiliados/incoming 2>/dev/null && for f in *.json; do [ -e "$f" ] || continue; n=$(/home/enmanuel/fn_registry/python/.venv/bin/python3 -c "import json,sys; print(len(json.load(open('


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 311a6636153fd46f
command_snippet:
  cd /home/enmanuel/afiliados && { [ -f seeds.json ] || cp rows.json seeds.json; } && PY=/home/enmanuel/fn_registry/python/.venv/bin/python3 && $PY merge.py && echo "===" && $PY build_xlsx.py && echo "=


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 48f04b6043a8feb0
command_snippet:
  echo "=== cerrar instancia demo onlyoffice (kill por HOME aislado) ===" for pid in $(pgrep -f "/opt/onlyoffice/desktopeditors/DesktopEditors"); do   if tr '\0' '\n' < /proc/$pid/environ 2>/dev/null | 


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 26dfa1c117c664f7
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== borrar 3 funciones desktop + pagina madre ===" rm -f bash/functions/shell/open_onlyoffice_file.sh bash/functions/shell/open_onlyoffice_file.md \       bash/func


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: be091d4137eb4892
command_snippet:
  set -uo pipefail echo "=== generar JWT secret + guardar en pass ===" SECRET=<REDACTED> rand -hex 32) if printf '%s\n' "$SECRET" | pass insert -m -f onlyoffice/jwt-secret >/dev/null 2>&1; then   echo "


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 6678c59040f4b924
command_snippet:
  echo "=== uptime/estado real ==="; docker ps -a --filter name=onlyoffice-ds --format '{{.Status}}' echo "=== restart count ==="; docker inspect onlyoffice-ds --format '{{.RestartCount}} restarts, Stat


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 8c083a2ebb036146
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== api.js del editor accesible? (critico para la webapp) ===" curl -s -o /dev/null -w "api.js HTTP %{http_code}\n" -m 5 http://127.0.0.1:8082/web-apps/apps/api/doc


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: sqlite_direct
args_hash: 0fb41373df111c9c
command_snippet:
  cd /home/enmanuel/fn_registry && sqlite3 registry.db "SELECT id FROM functions WHERE id = 'error_go_core';" && echo "---types---" && sqlite3 registry.db "SELECT id FROM types WHERE id = 'error_go_core


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: c96a9a7394346365
command_snippet:
  cd /home/enmanuel/fn_registry && ./fn search "onlyoffice" 2>/dev/null; echo "=== jwt ==="; ./fn search "jwt" 2>/dev/null; echo "=== doceditor ==="; ./fn search "documentserver" 2>/dev/null


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 6b5136fa9cbc74af
command_snippet:
  cd /home/enmanuel/fn_registry && ls functions/infra/*.go 2>/dev/null | head -5; echo "==="; head -3 functions/infra/$(ls functions/infra/ | grep '\.go$' | head -1) 2>/dev/null


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: c21f15b90f826770
command_snippet:
  cd /home/enmanuel/fn_registry && ./fn show jwt_generate_go_infra 2>/dev/null | head -40; echo "=========CODE========="; ./fn code jwt_generate_go_infra 2>/dev/null | head -60


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: sqlite_direct
args_hash: d6e4abe71b0043e0
command_snippet:
  cd /home/enmanuel/fn_registry && sqlite3 registry.db "SELECT id FROM functions WHERE id='sign_onlyoffice_jwt_go_infra';"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: sqlite_direct
args_hash: c0bca5aac8eff155
command_snippet:
  cd /home/enmanuel/fn_registry && sqlite3 registry.db "SELECT id FROM functions WHERE id='error_go_core';"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 721885f3823b624a
command_snippet:
  cd /home/enmanuel/fn_registry && ./fn show sign_onlyoffice_jwt_go_infra 2>&1 | head -20; echo "---ERROR_GO_CORE---"; ./fn show error_go_core 2>&1 | head -8


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: sqlite_direct
args_hash: 3da3badb5fe2b97b
command_snippet:
  cd /home/enmanuel/fn_registry && sqlite3 registry.db "SELECT id, kind, purity FROM functions WHERE id LIKE '%onlyoffice%' OR id LIKE '%documentserver%' ORDER BY id;"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 3c5c4c3ee2902be9
command_snippet:
  cd /home/enmanuel/fn_registry && ls functions/infra/*.go | head -20; echo "---"; ls bash/functions/infra/*.sh 2>/dev/null | head -10


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 5888ce26d7190247
command_snippet:
  cd /home/enmanuel/fn_registry && head -30 functions/infra/docker_pull_image.go 2>/dev/null || (f=$(ls functions/infra/*.go | head -1); echo "=== $f ==="; head -30 "$f")


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 2bb41edb0bb437ce
command_snippet:
  cd /home/enmanuel/fn_registry && head -5 go.mod; echo "---grep import of functions/infra from infra pkg (self-pkg, so no import needed)---"; grep -rl "fn-registry/functions/infra" functions/infra/*.go


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 1cd96ad8a857c6bd
command_snippet:
  cd /home/enmanuel/fn_registry && f=$(ls bash/functions/infra/start_*.sh 2>/dev/null | head -1); if [ -n "$f" ]; then echo "=== $f ==="; head -40 "$f"; else echo "no start_ scripts; showing port_kill";


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 77b857308eca2147
command_snippet:
  cd /home/enmanuel/fn_registry && bash -n bash/functions/infra/start_documentserver.sh && echo "BASH_SYNTAX_OK"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 1fe226bdb4fe8023
command_snippet:
  cd /home/enmanuel/fn_registry && CGO_ENABLED=1 go vet -tags fts5 ./functions/infra/ 2>&1 | head -30; echo "VET_EXIT=${PIPESTATUS[0]}"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 97d77984ddc0baca
command_snippet:
  cd /home/enmanuel/fn_registry && CGO_ENABLED=1 go vet -tags fts5 ./functions/infra/ ; echo "VET_EXIT=$?"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 81f6db94e4c2f09d
command_snippet:
  cd /home/enmanuel/fn_registry && for id in documentserver_health_go_infra onlyoffice_command_service_go_infra start_documentserver_bash_infra; do echo "========== $id =========="; ./fn show "$id" 2>&1


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: b402c43ff553cd35
command_snippet:
  cd /home/enmanuel/fn_registry && CGO_ENABLED=1 go vet -tags fts5 ./functions/infra/ 2>&1 | tail -20; echo "VET_EXIT=$?"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: d2cfd30b75a1d7a4
command_snippet:
  cd /home/enmanuel/fn_registry && for id in sign_onlyoffice_jwt_go_infra verify_onlyoffice_jwt_go_infra build_onlyoffice_doc_key_go_infra build_onlyoffice_editor_config_go_infra; do echo "########## $i


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 021d6461bc26d026
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== firmas Go de las funciones onlyoffice ===" grep -rhE "^func (Sign|Verify|Build|DocumentServer|Onlyoffice)" functions/infra/ | grep -iE "onlyoffice|documentserve


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 53a9b9c80a462b2e
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== replace de dag_engine go.mod ==="; grep -nE "replace|^go " apps/dag_engine/go.mod echo "=== version go toolchain ==="; go version echo "=== confirmar grupo only


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: e7f18bdcec670b5e
command_snippet:
  cd /home/enmanuel/fn_registry/apps/onlyoffice_editor export CGO_ENABLED=1 GOFLAGS=-tags=fts5 echo "=== go mod tidy ===" go mod tidy 2>&1 | tail -15 echo "=== go build ===" go build -tags fts5 -o onlyo


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 8d99e34335375e5a
command_snippet:
  cd /home/enmanuel/fn_registry/apps/onlyoffice_editor cp /tmp/demo_reload.xlsx docs/ 2>/dev/null && echo "doc de prueba copiado" mkdir -p local_files setsid ./onlyoffice_editor --port 8085 >local_files


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: e0579ba527f8dd95
command_snippet:
  cd /home/enmanuel/fn_registry/apps/onlyoffice_editor echo "=== proceso vivo? ==="; pgrep -af onlyoffice_editor | grep -v grep || echo "NO hay proceso" echo "=== pass directo funciona aqui? ==="; pass 


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 3621db9b70e18c63
command_snippet:
  echo "=== /api/env ==="; curl -s -m 3 http://127.0.0.1:8085/api/env; echo echo "=== /api/docs ==="; curl -s -m 3 http://127.0.0.1:8085/api/docs; echo echo "=== /api/config?doc=demo_reload.xlsx (head) 


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: a13a4d49daf4b1dd
command_snippet:
  echo "=== contenedor DS -> host (host.docker.internal:8085) ===" docker exec onlyoffice-ds bash -c 'curl -s -o /dev/null -w "file: HTTP %{http_code}\n" -m 5 http://host.docker.internal:8085/file/demo_


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 11ec8a3432554d92
command_snippet:
  cd /home/enmanuel/fn_registry/apps/onlyoffice_editor export CGO_ENABLED=1 GOFLAGS=-tags=fts5 echo "=== matar server viejo (por nombre exacto, no -f) ==="; pkill -x onlyoffice_editor 2>/dev/null; read 


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: f3abbec7ab62e0bf
command_snippet:
  cd /home/enmanuel/fn_registry/apps/onlyoffice_editor echo "=== server.log ==="; cat local_files/server.log 2>/dev/null | tail -10 echo "=== proceso ==="; pgrep -ax onlyoffice_editor || echo "NO vivo" 


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 456b8b48da25e34d
command_snippet:
  echo "=== /api/env local ==="; curl -s -m 5 http://127.0.0.1:8085/api/env; echo echo "=== /api/docs ==="; curl -s -m 5 http://127.0.0.1:8085/api/docs; echo echo "=== contenedor DS -> host (host.docker


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 639ec9f271b71703
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== git: existieron las 3 funciones desktop en algun commit? ===" for f in bash/functions/shell/reload_onlyoffice_file.sh bash/functions/shell/open_onlyoffice_file.


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 271e467c28efeb9b
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== borrar 7 funciones API del grupo onlyoffice ===" rm -f functions/infra/sign_onlyoffice_jwt.go functions/infra/sign_onlyoffice_jwt.md \       functions/infra/ver


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: f52620286db9fc5e
command_snippet:
  ls -la bash/functions/shell/*onlyoffice* 2>/dev/null; echo "---FTS via fn search---"; ./fn search "onlyoffice" 2>/dev/null | head -30


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 78de01a747917620
command_snippet:
  git status --short bash/functions/shell/ 2>/dev/null; echo "---disco---"; ls -la bash/functions/shell/ | grep -iE "onlyoffice|monitor_listening" 2>/dev/null || echo "ninguno en disco"


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: sqlite_direct
args_hash: 645a917899ac833e
command_snippet:
  grep -l "error_go_core" types/*/error*.md 2>/dev/null; echo "---verificar id error_go_core indexado (count)---"; sqlite3 registry.db "SELECT count(*) FROM types WHERE id='error_go_core';" 2>/dev/null


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: a32fea9b78403029
command_snippet:
  cd /home/enmanuel/fn_registry for f in open_onlyoffice_file reload_onlyoffice_file close_onlyoffice_instance; do   bash -n bash/functions/shell/$f.sh && echo "OK syntax: $f" || echo "FAIL syntax: $f" 


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: bash_other
args_hash: 2b69917884c1083f
command_snippet:
  cd /home/enmanuel/fn_registry for id in open_onlyoffice_file_bash_shell reload_onlyoffice_file_bash_shell close_onlyoffice_instance_bash_shell; do   echo "===== $id ====="   ./fn show "$id" 2>&1 | hea


session_id: a3ea103c-a25f-44bd-a2d0-b372b3c1674e
tool_used: sqlite_direct
args_hash: 32834998915edd1f
command_snippet:
  cd /home/enmanuel/fn_registry echo "=== Tag onlyoffice -> N funciones (debe ser 3) ===" sqlite3 registry.db "SELECT count(*) FROM functions WHERE tags LIKE '%onlyoffice%' AND id LIKE '%bash_shell';" e


session_id: 845fc91a-b3e7-49fe-8bc2-cbcce74e950e
tool_used: bash_other
args_hash: deaf8199f3ea3d99
command_snippet:
  pgrep -a -f -i onlyoffice 2>/dev/null; echo "---procesos---"; ps aux | grep -i office | grep -v grep


session_id: 845fc91a-b3e7-49fe-8bc2-cbcce74e950e
tool_used: bash_other
args_hash: 603c1833fea1638b
command_snippet:
  ls -la ~/.config/onlyoffice/ 2>/dev/null; echo "---"; find ~/.config/onlyoffice -name "*.ini" -o -name "*.json" 2>/dev/null | head -50


session_id: 845fc91a-b3e7-49fe-8bc2-cbcce74e950e
tool_used: bash_other
args_hash: 4d55194eeb825f9a
command_snippet:
  cat ~/.config/onlyoffice/DesktopEditors.conf; echo "==="; find /tmp/oo_afiliados -name "*.json" 2>/dev/null | head; echo "---localstorage---"; find /tmp/oo_afiliados -iname "*localstorage*" -o -iname 


session_id: 845fc91a-b3e7-49fe-8bc2-cbcce74e950e
tool_used: bash_other
args_hash: 0fd40052bd199dff
command_snippet:
  cat "/tmp/oo_afiliados/.local/share/onlyoffice/desktopeditors/data/cache/LocalPrefs.json" 2>/dev/null; echo "===STRINGS Local Storage (hotkey/access/alt)==="; strings "/tmp/oo_afiliados/.local/share/o


session_id: 845fc91a-b3e7-49fe-8bc2-cbcce74e950e
tool_used: bash_other
args_hash: d3bd96280243697c
command_snippet:
  cd "/tmp/oo_afiliados/.local/share/onlyoffice/desktopeditors/data/cache/Local Storage/leveldb/" 2>/dev/null && strings ./*.log ./*.ldb 2>/dev/null | grep -iE "alt|hotkey|accesskey|navigat" | head -20;


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 3504e8502822397d
command_snippet:
  cd /home/enmanuel/afiliados && rm -rf incoming_v2 && mkdir -p incoming_v2 && /home/enmanuel/fn_registry/python/.venv/bin/python3 split_v2.py && echo "---prompts:" && ls -1 prompts/v2_*.txt


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: fc7fcddaf93cd2b8
command_snippet:
  CLAUDE=/home/enmanuel/.local/bin/claude; i=0; for n in 1 2 3 4 5; do setsid kitty --title "afi-score-$n" zsh -c "cd /home/enmanuel/afiliados && sleep $i && $CLAUDE --dangerously-skip-permissions \"\$(


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 843487b1804d3a05
command_snippet:
  cd /home/enmanuel/afiliados/incoming_v2 2>/dev/null && shopt -s nullglob 2>/dev/null; PY=/home/enmanuel/fn_registry/python/.venv/bin/python3; got=0; for n in 1 2 3 4 5; do f="lote_$n.json"; if [ -e "$


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: ddadf78e06d83dda
command_snippet:
  cd /home/enmanuel/afiliados && PY=/home/enmanuel/fn_registry/python/.venv/bin/python3 && $PY merge2.py && echo "===" && $PY build_xlsx.py


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 21ed321ed4472601
command_snippet:
  cd /home/enmanuel/afiliados && PY=/home/enmanuel/fn_registry/python/.venv/bin/python3 && rm -rf /tmp/afi_test && mkdir -p /tmp/afi_test && cp programas_afiliados.xlsx /tmp/afi_test/test.xlsx && cp row


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 73f6d832c3f5b090
command_snippet:
  ./fn search "xlsx" 2>/dev/null; echo "=== spreadsheet ==="; ./fn search "spreadsheet" 2>/dev/null; echo "=== openpyxl ==="; ./fn search "openpyxl" 2>/dev/null; echo "=== upsert ==="; ./fn search "upse


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 4a0a90d8b16eec6c
command_snippet:
  ./fn show error_go_core 2>/dev/null | head -5; echo "=== py error types ==="; ./fn search "error" 2>/dev/null | grep -i "py_" | head


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 9fda17553984e0fb
command_snippet:
  grep -A2 "error_type:" python/functions/infra/pg_insert_rows.md 2>/dev/null | head; echo "=== full frontmatter pg_insert ==="; sed -n '1,40p' python/functions/infra/pg_insert_rows.md 2>/dev/null


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: ece0057e07dcaa7d
command_snippet:
  python/.venv/bin/python3 -c "import openpyxl; print('openpyxl', openpyxl.__version__)"; python/.venv/bin/python3 -m pytest --version 2>/dev/null | head -1


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: ac91b685d0fb6b12
command_snippet:
  cd /home/enmanuel/fn_registry/python && .venv/bin/python3 -m pytest functions/infra/upsert_xlsx_sheet_test.py -v 2>&1 | tail -20


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: sqlite_direct
args_hash: 3eb9e0c7bdbfcaf2
command_snippet:
  cd /home/enmanuel/fn_registry/python && .venv/bin/python3 -m pytest functions/infra/upsert_xlsx_sheet_test.py -q 2>&1 | tail -6 echo "=== unit_tests indexados ===" sqlite3 registry.db "SELECT name FRO


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 8775417d0b616577
command_snippet:
  ./fn index 2>&1 | grep -iE 'save_onlyoffice|ERROR' || echo "sin errores de save_onlyoffice"; ./fn show save_onlyoffice_file_bash_shell 2>&1 | head -8


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 56089ad9ee8d4a7c
command_snippet:
  cd /home/enmanuel/afiliados && PY=/home/enmanuel/fn_registry/python/.venv/bin/python3 && rm -rf /tmp/afi_test2 && mkdir -p /tmp/afi_test2 && cp programas_afiliados.xlsx /tmp/afi_test2/test.xlsx && cp 


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: eb1420eafb5945c6
command_snippet:
  echo "reload:"; ./fn show reload_onlyoffice_file_bash_shell 2>&1 | head -2; echo "save:"; ./fn show save_onlyoffice_file_bash_shell 2>&1 | head -2; echo "--- ids onlyoffice indexados:"; ./fn search on


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 9cea09f77009ae38
command_snippet:
  echo "=== projects captacion ==="; ls -la /home/enmanuel/fn_registry/projects/ 2>/dev/null | grep -i captac; echo "=== estructura proyecto ==="; find /home/enmanuel/fn_registry/projects/captacion_clie


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: heredoc_py
args_hash: 1851b79242714b67
command_snippet:
  python/.venv/bin/python3 - <<'PYEOF' import os, sys, json sys.path.insert(0, os.path.join("python", "functions")) from obsidian.create_obsidian_vault import create_obsidian_vault from obsidian.create_


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 20d6ba10f23d0334
command_snippet:
  N=/home/enmanuel/Obsidian/captacion_clientes/plan-publicidad-referidos.md; echo "lineas: $(wc -l < "$N")"; echo "--- frontmatter + inicio ---"; sed -n '1,16p' "$N"; echo "--- refs al excel ---"; grep 


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 9c2d95376309e0da
command_snippet:
  echo "bin: $(command -v obsidian || echo no)"; echo "flatpak: $(flatpak list 2>/dev/null | grep -i obsidian || echo no)"; echo "snap: $(snap list 2>/dev/null | grep -i obsidian || echo no)"; echo "app


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: ba34266ede9c1af4
command_snippet:
  NOTE="/home/enmanuel/Obsidian/captacion_clientes/plan-publicidad-referidos.md"; ENC=$(python3 -c "import urllib.parse,sys; print(urllib.parse.quote(sys.argv[1]))" "$NOTE"); URI="obsidian://open?path=$


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: af3303cc49baef51
command_snippet:
  python3 - <<'PYEOF' import json, os, time, secrets, shutil cfg = os.path.expanduser("~/.config/obsidian/obsidian.json") vault = "/home/enmanuel/Obsidian/captacion_clientes" data = {"vaults": {}} if os


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: c042d7d6110f5e2a
command_snippet:
  echo "antes: $(pgrep -x obsidian | tr '\n' ' ')"; pkill -9 -x obsidian 2>/dev/null; ( i=0; until ! pgrep -x obsidian >/dev/null 2>&1 || [ $i -ge 20 ]; do read -r -t 0.5 _ </dev/null 2>/dev/null||true;


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: sqlite_direct
args_hash: 61fe4c5d25787266
command_snippet:
  sqlite3 registry.db "SELECT id, purity, signature FROM functions WHERE domain = 'obsidian' ORDER BY name;"


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 18b79d21715186bd
command_snippet:
  grep -rn "func test\|test_\|strings.Replace\|TrimPrefix\|extractTest\|def test" registry/*.go 2>/dev/null | grep -i "test" | head -20


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 1f5ac2551dc64ebb
command_snippet:
  find /home/enmanuel/fn_registry/python -name conftest.py -o -name pytest.ini -o -name pyproject.toml 2>/dev/null | head; echo "---"; cat /home/enmanuel/fn_registry/python/conftest.py 2>/dev/null || ec


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 7434daab0af1ca6c
command_snippet:
  cat /home/enmanuel/fn_registry/python/pyproject.toml; echo "==="; cat /home/enmanuel/fn_registry/python/functions/conftest.py 2>/dev/null || echo "no functions conftest"; echo "==="; cat /home/enmanue


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: 50bdfa35ae17e36e
command_snippet:
  cd /home/enmanuel/fn_registry/python && .venv/bin/python -m pytest functions/obsidian/register_obsidian_vault_test.py functions/obsidian/list_registered_obsidian_vaults_test.py functions/obsidian/unre


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: e4dd9e5fa687b716
command_snippet:
  for id in register_obsidian_vault_py_obsidian list_registered_obsidian_vaults_py_obsidian unregister_obsidian_vault_py_obsidian open_obsidian_vault_py_obsidian; do echo "=== $id ==="; ./fn show $id 2>


session_id: 29a56272-29df-4425-a471-e609285d875c
tool_used: bash_other
args_hash: 15b416789efe5059
command_snippet:
  ls -la /home/enmanuel/fn_registry/projects/captacion_clientes/ 2>/dev/null && echo "---VAULTS---" && ls -la /home/enmanuel/fn_registry/projects/captacion_clientes/vaults/ 2>/dev/null && echo "---VAULT


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: dacb9780f03372ef
command_snippet:
  cd /home/enmanuel/fn_registry/apps/registry_mcp && CGO_ENABLED=1 go build -tags fts5 -o registry_mcp . 2>&1 | tail -20 && echo "BUILD OK"


session_id: fead2d98-41c6-4d4e-8ced-d666263f9685
tool_used: bash_other
args_hash: be44ab3118ae83a1
command_snippet:
  cd /home/enmanuel/fn_registry/apps/registry_mcp && CGO_ENABLED=1 go test -tags fts5 -run TestValidateName ./... 2>&1 | tail -15


# violations

session_id: ebeb8650-02d8-49e9-b8a6-cce5b4568007
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  ./fn index 2>&1 | tail -3; echo "---"; sqlite3 registry.db "SELECT id, lang, domain FROM functions WHERE id IN ('registry_telemetry_py_infra','telemetry_prelude_bash_infra');"


session_id: bf0d6d52-4068-4347-8907-4f890431abe6
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 /home/lucas/fn_registry/registry.db "SELECT id, kind, lang, domain, description FROM functions WHERE id LIKE '%metabase%' OR description LIKE '%metabase%' OR tags LIKE '%metabase%' ORDER BY id


session_id: 9d62a52c-b49b-44ed-9037-dbc4a07febca
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 registry.db "SELECT f.id, f.signature FROM functions f, json_each(f.tags) j WHERE j.value='notebook' ORDER BY f.id;"


session_id: 9d62a52c-b49b-44ed-9037-dbc4a07febca
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 registry.db "SELECT id, kind, purity, description FROM functions WHERE id IN (SELECT id FROM functions_fts WHERE functions_fts MATCH 'name:audit* OR description:capability*') ORDER BY name;" 2


session_id: 9d62a52c-b49b-44ed-9037-dbc4a07febca
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 registry.db "SELECT id, kind, purity, description FROM functions WHERE id IN (SELECT id FROM functions_fts WHERE functions_fts MATCH 'name:generate* OR name:capability* OR description:capabili


session_id: 9d62a52c-b49b-44ed-9037-dbc4a07febca
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  grep "error_go_core" /home/lucas/fn_registry/registry.db 2>/dev/null || sqlite3 /home/lucas/fn_registry/registry.db "SELECT id FROM functions WHERE id='error_go_core';" 2>/dev/null


session_id: 9d62a52c-b49b-44ed-9037-dbc4a07febca
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 /home/lucas/fn_registry/registry.db "SELECT f.id, f.signature FROM functions f, json_each(f.tags) j WHERE j.value='doctor' ORDER BY f.id;" 2>/dev/null


session_id: 9d62a52c-b49b-44ed-9037-dbc4a07febca
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 /home/lucas/fn_registry/registry.db "SELECT id, purity, description FROM functions WHERE id IN (SELECT id FROM functions_fts WHERE functions_fts MATCH 'name:audit_capability* OR name:capabilit


session_id: 9d62a52c-b49b-44ed-9037-dbc4a07febca
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 registry.db "SELECT id, file_path FROM functions WHERE id = 'generate_capability_doc_bash_pipelines';"


session_id: 9d62a52c-b49b-44ed-9037-dbc4a07febca
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 registry.db "SELECT id FROM functions WHERE name LIKE '%propose_capability%' OR id LIKE '%propose_capability%';"


session_id: 50538f33-42cc-4a0d-84f7-854ab8b82acc
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 registry.db <<'SQL' .mode tabs SELECT id, description FROM functions  WHERE description LIKE '%http%' OR description LIKE '%scrape%' OR description LIKE '%fetch%'     OR description LIKE '%bro


session_id: 50538f33-42cc-4a0d-84f7-854ab8b82acc
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 registry.db <<'SQL' .mode tabs SELECT id, description FROM functions  WHERE domain='finance' OR description LIKE '%price%' OR description LIKE '%candle%'     OR description LIKE '%market%' OR 


session_id: 350b132b-56e9-40a0-bdec-53b0002d29e1
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 /home/lucas/fn_registry/registry.db "SELECT id, name, signature, description, updated_at, kind, lang, tags FROM functions WHERE kind IN ('function','pipeline') LIMIT 5;"


session_id: 350b132b-56e9-40a0-bdec-53b0002d29e1
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 /home/lucas/fn_registry/registry.db "SELECT id, signature, description FROM functions WHERE kind = 'pipeline' LIMIT 5;" 2>&1 | head -20


session_id: 350b132b-56e9-40a0-bdec-53b0002d29e1
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 /home/lucas/fn_registry/registry.db "SELECT id, name FROM functions_fts WHERE functions_fts MATCH 'taskkill OR registry OR dashboard' LIMIT 5;"


session_id: 350b132b-56e9-40a0-bdec-53b0002d29e1
rule_id: sqlite3_registry_select
severity: warning
command_snippet:
  sqlite3 registry.db "SELECT id, name, bm25(functions_fts) AS rank FROM functions_fts WHERE functions_fts MATCH 'taskkill OR registry OR dashboard' ORDER BY rank LIMIT 5;" 2>&1


# function_sequences

seq_hash: c2a8d1ddd8f1
function_ids:
  ["launch_cpp_app_windows_bash_infra","is_cpp_app_running_windows_bash_infra","redeploy_cpp_app_windows_bash_pipelines"]


seq_hash: 7b6d7bd92603
function_ids:
  ["propose_capability_groups_bash_pipelines","propose_capability_groups","propose_capability_groups"]


seq_hash: f395cc3e157e
function_ids:
  ["validate_recipe_yaml_test_py_core","cdp_get_ax_tree_py_pipelines","llm_propose_scraping_schema_py_infra"]


seq_hash: a1a848d381f0
function_ids:
  ["agent_launch_worktree_go_infra","agent_cleanup_worktree_go_infra","agent_launch_worktree_test_go_infra"]


seq_hash: 86aa72f45c07
function_ids:
  ["agent_cleanup_worktree_go_infra","agent_launch_worktree_test_go_infra","agent_cleanup_worktree_test_go_infra"]


seq_hash: 45f3252a5a52
function_ids:
  ["docker_container_list_go_infra","docker_container_logs_go_infra","docker_container_list_go_infra"]


seq_hash: 8e2011e59bb7
function_ids:
  ["docker_container_exec_go_infra","docker_container_logs_test_go_infra","docker_container_exec_test_go_infra"]


seq_hash: 795b35202611
function_ids:
  ["docker_container_logs_go_infra","docker_container_list_go_infra","docker_container_exec_test_go_infra"]


seq_hash: ec62a040e924
function_ids:
  ["docker_container_exec_go_infra","docker_container_list_test_go_infra","docker_container_list_go_infra"]


seq_hash: f00b17958d0c
function_ids:
  ["docker_container_logs_test_go_infra","docker_container_exec_go_infra","docker_container_logs_test_go_infra"]


seq_hash: 4fdb339504c7
function_ids:
  ["docker_container_logs_test_go_infra","docker_container_exec_test_go_infra","nordvpn_container_start_go_infra"]


seq_hash: 9b54f864e710
function_ids:
  ["docker_container_list_test_go_infra","docker_container_list_go_infra","docker_container_logs_go_infra"]


seq_hash: cbf1bb2f69a6
function_ids:
  ["synapse_msc3861_enable_go_infra","wellknown_oidc_patch_go_infra","mas_syn2mas_migration_bash_infra"]


seq_hash: 32b361fffeb0
function_ids:
  ["mas_syn2mas_migration_test_bash_infra","mas_syn2mas_migration_test_bash_infra","synapse_login_flows_check_go_infra"]


seq_hash: f89be1d8da7b
function_ids:
  ["synapse_msc3861_enable_test_go_infra","synapse_login_flows_check_test_go_infra","mas_syn2mas_migration_test_bash_infra"]


seq_hash: 53d1bfa12cd7
function_ids:
  ["synapse_login_flows_check_go_infra","synapse_login_flows_check_go_infra","error_go_core_go_infra"]


seq_hash: 62bfa83e8ad5
function_ids:
  ["error_go_core_go_infra","synapse_msc3861_enable_go_infra","mas_syn2mas_migration_test_bash_infra"]


seq_hash: c76331f5a85e
function_ids:
  ["synapse_msc3861_enable_go_infra","synapse_msc3861_enable_go_infra","synapse_msc3861_enable_go_infra"]


seq_hash: a818ea900597
function_ids:
  ["synapse_login_flows_check_go_infra","synapse_login_flows_check_go_infra","synapse_login_flows_check_go_infra"]


seq_hash: 778bf306f3f7
function_ids:
  ["synapse_login_flows_check_test_go_infra","error_go_core_go_infra","synapse_login_flows_check_test_go_infra"]


seq_hash: 378e18bc20fb
function_ids:
  ["mas_client_register_test_bash_infra","mas_client_register_test_bash_infra","mas_client_register_test_bash_infra"]


seq_hash: 3c40c6e2208c
function_ids:
  ["mas_client_register_test_bash_infra","synapse_msc3861_enable_go_infra","wellknown_oidc_patch_go_infra"]


seq_hash: c772e1b92e09
function_ids:
  ["synapse_msc3861_enable_go_infra","synapse_msc3861_enable_go_infra","synapse_login_flows_check_test_go_infra"]


seq_hash: 384b6821b0bb
function_ids:
  ["wellknown_oidc_patch_test_go_infra","synapse_login_flows_check_go_infra","synapse_msc3861_enable_test_go_infra"]


seq_hash: 5e3239b2af6e
function_ids:
  ["wellknown_oidc_patch_go_infra","mas_syn2mas_migration_bash_infra","mas_client_register_test_bash_infra"]


seq_hash: db80091bdea5
function_ids:
  ["mas_syn2mas_migration_test_bash_infra","synapse_login_flows_check_go_infra","synapse_login_flows_check_go_infra"]


seq_hash: 59cb654c52aa
function_ids:
  ["mas_syn2mas_migration_bash_infra","mas_client_register_test_bash_infra","wellknown_oidc_patch_test_go_infra"]


seq_hash: 9debe3ecd913
function_ids:
  ["mas_syn2mas_migration_test_bash_infra","synapse_msc3861_enable_go_infra","synapse_msc3861_enable_go_infra"]


seq_hash: e37338ee7500
function_ids:
  ["synapse_msc3861_enable_go_infra","synapse_login_flows_check_test_go_infra","error_go_core_go_infra"]


seq_hash: cb32f693553f
function_ids:
  ["synapse_msc3861_enable_go_infra","mas_syn2mas_migration_test_bash_infra","synapse_msc3861_enable_go_infra"]


seq_hash: 9f06a9752abc
function_ids:
  ["synapse_login_flows_check_go_infra","synapse_msc3861_enable_test_go_infra","synapse_login_flows_check_test_go_infra"]


seq_hash: 1d3a21c7a527
function_ids:
  ["synapse_login_flows_check_test_go_infra","mas_syn2mas_migration_test_bash_infra","mas_syn2mas_migration_test_bash_infra"]


seq_hash: d5c508bf6c92
function_ids:
  ["mas_client_register_test_bash_infra","wellknown_oidc_patch_test_go_infra","synapse_login_flows_check_go_infra"]


seq_hash: f0ee73ccbaec
function_ids:
  ["mas_client_register_test_bash_infra","mas_client_register_test_bash_infra","synapse_msc3861_enable_go_infra"]


seq_hash: cd07384cc3a6
function_ids:
  ["synapse_admin_client_test_go_infra","matrix_crypto_init_test_go_infra","matrix_room_list_test_go_infra"]


seq_hash: 48a13a957dc9
function_ids:
  ["matrix_message_send_test_go_infra","synapse_admin_client_test_go_infra","matrix_crypto_init_test_go_infra"]


