# Issues | ID | Título | Estado | Prioridad | Tipo | Bloquea | |----|--------|--------|-----------|------|---------| | 0001 | Jupyter create notebook | completado | — | feature | — | | 0002 | Jupyter discover root dir | completado | — | bugfix | — | | 0003 | Jupyter tools documentation | completado | — | docs | — | | 0004 | Jupyter discover multiple instances | completado | — | feature | — | | 0005 | Jupyter write batch | completado | — | feature | — | | 0006 | Jupyter exec outputs keyerror | completado | — | bugfix | — | | [0007a](completed/0007a-dag-core.md) | DAG engine: core (parse, validate, topo sort) | completado | alta | feature | 0007b-e | | [0007b](completed/0007b-process-manager.md) | DAG engine: process manager (spawn, wait, kill) | completado | alta | feature | 0007e | | [0007c](completed/0007c-execution-store.md) | DAG engine: execution store (SQLite) | completado | alta | feature | 0007e | | [0007d](completed/0007d-scheduler.md) | DAG engine: scheduler (cron match) | completado | media | feature | 0007e | | [0007e](completed/0007e-dag-executor-app.md) | DAG engine: CLI + web app que reemplaza Dagu | completado | alta | feature | — | | [0008](completed/0008-sqlite-api-web.md) | SQLite API Web | completado | alta | feature | — | | [0009](completed/0009-http-server.md) | HTTP Server Foundation | completado | alta | feature | 0010, 0011, 0014, 0016, 0019, 0021, 0022 | | [0010](completed/0010-auth-system.md) | Auth System (JWT, passwords, OAuth2, RBAC) | completado | alta | feature | 0022 | | [0011](completed/0011-websocket-sse.md) | WebSocket & SSE Server | completado | alta | feature | — | | [0012](completed/0012-email-smtp.md) | Email & SMTP | completado | media | feature | — | | [0013](completed/0013-background-jobs.md) | Background Job Queue | completado | alta | feature | — | | [0014](completed/0014-file-upload.md) | File Upload & Storage | completado | media | feature | — | | [0015](completed/0015-db-migrations.md) | Database Migrations | completado | media | feature | 0021, 0022 | | [0016](completed/0016-rate-limiting.md) | Rate Limiting | completado | media | feature | — | | [0017](completed/0017-frontend-hooks.md) | Frontend Data Hooks (React) | completado | alta | feature | — | | [0018](completed/0018-config-env.md) | Config & Env Management | completado | media | feature | — | | [0019](completed/0019-structured-logging.md) | Structured Logging Go | completado | media | feature | — | | [0020](completed/0020-pdf-generation.md) | PDF Generation | completado | media | feature | — | | [0021](completed/0021-crud-generator.md) | CRUD Generator | completado | media | feature | — | | [0022](completed/0022-init-pipelines.md) | Init Pipelines (scaffolding) | completado | alta | feature | — | | [0023](completed/0023-testing-utils.md) | Testing Utilities Go | completado | media | feature | — | | [0024](completed/0024-dashboard-yaml-split-por-tab.md) | auto_metabase: split dashboard YAMLs por tab | completado | alta | mejora | — | | [0025](completed/0025-cpp-text-editor-file-watcher.md) | C++ text_editor + file_watcher | completado | alta | feature | — | | [0026](completed/0026-cpp-gl-texture-load.md) | C++ gl_texture_load (stb_image → sampler2D) | completado | alta | feature | 0035, 0036 | | [0027](0027-cpp-gl-compute-pingpong.md) | C++ gl_compute_shader + gl_pingpong_fbo + DAG Compute | pendiente | alta | feature | — | | [0028](completed/0028-cpp-implot3d-3d-viz.md) | C++ ImPlot3D + surface_plot_3d + scatter_3d | completado | media | feature | — | | [0029](completed/0029-cpp-mesh-viewer.md) | C++ mesh_viewer + obj loader + orbit_camera | completado | media | feature | — | | [0030](0030-cpp-audio-reactive.md) | C++ audio reactivo (capture + fft + uniform feed + viz) | pendiente | media | feature | — | | [0031](completed/0031-cpp-animation-curves.md) | C++ animation curves (timeline + bezier_editor + tween) | completado | media | feature | — | | [0032](completed/0032-cpp-sql-workbench.md) | C++ sql_workbench | completado | media | feature | — | | [0033](0033-cpp-http-ws-inspector.md) | C++ http_inspector + websocket_client | pendiente | baja | feature | — | | [0034](completed/0034-cpp-scientific-viz.md) | C++ scientific viz (treemap, sankey, chord, contour, voronoi) | completado | media | feature | — | | [0035](0035-cpp-map-tiles.md) | C++ map_tiles (slippy map OSM) | pendiente | baja | feature | — | | [0036](0036-cpp-image-canvas-webcam.md) | C++ image_canvas + webcam_texture | pendiente | baja | feature | — | | [0037](0037-ioc-regex-extractor.md) | IoC regex extractor (IP, email, dominio, hash, wallet, CVE, MAC) | pendiente | alta | feature | — | | [0038](0038-gliner-entity-extractor.md) | GLiNER entity extractor (zero-shot NER multilingue) | pendiente | alta | feature | 0039, 0040 | | [0039](0039-glirel-relation-extractor.md) | GLiREL relation extractor (zero-shot triplets) | pendiente | media | feature | 0040 | | [0040](0040-hybrid-extraction-pipeline.md) | Pipeline hibrido extraccion grafos (regex + GLiNER + GLiREL + LLM fallback) | pendiente | media | feature | — | | [0041](completed/0041-cpp-app-best-practices.md) | C++ app shell estandarizado (PATTERNS.md + AppConfig extendido) | completado | alta | feature | 0043 | | [0042](completed/0042-cpp-layout-storage-public.md) | C++ layout_storage publico (extraer de shaders_lab) | completado | alta | feature | 0043 | | [0043](completed/0043-cpp-apps-standardize-shell.md) | Estandarizar shell de las 4 apps C++ | completado | alta | refactor | 0046 | | [0044](completed/0044-cpp-orphans-audit.md) | Auditar 52 funciones C++ huerfanas y poblar uses_functions | completado | media | chore | — | | [0045](completed/0045-cpp-extract-pure-logic.md) | Extraer logica pura de impuros (sql_workbench, process_runner, file_watcher, shaders_lab compiler) | completado | media | refactor | — | | [0046](completed/0046-cpp-refactor-raw-imgui.md) | Reemplazar raw ImGui en apps por primitivos del registry | completado | media | refactor | — | | [0047](completed/0047-cpp-tests-foundation.md) | C++ tests foundation (Catch2 + top-20 primitivos) | completado | alta | feature | 0048 | | [0048](completed/0048-cpp-visual-tests-ci-gate.md) | Visual tests via primitives_gallery + CI gate tested:true | completado | media | feature | — | | [0049](0049-osint-graph-viewer.md) | OSINT graph viewer + GPU graph rendering system (multi-issue) | pendiente | alta | feature | — | | [0049a](completed/0049a-osint-graph-setup.md) | Setup proyecto osint_graph + sub-repo graph_explorer | completado | alta | infra | parte de 0049 | | [0049b](completed/0049b-cpp-bump-gl-43.md) | Bump OpenGL 3.3 → 4.3 core en cpp/framework | completado | alta | infra | parte de 0049 | | [0049c](0049c-graph-renderer-tier1.md) | graph_renderer Tier 1: RGBA8, orphan, frustum cull, auto-pause | pendiente | alta | perf | parte de 0049 | | [0049d](0049d-graph-edges-vertex-pulling.md) | Aristas via vertex pulling con TBO | pendiente | alta | perf | parte de 0049 | | [0049e](0049e-graph-types-extended.md) | graph_types modelo extendido + EntityType/RelationType | pendiente | alta | feature | parte de 0049 | | [0049f](0049f-graph-renderer-symbols.md) | Renderer extendido: shapes SDF, icon atlas, flechas, edge styles | pendiente | alta | feature | parte de 0049 | | [0049g](0049g-graph-source-operations.md) | graph_sources: lector operations.db + abstraccion funcional | pendiente | alta | feature | parte de 0049 | | [0049h](0049h-graph-force-layout-gpu.md) | graph_force_layout_gpu: compute shader + spatial hash | pendiente | media-alta | feature | parte de 0049 | | [0049i](0049i-graph-layouts-static.md) | graph_layouts (radial/hierarchical/fixed) + viewport multi-select | pendiente | media | feature | parte de 0049 | | [0049j](0049j-graph-labels.md) | graph_labels: render etiquetas con LabelPolicy | pendiente | media | feature | parte de 0049 | | [0049k](0049k-graph-explorer-app.md) | App graph_explorer (proyecto osint_graph) — integracion final | pendiente | alta | feature | parte de 0049 |