KB-478D

01 - Execution Environment & Source Verification (O6B)

4 min read Revision 1
dot-iu-cutterv0.6O6BG0G1dev-hostsource-verification

01 - Execution Environment & Source Verification

O6B · doc 1 of 8 · 2026-05-21 · Gates G0 + G1 — dev-host execution check and local source verification. Read-only; no mutation.

1. Why this macro exists

The prior O6 attempt was correctly BLOCKED twice: it ran on Contabo, where only the v0.4 skeleton exists, while the v0.6 source at HEAD 6625f76 lives only on the developer Mac (see the two GPT rulings of 2026-05-21: o6-wrong-env-blocked and o6-source-gap-scope-correction). O6B is the corrective macro: run from the developer Mac, create a clean source artifact, transfer + deploy side-by-side to Contabo, smoke-test.

2. G0 — execution environment check

session_platform:   darwin (developer Mac)  ✓ correct env
repo_path:          /Users/nmhuyen/iu-cutter-build/repo/iu-cutter  ✓ exists
git_repo_valid:     true
main_HEAD:          6625f76  (6625f768841dd80a9d524fb722889731edc53c07)  ✓ == expected
feature_HEAD:       6625f76  (feature/constitution-snapshot-mark-dryrun)  ✓ == main
current_branch:     main
HEAD_commit:        "feat(orchestrator): add O4 live dry-run orchestration"
HEAD_commit_utc:    2026-05-21T09:16:18+07:00
working_tree:       clean (git status --porcelain empty)
kill_switch:        cutter_agent/orchestrator/__init__.py:36
                    __execution_enabled__ = False  ✓
G0_verdict:         PASS — correct environment, no WRONG_EXECUTION_ENVIRONMENT

3. G1 — KB + local source verification

kb_read:            OK (5 prior-context docs + 2 folders read)
docs_read:
  - o6-wrong-env-blocked-gpt-ruling-2026-05-21
  - o6-source-gap-scope-correction-gpt-ruling-2026-05-21
  - main-ff-after-o4-pass-gpt-ruling-2026-05-21
  - v0.6-o6-release-deploy-postdeploy-dryrun-readiness/ (8 docs)
  - v0.6-o5-release-live-production-planning/ (7 docs)
kb_upload:          OK (this doc + 7 siblings uploaded under G8)

local_tests:        366 passed in 0.40s
                    (pytest 9.0.2, Python 3.11.6, dev Mac)  ✓ == 366/366 baseline
test_style:         all 21 test files are unittest.TestCase-based
                    python3 -m unittest discover -s tests -> Ran 366 / OK
                    (this matters: Contabo has no pytest — see doc 05)

secret_file_scan:   find for .env* / *.pem / *.key / id_rsa* / secrets* / *.p12
                    -> ZERO hits in the repo tree
gitignore:          __pycache__/ , *.pyc
git_tracked_files:  80
G1_verdict:         PASS

4. Source-metadata note (carried into every later gate)

cutter_agent.__version__:  "0.4.0-dryrun-skeleton"  (UNCHANGED at 6625f76)
note: |
  The O1-O4 authoring macros added the orchestrator as a library
  subpackage (cutter_agent/orchestrator/) + 366 tests, but did NOT rev
  the __version__ string and did NOT add a CLI surface. The "v0.6-ness"
  of this release is established by:
    - the cutter_agent/orchestrator/ subpackage being present
    - the source HEAD being 6625f76 (the GPT-ratified O4 HEAD)
  The deploy plan (O6 doc 03) anticipated __version__ == 0.6.0; the real
  source does not carry that. O6B records the TRUE value and does NOT
  mutate source to satisfy a stale expectation (source mutation forbidden).

5. Result

G0: PASS — dev Mac with v0.6 repo at main HEAD 6625f76, tree clean
G1: PASS — KB reachable, 366/366 local tests, no secret files to package
proceed_to: G2 clean artifact creation
Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-o6b-devhost-deploy-postdeploy-smoke/01-execution-environment-and-source-verification-2026-05-21.md