dot-iu-cutter v0.1 — P0 Production Execution Command Review Package (2026-05-15)
dot-iu-cutter v0.1 — P0 Production Execution Command Review Package
document_path: knowledge/dev/laws/dieu44-trien-khai/execution/dot-iu-cutter-v0.1-p0-production-command-review-package-2026-05-15.md
revision: r1
date: 2026-05-15
author: Agent (Claude Code CLI, Opus 4.7 1M)
sovereign: User / anh Huyên
verifier: GPT (Đ32 HIGH-risk path)
secondary: Opus
phase: P0 execution — command-review (review-only, no execution)
preceding_artefact: knowledge/dev/laws/dieu44-trien-khai/final-readiness/dot-iu-cutter-v0.1-p0-final-execution-readiness-rerun-2026-05-15.md (verdict: authorize_with_conditions)
trigger: rerun condition (b) — production migration command review
§1 — Execution Scope (this package documents only; nothing is executed here)
scope_in:
- production P0 schema migration (CREATE SCHEMA + CREATE TABLE only)
- controlled lookup/bootstrap rows REQUIRED BY P0 schema integrity (none identified — see §6.4)
- structural verification queries (read-only)
- rollback DDL outline (DROP SCHEMA CASCADE on empty tables only)
scope_out:
- production CUT operations (no INSERT into cut_change_set)
- production VERIFY operations (no INSERT into verify_result)
- production DOT-pair signature creation (none)
- any business-data migration (none)
- Qdrant mutation (none)
- Directus collection/schema mutation via Directus API (none; PG direct only)
- deploy of Nuxt / dot / agent-data application code (none unless separately approved)
- backfill of canonical_address on tac_logical_unit (planning §1; out of v0.1 execution)
- markdown mirror generator (FUTURE per P0-5 §4)
1.1 v0.1 production execution shipment — SCOPE RESTRICTION (new finding)
The dry-run artefact at /opt/incomex/backups/dieu44_hb05_2026-05-15/schema/cutter_governance_dryrun_v0.1.sql (4949 bytes; sha256 9eb032e2d40d51a1447ad07e5039db8b8b2f83d29b600fb6388c41ec342e4208) declares exactly 5 tables in the cutter_governance schema (per HB-05 closure record §3):
cutter_governance.decision_backlog_entry(P0-5 subset)cutter_governance.dot_pair_signature(P0-3 / P0-4 shared)cutter_governance.cut_change_set(P0-3)cutter_governance.cut_change_set_affected_row(P0-3)cutter_governance.verify_result(P0-4)
The migration-sequence plan (file 3) and migration-design master call for additional tables/fields that are NOT in this dry-run artefact and have NOT been validated by the 26/26 PASS rollback dry-run:
not_in_dry_run_artefact:
- cutter_governance.decision_backlog_history (P0-5)
- cutter_governance.decision_backlog_dependency (P0-5)
- cutter_governance.sweep_log (P0-5)
- canonical_address field family on tac.tac_logical_unit (P0-1)
- canonical_address_alias (P0-1)
- cutter_governance.manifest_envelope (P0-2)
- cutter_governance.manifest_unit_block (P0-2)
- cutter_governance.review_decision (P0-6)
Consequence: the only DDL that has dry-run evidence is the 5-table set. Two execution-scope options are presented for GPT/User decision in §4 — the package itself remains review-only.
1.2 Status of P0 sequence items
| P0 step | P0 ID | Tables in dry-run artefact? | Production-executable in v0.1? |
|---|---|---|---|
| 1 | P0-5 | partial — only decision_backlog_entry |
partial (only that table) |
| 2 | P0-1 | none | NO — deferred |
| 3 | P0-2 | none | NO — deferred |
| 4 | P0-6 | none | NO — deferred |
| 5 | P0-3 | yes — all 3 tables | YES |
| 6 | P0-4 | yes — verify_result |
YES |
§2 — Exact Production Command Plan (review-only; NOT executed)
All commands are quoted at planning fidelity. Connection strings, host secrets, and the precise database name are placeholders to be confirmed in the execution prompt against
/opt/incomex/docker/.env. Per memory:run_pgmust use< /dev/nullnot-i.
Conventions:
$VPS=38.242.240.89(per Memory Index)$PG_CONTAINER= production postgres container (default expected:incomex-postgres)$DB= Directus database name (default expected:directus)$BACKUP_DIR=/opt/incomex/backups/dieu44_exec_2026-05-15(NEW path; HB-08 backup is NOT reused)$STAMP=$(date -u +%Y%m%dT%H%M%SZ)taken at backup time$DRYRUN_DDL=/opt/incomex/backups/dieu44_hb05_2026-05-15/schema/cutter_governance_dryrun_v0.1.sql
2.1 Fresh production-bound backup (taken IMMEDIATELY before first DDL)
# C-01 fresh production-bound backup
ssh $VPS "mkdir -p $BACKUP_DIR && docker exec -i $PG_CONTAINER \
pg_dump -U postgres -d $DB -F c -Z 6 \
> $BACKUP_DIR/directus_full_${STAMP}.dump < /dev/null"
Rationale: matches the HB-08 pattern (pg_dump -F c -Z 6; restored cleanly with 236 tables). This package does NOT create this backup; the execution prompt does.
2.2 Checksum
# C-02 sha256 of fresh backup
ssh $VPS "cd $BACKUP_DIR && sha256sum directus_full_${STAMP}.dump | tee SHA256SUMS"
Abort if SHA256SUMS empty or sha256sum exit code != 0.
2.3 Schema snapshot (pre-migration)
# C-03 pre-migration schema snapshot
ssh $VPS "docker exec -i $PG_CONTAINER \
pg_dump -U postgres -d $DB --schema-only \
> $BACKUP_DIR/directus_schema_pre_${STAMP}.sql < /dev/null && \
sha256sum $BACKUP_DIR/directus_schema_pre_${STAMP}.sql >> $BACKUP_DIR/SHA256SUMS"
2.4 Row-count snapshot (pre-migration)
# C-04 pre-migration row-count snapshot
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB -A -F'|' -t -c \"\
SELECT schemaname||'.'||relname AS tbl, n_live_tup \
FROM pg_stat_user_tables ORDER BY 1\" \
> $BACKUP_DIR/directus_rowcounts_pre_${STAMP}.psv < /dev/null && \
sha256sum $BACKUP_DIR/directus_rowcounts_pre_${STAMP}.psv >> $BACKUP_DIR/SHA256SUMS"
2.5 Production-identity preflight (HARD ABORT GATE — runs BEFORE C-08)
# C-05a database identity
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB -A -t -c \"\
SELECT current_database(), inet_server_addr(), version()\" < /dev/null"
# C-05b cutter_governance must NOT pre-exist
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB -A -t -c \"\
SELECT count(*) FROM information_schema.schemata WHERE schema_name='cutter_governance'\" < /dev/null"
# Expected: 0 (>0 → ABORT per §8 gate G-5)
# C-05c DOT-pair 991/992 present and active
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB -A -F'|' -t -c \"\
SELECT id, name, status, tier, paired_dot FROM directus.dot_tools WHERE id IN (991,992) ORDER BY id\" < /dev/null"
# Expected exactly:
# 991|DOT-IU-CUTTER|active|B|DOT-IU-CUTTER-VERIFY
# 992|DOT-IU-CUTTER-VERIFY|active|A|DOT-IU-CUTTER
# Any deviation → ABORT per §8 gate G-6
2.6 DDL-source integrity check
# C-06 verify dry-run DDL artefact unchanged since HB-05 closure
ssh $VPS "cd /opt/incomex/backups/dieu44_hb05_2026-05-15/schema && \
sha256sum -c <<<'9eb032e2d40d51a1447ad07e5039db8b8b2f83d29b600fb6388c41ec342e4208 cutter_governance_dryrun_v0.1.sql'"
# Expected: OK (any FAILED → ABORT per §8 gate G-3)
2.7 Dry-run env reachability (must remain UP per rerun condition (d))
# C-07 dry-run env health
ssh $VPS "docker inspect -f '{{.State.Status}}' pg-dry-run-hb05-2026-05-15"
# Expected: running (any other state → ABORT per §8 gate G-4)
2.8 Migration command sequence
The migration commands below are issued ONLY for steps whose tables exist in the dry-run artefact (§1.1). Steps 2/3/4 remain DEFERRED.
# C-08 Step 1 (partial) + Step 5 + Step 6 — apply dry-run DDL to production
# (single transactional psql session; the DDL file itself wraps schema creation in BEGIN/COMMIT)
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB \
--single-transaction --set ON_ERROR_STOP=1 \
-f - < $DRYRUN_DDL"
Notes on C-08:
--single-transaction+ON_ERROR_STOP=1together: any error aborts the whole transaction with no partial state.- The DDL artefact creates the
cutter_governanceschema and the 5 tables. It contains no DML. - The artefact has already produced 26/26 PASS in dry-run against an identical restored Directus baseline.
2.9 Verification command sequence (read-only)
# C-09a schema exists
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB -A -t -c \"\
SELECT schema_name FROM information_schema.schemata WHERE schema_name='cutter_governance'\" < /dev/null"
# Expected: cutter_governance
# C-09b 5 tables exist, all empty
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB -A -F'|' -t -c \"\
SELECT tablename, n_live_tup FROM pg_stat_user_tables \
WHERE schemaname='cutter_governance' ORDER BY tablename\" < /dev/null"
# Expected exactly 5 rows, each with n_live_tup = 0:
# cut_change_set|0
# cut_change_set_affected_row|0
# decision_backlog_entry|0
# dot_pair_signature|0
# verify_result|0
# C-09c structural diff vs dry-run reference
ssh $VPS "docker exec -i $PG_CONTAINER pg_dump -U postgres -d $DB \
--schema-only --schema=cutter_governance \
> $BACKUP_DIR/directus_schema_post_${STAMP}.sql < /dev/null && \
diff <(grep -E '^(CREATE TABLE|ALTER TABLE|CREATE INDEX)' $DRYRUN_DDL | sort) \
<(grep -E '^(CREATE TABLE|ALTER TABLE|CREATE INDEX)' $BACKUP_DIR/directus_schema_post_${STAMP}.sql | sort)"
# Expected: no diff output (exit 0)
# C-09d post-migration row-count snapshot — unchanged on pre-existing tables
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB -A -F'|' -t -c \"\
SELECT schemaname||'.'||relname AS tbl, n_live_tup \
FROM pg_stat_user_tables ORDER BY 1\" \
> $BACKUP_DIR/directus_rowcounts_post_${STAMP}.psv < /dev/null && \
diff $BACKUP_DIR/directus_rowcounts_pre_${STAMP}.psv $BACKUP_DIR/directus_rowcounts_post_${STAMP}.psv"
# Expected diff: ONLY the 5 new cutter_governance tables appear (added lines), all with 0 rows;
# no other table line shows a count delta.
# C-09e DOT-pair re-verified post-migration
# (re-run C-05c; must produce identical output)
2.10 Rollback command sequence
# C-10a fail-safe rollback (executed only on validation failure of C-09a–e)
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB \
--single-transaction --set ON_ERROR_STOP=1 -c 'DROP SCHEMA cutter_governance CASCADE'"
# Safe iff C-09b shows all 5 tables at 0 rows (no production rows ever inserted in this scope).
# C-10b rollback verification
ssh $VPS "docker exec -i $PG_CONTAINER psql -U postgres -d $DB -A -t -c \"\
SELECT count(*) FROM information_schema.schemata WHERE schema_name='cutter_governance'\" < /dev/null"
# Expected: 0
# C-10c schema diff vs PRE snapshot (post-rollback DB == pre-migration DB)
ssh $VPS "docker exec -i $PG_CONTAINER pg_dump -U postgres -d $DB --schema-only \
> $BACKUP_DIR/directus_schema_rollback_${STAMP}.sql < /dev/null && \
diff $BACKUP_DIR/directus_schema_pre_${STAMP}.sql $BACKUP_DIR/directus_schema_rollback_${STAMP}.sql"
# Expected: empty diff
2.11 Failure-stop command sequence
# C-11 on ANY failure of C-05a..e, C-06, C-07, C-08, C-09a..e:
# 1. STOP — do not retry, do not advance.
# 2. capture: ssh $VPS "cd $BACKUP_DIR && tar czf failure_${STAMP}.tar.gz ."
# 3. if C-08 failed mid-flight (extremely unlikely given --single-transaction + ON_ERROR_STOP=1):
# run C-10a immediately, then C-10b + C-10c.
# 4. record an admin_fallback_log entry (deferred runtime path; manual entry via dot-apr-execute is acceptable).
# 5. notify Đ32 (HIGH-risk path) + G-4 Custodian.
# 6. open a new GPT review session; do NOT self-retry.
§3 — Migration Sequence (target order)
order_of_execution: P0-5 → P0-1 → P0-2 → P0-6 → P0-3 → P0-4
v0.1_executable_subset_within_this_order: partial-P0-5 → P0-3 → P0-4
v0.1_deferred_within_this_order: full-P0-1, full-P0-2, full-P0-6, P0-5 (history/dependency/sweep_log)
The target order is preserved; v0.1 ships a subset because only that subset has dry-run evidence (§1.1). Subsequent versions complete the sequence after additional dry-run cycles.
§4 — Per-Step Plan
4.1 Step 1 — P0-5 (partial: decision_backlog_entry only)
operation_summary: create cutter_governance schema (idempotent IF NOT EXISTS) + create decision_backlog_entry table
script_path: /opt/incomex/backups/dieu44_hb05_2026-05-15/schema/cutter_governance_dryrun_v0.1.sql (single composite DDL file; this step's lines only)
expected_objects:
- SCHEMA cutter_governance
- TABLE cutter_governance.decision_backlog_entry
verification_command: C-09a, C-09b (decision_backlog_entry row in result with n_live_tup=0)
rollback_condition: any verification deviation in §2.9
transaction_wrapped: yes (within C-08 single-transaction)
idempotent: yes if DDL file uses CREATE SCHEMA IF NOT EXISTS / CREATE TABLE IF NOT EXISTS; OTHERWISE re-run will error and ROLLBACK via ON_ERROR_STOP=1 (no partial state)
expected_no_op_on_rerun: full no-op if idempotent forms used; full ROLLBACK with no state change if not
v0.1_deferred_remainder:
- decision_backlog_history
- decision_backlog_dependency
- sweep_log
deferral_reason: not present in dry-run DDL artefact; no 26/26 PASS evidence
4.2 Step 2 — P0-1 (canonical_address field family on tac.tac_logical_unit + canonical_address_alias)
operation_summary: DEFERRED — out of v0.1 execution scope
script_path: NONE_AUTHORED
expected_objects: none (deferred)
verification_command: n/a
rollback_condition: n/a (nothing applied)
transaction_wrapped: n/a
idempotent: n/a
expected_no_op_on_rerun: n/a
deferral_reason: not present in dry-run DDL artefact; modifies tac.tac_logical_unit (HIGH-impact ALTER TABLE) — requires its own dry-run and joint review before production execution
4.3 Step 3 — P0-2 (manifest_envelope + manifest_unit_block)
operation_summary: DEFERRED — out of v0.1 execution scope
script_path: NONE_AUTHORED
deferral_reason: not present in dry-run DDL artefact
4.4 Step 4 — P0-6 (review_decision)
operation_summary: DEFERRED — out of v0.1 execution scope
script_path: NONE_AUTHORED
deferral_reason: not present in dry-run DDL artefact
4.5 Step 5 — P0-3 (cut_change_set + cut_change_set_affected_row + dot_pair_signature) [HIGH]
operation_summary: create dot_pair_signature, cut_change_set, cut_change_set_affected_row tables
script_path: /opt/incomex/backups/dieu44_hb05_2026-05-15/schema/cutter_governance_dryrun_v0.1.sql (this step's lines)
expected_objects:
- TABLE cutter_governance.dot_pair_signature
- TABLE cutter_governance.cut_change_set
- TABLE cutter_governance.cut_change_set_affected_row
verification_command: C-09a, C-09b (all 3 tables present, all 0 rows), C-09c structural diff = empty
rollback_condition: any verification deviation in §2.9; production CUT operations REMAIN OUT OF SCOPE here (only schema creation)
transaction_wrapped: yes (C-08 single-transaction)
idempotent: same as 4.1
expected_no_op_on_rerun: same as 4.1
risk_class: HIGH (per joint review)
risk_treatment_for_this_step: scope restricted to empty-table creation; no CUT, no signature row, no FK to populated row beyond the 5-table set itself → rollback by DROP SCHEMA CASCADE is safe (empty)
4.6 Step 6 — P0-4 (verify_result) [HIGH]
operation_summary: create verify_result table
script_path: /opt/incomex/backups/dieu44_hb05_2026-05-15/schema/cutter_governance_dryrun_v0.1.sql (this step's lines)
expected_objects:
- TABLE cutter_governance.verify_result
verification_command: C-09a, C-09b (verify_result present, 0 rows), C-09c structural diff = empty
rollback_condition: any verification deviation in §2.9; production VERIFY operations REMAIN OUT OF SCOPE here (only schema creation)
transaction_wrapped: yes (C-08 single-transaction; shared with Step 5)
idempotent: same as 4.1
expected_no_op_on_rerun: same as 4.1
risk_class: HIGH
risk_treatment_for_this_step: same as 4.5 — empty-table creation; rollback by DROP SCHEMA CASCADE is safe
§5 — DDL Source Provenance
ddl_source_path: /opt/incomex/backups/dieu44_hb05_2026-05-15/schema/cutter_governance_dryrun_v0.1.sql
ddl_source_size: 4949 bytes
ddl_source_sha256: 9eb032e2d40d51a1447ad07e5039db8b8b2f83d29b600fb6388c41ec342e4208
ddl_source_origin: identical to the artefact validated by HB-05 26/26 PASS rollback dry-run (recorded in HB-05 closure §3)
ddl_source_used_unchanged_for_production: TRUE — bit-for-bit equality is required (C-06 sha256 -c gate)
ddl_modification_proposed: NONE
ddl_regeneration_proposed: NONE
ddl_for_deferred_steps_(P0-1,P0-2,P0-6,P0-5_remainder): NOT_AUTHORED; explicitly out of v0.1 execution scope
If GPT review requires DDL generation/regeneration for the deferred steps in this v0.1 execution, that triggers a NEW dry-run cycle + a NEW HB-05-equivalent 26/26 evidence run + a NEW final readiness rerun. This package recommends keeping v0.1 scope tight and shipping deferred items in v0.2.
§6 — Fresh Backup Requirement
fresh_backup_required: true
fresh_backup_taken_in_this_package: FALSE
fresh_backup_responsibility: execution-prompt session (not this package)
fresh_backup_window: < 60 minutes between backup completion (C-01 + C-02) and first DDL dispatch (C-08)
hb_08_backup_reuse: NOT_PERMITTED — HB-08 artefact (directus_full_20260515T102350Z.dump) establishes the pattern; the production-bound artefact must be a SEPARATE fresh take
fresh_backup_path_target: /opt/incomex/backups/dieu44_exec_2026-05-15/directus_full_${STAMP}.dump
fresh_backup_acceptance:
- pg_dump exit 0
- file size > 0
- sha256 recorded
- (optional but recommended) restore-test into pg-restore-test env reusing HB-08 pattern; result PASS before C-08 dispatched
This package does NOT create that backup; the execution prompt must.
§7 — Rollback Readiness
rollback_strategy: DROP SCHEMA cutter_governance CASCADE
rollback_safety_basis:
- Steps in v0.1 execution scope produce only EMPTY tables (no DML executed)
- rollback restores the database to the pre-migration schema snapshot (C-10c diff = empty)
- 0 production rows are at risk because no CUT / VERIFY / signature DML is part of this scope
rollback_command_outline: C-10a → C-10b → C-10c (see §2.10)
rollback_triggers:
- any verification deviation in §2.9 (C-09a..e)
- any failure in §2.5/2.6/2.7 detected AFTER C-08 (unlikely, but covered)
rollback_what_cannot_be_automatically_rolled_back:
- NOTHING in v0.1 execution scope (empty-table creation only)
- if scope ever expands to include DML (e.g., bootstrap rows): different rollback strategy required and out of v0.1
rollback_approval_on_partial_failure:
- Đ32 (HIGH-risk path) + G-4 Custodian joint approval
- Sovereign User explicit acknowledgement before rollback dispatch if uncertainty exists
- the rollback C-10a is itself a DDL; treat with same care as C-08 (but it does not require new backup since C-01/C-03 captured pre-state)
rollback_evidence_artefacts:
- HB-05 logs/hb05_results.json (sha256 75c2c1afdba3eb901694f63bd22792c15bd693e4da8b0c2ddc8432671e80e524)
- HB-05 helpers/hb05_harness.py (sha256 ba5f8313809ad8145088e6b4f33ca917eb65e490046bb9acd902c3a273ac208f)
- HB-05 schema/cutter_governance_dryrun_v0.1.sql (the same DDL artefact)
§8 — Safety Gates (each is a HARD ABORT condition)
G-1 production_target_identity_mismatch:
trigger: C-05a returns a db name != expected $DB, or inet_server_addr() returns an unexpected address
action: ABORT before C-08; investigate; do not retry without sovereign approval
G-2 backup_failure:
trigger: C-01 exit != 0 OR backup file size = 0 OR C-02 missing sha256 OR > 60 min stale at C-08 dispatch
action: ABORT; retake backup; restart from C-01
G-3 checksum_missing_or_mismatch:
trigger: C-02 absent OR C-06 sha256 -c reports FAILED
action: ABORT; do not dispatch C-08
G-4 dry_run_env_unavailable:
trigger: C-07 reports anything other than "running"
action: ABORT (rerun condition (d) violated)
G-5 cutter_governance_schema_already_exists:
trigger: C-05b returns count > 0
action: ABORT; investigate (production state did not match the "untouched" precondition); do not dispatch C-08
G-6 dot_pair_missing_or_changed:
trigger: C-05c result deviates from the exact expected two-row output
action: ABORT; reconcile dot_tools 991/992 state with HB-07 closure record before proceeding
G-7 verification_failure:
trigger: any of C-09a..e fails (missing schema, wrong table count, non-empty tables, structural diff non-empty, row-count diff outside expected new-tables-only delta)
action: ABORT and ROLLBACK via C-10a..c
G-8 ddl_dispatch_failure:
trigger: C-08 exits non-zero
action: the single-transaction + ON_ERROR_STOP=1 ensures no partial state; capture artefacts via C-11; investigate before any retry; do NOT retry automatically
All eight gates are AND-coupled in the sense that ANY ONE firing aborts production execution.
§9 — Final Status
command_review_package_status: ready_for_gpt_review
production_execution_authorized: false
ddl_executed: false
migration_executed: false
pg_mutation: false
qdrant_mutation: false
directus_mutation: false
deploy_performed: false
backup_taken_in_this_phase: false
self_advance_to_execution: prohibited
new_findings_in_this_package:
- SCOPE_GAP: dry-run artefact covers 5 tables only; full P0 sequence (Steps 2/3/4 + P0-5 remainder) requires a separate v0.2 cycle
- RECOMMENDATION: v0.1 production execution ships partial-P0-5 + full-P0-3 + full-P0-4 only (3-table-group)
- 0 new HARD blockers introduced; the scope gap is an EXECUTION-SCOPE RESTRICTION, not a blocker for the v0.1 subset
§10 — Next Steps
next_step_1: GPT review of this command-review package
next_step_1_inputs:
- this file (path at top)
- the 5 controlling files in the user prompt
next_step_1_expected_decisions:
- accept/reject the v0.1 scope restriction (5 tables only)
- approve or revise the C-01..C-11 command set
- confirm Đ32 (HIGH-risk path) sign-off intent for Steps 5/6 at execution time
next_step_2_if_pass: separate explicit production execution prompt that references THIS package by path
next_step_2_prerequisites:
- GPT command-review verdict = PASS (or PASS_WITH_CONDITIONS)
- User issues explicit execution prompt in a separate session
- Final-readiness §4 conditions (a)–(e) all satisfied at prompt time
- fresh production-bound backup taken < 60 min before C-08 dispatch (C-01 + C-02)
agent_self_advance: PROHIBITED
agent_next_action: WAIT for GPT review of this package; do not dispatch any command against production.
§11 — Hard Boundaries (re-stated)
no_command_executed_in_this_phase: true
no_backup_created_in_this_phase: true
no_ddl_run_in_this_phase: true
no_migration_executed_in_this_phase: true
no_production_pg_mutation_in_this_phase: true
no_production_qdrant_mutation_in_this_phase: true
no_production_directus_mutation_in_this_phase: true
no_deploy_in_this_phase: true
no_self_authorization_in_this_phase: true
no_dry_run_env_teardown_in_this_phase: true
output_form: command_review_package_documentation_only
End of command review package.