1.5 KiB
1.5 KiB
Source Document Compiler Canary
Outcome
A raw artifact plus its UTF-8 extraction and manifest can now become a
deterministic, hash-bound pending_review proposal bundle without connecting
to Postgres. This is the first concrete source-to-database build step; it does
not stage, approve, or apply the packet.
Command
.venv/bin/python scripts/compile_kb_source_packet.py \
--artifact fixtures/working-leo/document-ingestion-v1.json \
--text fixtures/working-leo/document-ingestion-v1.json \
--manifest fixtures/working-leo/source-compiler-manifest-v1.json \
--output /tmp/working-leo-source-packet-v1.json
Receipt
- two independent CLI runs produced byte-identical JSON;
- bundle SHA-256:
8162cbd67cc8847d803b788874e0ab5cfcac9f4f859797958807f9622f683338; - output status:
pending_review; - strict child contract:
approve_claimv2; - declared artifact sources:
1; database_write_performed: false;stage_preview.executed: false;- focused compiler tests:
21 passed; - compiler plus normalizer, staging, and apply contract tests:
69 passed; - Ruff check and format check: passed.
Boundary
This proves deterministic packet construction, not autonomous ingestion in the live Leo profile and not a canonical database update. The next runtime slice is to expose the compiler through a bounded Leo command, retain the generated packet, stage it for review, and prove the same packet on a disposable database before any production apply.