4f25564132
Cierra 0049a. Estructura local en projects/osint_graph/ (gitignored):
- project.md con frontmatter (name, description, tags).
- vaults/vault.yaml + symlink osint_data → ~/vaults/osint_graph/{raw,
processed,exports}.
- apps/graph_explorer/ inicializado como sub-repo Gitea
(dataforge/graph_explorer, branch master) con commit vacio.
Indexado verificado: 4 projects, 2 vaults; fn show osint_graph OK.
3.8 KiB
3.8 KiB
0049a — Setup proyecto osint_graph + sub-repo graph_explorer
Metadata
| Campo | Valor |
|---|---|
| ID | 0049a |
| Estado | pendiente |
| Prioridad | alta |
| Tipo | infraestructura — parte de #0049 |
Dependencias
Bloqueada por: ninguna. Desbloquea: todos los demas sub-issues de 0049 (la estructura del proyecto debe existir antes).
Objetivo
Dejar la infraestructura del proyecto osint_graph lista: estructura de directorios, project.md, vault con symlink, sub-repo Gitea vacio para graph_explorer, e indexado en registry.db.
Contexto
Sigue las reglas projects.md (estructura) y cpp_apps.md (sub-repo + ubicacion). El analisis analysis/ontology_graph ya existente sera la fuente de datos de pruebas — pero NO se mueve dentro del proyecto en este sub-issue (ortogonal).
Arquitectura
projects/osint_graph/ # NEW
├── project.md # NEW (ver template docs/templates/project.md)
├── apps/
│ └── graph_explorer/ # NEW dir + .git apuntando a dataforge/graph_explorer
│ └── (vacio — el contenido se anade en 0049k)
├── analysis/ # vacio inicial
└── vaults/
├── vault.yaml # NEW
└── osint_data -> ~/vaults/osint_graph/ # symlink
~/vaults/osint_graph/{raw,processed,exports}/ # NEW dirs reales (fuera del repo)
dataforge/graph_explorer (en Gitea) # NEW repo vacio, branch master
Tareas
Fase 1 — Estructura local
- 1.1 Crear
projects/osint_graph/{apps,analysis,vaults}/. - 1.2 Crear
projects/osint_graph/project.mdcon frontmatter:--- name: osint_graph description: "Visualizacion + recoleccion de datos OSINT con grafos ontologicos. Visor agnostico GPU-accelerated capaz de consumir operations.db de cualquier app del registry." tags: [osint, graph, visualization, ontology, gpu] repo_url: "" --- - 1.3 Crear
~/vaults/osint_graph/{raw,processed,exports}/y symlink enprojects/osint_graph/vaults/osint_data. - 1.4 Crear
projects/osint_graph/vaults/vault.yaml:vaults: - name: osint_data description: "Datos OSINT crudos + procesados + exports para graph_explorer" path: "/home/lucas/vaults/osint_graph" tags: [osint, graphs]
Fase 2 — Sub-repo Gitea
- 2.1 Crear repo Gitea
dataforge/graph_explorer(vacio, branchmaster). Usargitea_create_repo_*o el flujo de/full-git-push. - 2.2 En
projects/osint_graph/apps/graph_explorer/:git init -b master+git remote add origin <url>+ commit vacio inicial + push. - 2.3 Anotar
repo_urlen el futuroapp.md(creado en 0049k) y, si conviene, en elproject.mdactual.
Fase 3 — Indexado
- 3.1
./fn indexdesde la raiz. - 3.2 Verificar:
SELECT id, description FROM projects WHERE id='osint_graph'; SELECT id, name, path FROM vaults WHERE project_id='osint_graph';
Fase 4 — Cleanup
- Push del repo principal a master con commit
feat(projects): osint_graph project + graph_explorer sub-repo bootstrap. - Verificar con
fn show osint_graph.
Criterio de done
fn show osint_graphmuestra el proyecto con vault correctamente indexado.projects/osint_graph/apps/graph_explorer/.gitexiste ygit remote -vapunta adataforge/graph_explorer.- El symlink de vault funciona (
ls projects/osint_graph/vaults/osint_data/).
Riesgos
| Riesgo | Mitigacion |
|---|---|
| Repo Gitea ya existe | Reusar; git remote set-url origin |
| Vault path absoluto rompe en otros PCs | Documentar en project.md; cada PC monta ~/vaults/osint_graph/ |