3 KiB
3 KiB
| episode_id | puente_flat | session_code | acto_dialogico | actor_flujo | criticidad_aegis | skill_dominante | fase_proyecto | tipo_semantico | summary_one_line | source_type | trust_boundary | created_at | relectura_tagged | forgejo_commit_sha |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 091bc95a-d968-4349-b615-f4bf6300b657 | EXPLORA_episodio-2_S20260513.R2_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD | S20260413 | informar | multi_actor | low | TESSERA | operations | troubleshooting | EPISODIO 2 — EMBER: Episodio 2 | claude_code | internal | 2026-05-13T17:31:06.720825+00:00 | false | pending |
📐 Plan ejecución 6 fases (RELOJERO + ZD-3 secuencia continua)
| Fase | Acción | Tokens | Gate parada |
|---|---|---|---|
| 0 PRE-FLIGHT | set_instance_tag MANUAL_INGEST_BYPASS + claim_and_declare + git baseline + verify HANDOFF state | ~5K | abortar si claim falla o git status sucio inesperado |
| 1 ARQUITECTURA | Read push_to_server.py + tessera_pipeline.py + payload_to_tessera_md para identificar API existente reutilizable |
~10K | ninguno |
| 2 CONTRACT + SCHEMA | Pydantic models (TranscriptTurn + EpisodeTessera + IngestResult) + CONTRACT YAML manual_ingest.py declarado upfront | ~5K | ninguno |
| 3 FABRICACIÓN | Write .claude/hooks/lib/manual_ingest.py (~250 líneas, descomposición ≤40 líneas/función: read_transcript / extract_pairs / build_tessera / scp_to_inbox / trigger_crisol / verify_stores) |
~15K | AST_OK obligatorio |
| 4 TESTS | Write tests/test_manual_ingest.py con Hypothesis property-based + pytest unitario + smoke dry-run flag |
~10K | tests verdes obligatorio |
| 5 TEST EMPÍRICO | dry-run local sin SCP → 1 episode real con SCP + crisol_run + qdrant_count + neo4j_query verify +1 ambos | ~5K | si stores no +1, rollback |
| 6 COMMIT + PUSH | Commit canónico + push forgejo + origin + sriyantra (BLINDADA-29) | ~2K | si push falla, retry NO --force |
Tag elegido: MANUAL_INGEST_BYPASS (20 chars, 3 nouns searchable MANUAL+INGEST+BYPASS, ideal range boot panel).