Files
fn_registry/dev/flows/0005-osint-person-lookup.md
T
egutierrez 212875ed0d chore: auto-commit (286 archivos)
- .claude/agents/fn-orquestador/SKILL.md
- .claude/commands/fn_claude.md
- .claude/rules/INDEX.md
- .claude/rules/cpp_apps.md
- .claude/rules/ids_naming.md
- CHANGELOG.md
- apps/dag_engine/README.md
- apps/dag_engine/api.go
- apps/dag_engine/dags_migrated/example.yaml
- apps/dag_engine/dags_migrated/example_lineage_tracking.yaml
- ...

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-16 16:33:22 +02:00

66 lines
2.3 KiB
Markdown

---
name: osint-person-lookup
id: 0005
status: pending
created: 2026-05-16
updated: 2026-05-16
priority: medium
risk: medium
related_issues: [0098]
apps:
- navegator_dashboard
- odr_console
- graph_explorer
- agents_and_robots
trigger: manual
schedule: ""
expected_runtime_s: 300
tags: [osint, multi-tab, parallel, graph]
---
## Goal
Probar paralelismo (multiples scraping jobs concurrentes) + agregacion a grafo. Demuestra que graph_explorer cierra el circulo visualizando datos extraidos.
## Pre-requisitos
- odr_console activa (jobs queue).
- Chrome con sesiones activas en LinkedIn / Twitter / GitHub (no automatizar login).
- `projects/osint_graph/operations.db` accesible (graph_explorer la lee).
- claude CLI para resumen final.
## Flow
1. Input: nombre + apellido (`Juan Perez`).
2. odr_console crea 3 jobs concurrentes:
- Job A: navegator recipe `osint_linkedin_search.yaml` con query `{name}`.
- Job B: navegator recipe `osint_twitter_search.yaml` con query `{name}`.
- Job C: navegator recipe `osint_github_search.yaml` con query `{name}`.
3. Cada job extrae snippets: `{source, url, title, snippet, timestamp}`.
4. Cada snippet -> insert en `projects/osint_graph/operations.db` como entity `Snippet` + relations `mentions(Person, Snippet)`.
5. graph_explorer abre el operations.db -> renderiza red de menciones.
6. `claude -p` resume hallazgos en Markdown: dada lista de snippets, devuelve `{summary, confidence, suggested_next_steps}`.
7. Sink: report `.md` en `projects/osint_graph/reports/<person>-<date>.md`.
8. Matrix bot envia link al report.
## Acceptance
- [ ] 3 recipes osint creadas (LinkedIn, Twitter, GitHub).
- [ ] odr_console lanza 3 jobs paralelos sin race conditions.
- [ ] >= 5 snippets totales en operations.db.
- [ ] graph_explorer renderiza grafo con >=1 Person + N Snippets.
- [ ] Claude resumen generado y valido (no error).
- [ ] Report .md commiteado en repo osint_graph.
## Telemetria esperada
- 3 runs en `data_factory.runs` (uno por source).
- `operations.db` de osint_graph: entities += N, relations += N.
- `function_stats.claude_cli_prompt_py_infra`: calls += 1.
## Notas
- Consideracion legal: extracciones publicas (perfiles abiertos). NO bypassear paywalls/captchas.
- LinkedIn detecta scraping agresivo -> usar rate-limit por job en navegator.
- Caso ambicioso (5 apps + paralelismo + LLM). Reservar como hito.