Repository navigation
feat(observation): add scoped metadata projection and bounded local waits - #109
Conversation
|
0.4.0 source work is available as a Draft stack:
All four issues #69/#70/#71/#72 remain in the single 0.4.0 milestone and OPEN. These PRs are partial source implementations, not publication/product acceptance. Automated receipt bootstrap, Windows private storage, original-sender SSH coordination, restart observation, full setup cancellation and real live/platform qualification remain release gates. Native local/SSH retry permission remains false. Latest local integrated check at ce4741f: build/types; npm test 259 total / 254 pass / 0 fail / 5 Windows-only skips; package smoke/install-uninstall/reproducible pack; repository checker; release pack/artifact; npm audit 0; diff checks pass. Local package SHA-256 a06956e07b7c7723a51fe59160450cbcec5b7819f3afe671d34451596d7a6f10 is validation only, not a published or exact future main artifact. Independent findings on URI routing, generation/storage binding, filesystem bounds and wait concurrency were corrected with regressions. Review order is #106 -> #107 -> #108 -> #109. Main retarget/rebase and exact-head CodeQL/CI are required before a future merge; stacked PR checks are not CodeQL completion. No merge, npm/stage/tag/fleet/protection changes performed. |
|
Latest exact-head validation:
#109 initial CI37559247540 failed only the owner-abort test: its 35ms total budget could correctly expire during the newly added snapshot child startup before the owner callback began. The test now separates snapshot startup from the verifier-cancellation phase. Runtime 1s child/owner bounds were not changed. Focused metadata15/15 passed, and new exact-head CI37559641813 passed on macOS/Linux Node22/24 and Windows Node22/24 with release gate. The update is test-only; runtime/package bytes match the already verified ce4741f local artifact a06956e07b7c7723a51fe59160450cbcec5b7819f3afe671d34451596d7a6f10. Local integrated checkpoint: full259/254pass/0fail/5Windows-only skip; build/types/package/install-uninstall/repository/release artifact/audit0 passed. Exact frozen document/fixture SHA-256 remain 46a953010c49214bd8f969412f26713384fbe09a0ba78ebf0fef75da40d0d889 / 963b94e78f510c2535e405813558275d512a5bfe6bbd99ffdf0994b4d2e6e441. All PRs remain Draft and #69/#70/#71/#72 stay OPEN in the single 0.4.0 milestone. This is partial source implementation with the release gates stated in the PRs, not completion/shipping. Stacked CI does not replace main-retarget CodeQL/CI; no merge/npm/stage/tag/fleet/protection changes. |
|
Review findings corrected and propagated through the implementation candidates. All three Draft PRs now target main; each exact current head has successful macOS/Linux Node22/24, Windows Node22/24, release gate, CodeQL (Actions and JavaScript/TypeScript) and GitGuardian checks.
Combined focused build/types and45/45 fixtures pass locally. main-target exact-head CI/CodeQL success supersedes the earlier stacked-base gate note. Implementation release gates and Draft status remain; no merge/publication performed. Dependency review order stays #106 -> #107 -> #108 -> #109 despite their main comparison targets. |
Physical Windows SSH test — 2026-10-11 KSTTested the exact unpublished #109 snapshot Actual commands/results
Scope and remaining workThese are fixture tests on actual Windows, not real Codex/Claude submission, delivery, receipt ACK, or native-platform qualification. The installed Codex was not invoked or version-qualified. POSIX-scoped ledger/owner/observer integration tests remain skipped on Windows; a successful SSH login does not implement Windows ACL/durability/locking or qualify app-server cleanup. Windows handoff/metadata guards remain unsupported, and the native queue allowlist remains narrowly macOS-arm64/Codex 0.160.1. Original-sender SSH handoff/bootstrap also remains unsupported. Private evidence was downloaded, source hash verified, and the marked remote directory was removed with an independent absence check. Existing user files, native sessions, profiles, keys, SSH settings and global installations were unchanged. No merge/release/publication performed; all four issues remain in 0.4.0. |
d830cca to
55daf83
Compare
55daf83 to
9e123cf
Compare
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Current authorized sequential merge checkpoint — 2026-10-18 KST
Exact head
9e123cf9e3bfb07a0526215c9e797a0fb538be46applies only #109's 18 own commits after actual #108 squashd645a692f8e402dd224691410fa89be502e45383. Tree2b14c78b7e10d7312736444ae0c06cdf624da707is byte-identical to locally validated projected d83635d.Local macOS arm64 Node24.16.0: full387 total/382 pass/0 fail/5 Windows-only skips; build/types, reproducible package/install/uninstall, shorthand, repository/diff checks pass. New native hello fixtures report their actual configured build; they do not bypass #108's exact actual-process build gate.
Preserved #107 fixes: private prepared Claude/inactive Codex continuity, encrypted epoch/intent-bound journal plus fail-closed private key, exact operationId wait finalization and committed confirmation idempotency. Preserved #108 fixes: delayed-spawn cleanup, positive pre-probe deadlines, actual queue-process build and executable identity, final post-fence/post-owner SQLite FD device/inode checks.
Scoped observation extension: one observed instant resolves all same-clock pending delivery operations against each immutable cutoff; foreign-clock operations remain pending/unclassified for their independent observer, and terminal waits are immutable. Never invent foreign-clock deadlines, ACK, retry or new native submissions. Original-operation SIGINT remains stopped/exit130 even with concurrent waits.
Included native observation remains exact macOS arm64 Codex0.160.1/0.162.1 and warm original storage/generation. Linux/Windows observation, Windows private ledger and automatic receipt collection remain #130–#132. Plain queued/posted, turn completion and queue disappearance are not ACK. No new native/model/remote-host/live ACK tests were performed for this refresh; prior dated evidence below is historical. Companion Draft37 is review-only, not a published skill or adopted pin.
Ready now triggers current-head automatic Code/Security Review. Fresh CI/CodeQL/Windows22+24 and reviews must pass before normal exact-head squash. No manual mention, admin/protection bypass, release dispatch, tags or publication. Earlier source/checkpoint records below are history.
Current refresh checkpoint — 2026-10-14 KST
Exact head:
55daf83bd8ebe1cd6e67bb98259130213d1cac71; latest published main base:a2057940ba19056fcaaa5551a7820f7414bd3bfa.Rebased sequentially in dependency order docs(handoff): record the jointly frozen v1 design #106 → feat(handoff): add private correlation ledger and evidence CLI #107 → feat(app-server): add bounded guarded queue-only client #108 → feat(observation): add scoped metadata projection and bounded local waits #109. Each PR keeps base
mainfor current-head full CI and CodeQL; later branches contain preceding source dependencies and must be reviewed/merged in that order. This is branch preparation, not an integration merge into main.Local macOS arm64 full
npm test: 352 total, 347 passed, zero failed, five Windows-only skips. Build/types, repository/diff checks, npm audit (zero vulnerabilities), reproducible package/isolated install/uninstall and bash/zsh shorthand checks passed.Conformance used the existing exact exported published Python 1.1.0 source
8ca77cf31254c8287a2593fe484bb30a7dba2727; hash-pinned oracle and cross-runtime pure-validator tests executed. Frozen contract bytes/hashes and historical evidence are retained.Existing literal message-file dash, close-before-delayed-spawn cleanup and operation-ID-bound concurrent SIGINT regressions passed. Main's published 0.3.5 version, finite skill matrix/pin, ordinary strict SSH/evidence preservation and Windows native exit propagation are retained.
Existing qualified macOS/native/manual-receipt scope is retained. This refresh performed no new real native/user-session delivery, ACK, Linux/Windows automatic observation, model/provider or operational test. Current-head Actions completed successfully; automatic reviews remain a separate gate; earlier green checks below are historical, not this refreshed-head evidence.
Draft remains, human review gate retained; no merge, tag, release, publication or protection changes.
Final exact-head CI: 12/12 SUCCESS, CLI 38488829300 and CodeQL 38488826157, including both Windows-native Node 22/24. No rerun/bypass. Branch-scoped CodeQL open-alert API returned zero alerts. No new automatic Code/Security Review completion is claimed. GitHub reports MERGEABLE; the PR remains Draft.
Earlier PR history (superseded heads/checkpoints)
Current checkpoint — scoped 0.4.0 acceptance, 2026-10-11 KST
Exact head:
d830ccaa1a459bfec0f3c67e2b0e682d99bc7734. Fast-forward test/docs follow-up; no runtime source, version, frozen design/fixture/pin or published main change. Draft, base main, Refs #72; #69/#70/#71/#72 stay together in 0.4.0. Main remains published 0.3.3 sourcec0ed30273b9e9c0049df86ae3c38486a94289527. No merge, tag, release/publication or operations change.User-approved scope and remaining gates
On 2026-10-11 the user approved completing 0.4.0 with exact Codex 0.160.1/0.162.1 on macOS arm64 client-ID observation, bounded original-intent/SSH/wait handling and explicit operator-confirmed receipts on supported POSIX ledgers. The four issue checklists and milestone description now record this scope, retaining original plans as history. It does not imply all-platform observation, model-authenticated ACK or full Python runtime parity.
Deferred extensions: #130 Linux observation, #131 Windows observation/private storage, #132 voluntary receipt producer/authenticated collector bootstrap, all Future — Agent integrations. These are not mandatory gates of the accepted limited release. Unsupported required goals still refuse before effect, native retry remains false, and possible submission never triggers fallback/resend. Queue acceptance, injection, turn completion, arbitrary reply text and queue deletion never manufacture ACK.
Still pending: companion TS skill candidate guidance/profile rollout in session-peer-skill #31, exact-head review/current-main integration and human merge/release acceptance. The named skill session was inactive at dry-run: no message queued, wake/resume or inactive opt-in. No existing skill metadata/pin was changed and no successor runtime compatibility is advertised. All four issues and Drafts remain open; review/merge dependency order is #106 → #107 → #108 → #109 with checks after main changes.
Added evidence
test/handoff-cross-runtime.test.ts+ static Python adapter actually invoke pinned published Python 1.1.0 pure validators/projections and TS validators. 5 tests / 45 cases: 19 accepted examples spanning all seven states, 12 schema/privacy/forged-ACK/retry negatives, four unsupported-observation state projections, four Claude optional-absence/native-profile cases and six Codex native-profile cases. Standalone SHA-256d36d83f3d6f59eb20c958aac530ca6d5d988a99f6ceabf2704c7c51db1fe524f, canonical handoff module138115b9cc8ee73c77ad1099625f2b6cc2e0a6bd343e864a6b5219328735a808, exact release8ca77cf31254c8287a2593fe484bb30a7dba2727. Input is bounded JSON data, no main/ledger/native CLI/collector/network. Distinct UUID reason names and native optional absence are preserved. Initial omitted-reference ENOENT and incorrect expected UUID reason were corrected; this is pure-function comparison, not live/native interoperability.Current-head validation
macOS arm64 / Node24.16.0 / Python3.15.0, exact published Python1.1.0 reference via
SESSION_PEER_PYTHON_ROOT,PYTHONDONTWRITEBYTECODE=1:npm test(build +test:types+ integrated tests): 347 total / 342 pass / 0 fail / 5 Windows-only skips.npm run test:package: bash/zsh contract + lifecycle, reproducible pack and isolated install/uninstall pass. Repository structure/links/anchors,git diff --check, release helperpack/artifactpass; npm audit zero vulnerabilities.4f8366409e3f2f8a064ab52d1150fa7da06f239808b96835afbba664c8746818, integritysha512-o5U/P1ts5gUKgRcGFLO0cjhgT2Eovs+thEdOkzi+g7iVvo46LpSf2CPPkP8F4O4wY2WPpmd/0Gy2RPY+hJjzMQ==. All71 packaged files byte-match the committed workspace. A final PARITY wording correction changed only documentation after the package-smoke pass; repeat release pack/artifact and byte comparison passed. Earlier artifacts retained privately and superseded. This is an unpublished development package, not public npm0.3.3 bytes.Actual-host evidence retained, not upgraded by these fixtures
Earlier macOS native observation/independent wait and explicit operator confirmation, KR/US ordinary Linux SSH queue/manual confirmation and physical quintet Windows process-harness results remain in VALIDATION and history below. They were run against their recorded component/checkpoint versions, not a new whole-head live test. Linux/Windows observer/authenticated automatic receipt qualification remains unsupported. Owned remote test prefixes/processes were cleaned and absence checked; native test history was retained. Prior failed macOS Node22 owner-probe and physical Windows runs remain disclosed rather than counted as pass.
Prior checkpoints and evidence (historical; current scope and head above)
Current checkpoint — 2026-10-11 KST
Exact head:
e9e4936466bae1ff64557f9d98fed3e0c04db55f. This follow-up changes test fixtures and VALIDATION only; runtime checkpoint2add20d52217e665058337c30a4f8ac592f7e0c8remains unchanged. Draft, refs #72; #69/#70/#71/#72 remain together in 0.4.0. Published main remainsc0ed30273b9e9c0049df86ae3c38486a94289527. No merge, version bump, tag or publication.Additional verification requested by the user
evidence_unsupported); best-effort observation/automatic ACK remained unsupported. A voluntary reply was requested but has not been received; no transcript polling or resend.e83fcffa2dbee33de0694e30b6420d83a128fc5e, not the subsequent test/docs-only commit. Both explicitly uploaded private development copies had verified archive bytes; they were not installations of a newly published npm package. Required evidence channels remained unsupported. Owned remote prefixes were removed and absence verified. US test TUI closed; inspectWriter reported inactive / writerLock absent. Existing native records and test history were retained.Physical Windows alternative
npm run test:windows: 295 total / 165 pass / 0 fail / 130 skip. After applying the final exact-prefix guard, the related contract rerun passed 9/9; exact-prefix / changed-flag / trailing-space controls passed 3/3. Unsupported-platform guards passed 3/3. Guarded fixture files were hash-identical to this repository's files. Full-suite result precedes the final guard and is distinguished from its focused rerun.Current-head local and package checks
8ca77cf31254c8287a2593fe484bb30a7dba2727through SESSION_PEER_PYTHON_ROOT:npm testincluding build/types 337 total / 332 pass / 0 fail / 5 Windows-only skips. This ordinary reference is not full cross-runtime handoff qualification.npm run test:package(bash/zsh contracts, lifecycle, reproducible pack, isolated install/uninstall), release helper pack/artifact all pass. npm audit: zero vulnerabilities. All 71 package files match the final workspace bytes.Remaining gates
Linux and Windows native metadata observation, automated receipt producer/collector bootstrap and original-sender SSH collector remain unsupported/unqualified. Ordinary queue acceptance and manual operator confirmation do not close those gates. Required unsupported goals refuse before effect; native retry remains false. No deduplication or exactly-once claim. Four issues/milestone remain open for remaining scope and human review. Review/merge dependency order remains #106 → #107 → #108 → #109, with exact-head integration checks after changes to main.
Prior checkpoints and original physical-host failure (historical)
Current checkpoint — 2026-10-11 KST
Exact head:
e83fcffa2dbee33de0694e30b6420d83a128fc5e. The final commit is a test-only follow-up to integrated runtime checkpoint2add20d52217e665058337c30a4f8ac592f7e0c8. Normal fast-forward update of this existing Draft, base main. Refs #72; all #69/#70/#71/#72 stay together in 0.4.0. Published main remainsc0ed30273b9e9c0049df86ae3c38486a94289527; no release/version bump, merge, tag or publication.Integrated changes
092d3acd6bec3e3a14bdc7e7a2810ab628ab759d, beside existing 0.160.1. Persist private original version/source/platform provenance. Never infer a missing historical qualification from the current executable.Actual isolated native verification
User explicitly authorized dedicated test sessions and identification messages. No existing working session received a test message.
operator_confirmed, then status/acknowledged wait passed. This is not an automated receipt collector or model-authenticated ACK. The first manual-confirm harness order instead correctly refusedreceipt_order_unprovable; no intent replay. Tested component hashes, not final whole-commit live tests, are recorded in the fixture.Local integrated validation
8ca77cf31254c8287a2593fe484bb30a7dba2727archive through SESSION_PEER_PYTHON_ROOT, PYTHONDONTWRITEBYTECODE=1. Ordinary list/discovery oracle repin is separate from the unchanged frozen design identity; not complete cross-runtime handoff qualification.2add20d,npm testincludes build/types: 337 total / 332 pass / 0 fail / 5 Windows-only skips. Focused SSH/delivery predecessor 27/27 pass.npm run test:package: bash/zsh contracts and fixture-version update/uninstall, identical tarballs, isolated clean install/uninstall PASS. First packaging check failed because VALIDATION was edited between two packs; source edits then stopped and the frozen repeat passed.packandartifactPASS. This is an unpublished development package, not public npm 0.3.3 bytes.js/bad-code-sanitization) identified dynamic code construction in the watchdog test. Fixed by static fixture modules/worker with structured loader data and process arguments; runtime/package bytes unchanged. Follow-up SSH tests 11/11, test:types/repository/diff checks PASS; fresh exact-head pack/artifact PASS with the same package SHA-256. The original alert is not dismissed or bypassed.2add20dCLI run was superseded/cancelled by the test-only push, not counted as an all-green run. No current-head Codex review is claimed and no manual review mention was posted.Independent review
Claude Code 2.1.296, tools disabled/no session persistence: first 240s call timed out (exit143/no output), one narrower 104,671-byte retry succeeded (268.508s, actual first-party claude-opus-5-5, exit0/is_error=false). Input SHA-256
69169aacf2c7f02d6606aebbdb23961e2694a0845e86875f2848469ea97a1718unchanged before/after. Read-only source review only, no tests. Its findings were corrected afterwards with regressions; it is not a review of the entire final commit. Subsequent internal source audit caught and fixed the malformed failed-wait error normalization. Details and limits are in VALIDATION.Windows gate and remaining scope
Actual quintet Windows 10 x64 / Node24.16 test run: 266 total / 155 pass / 2 fail / 109 skip. One underlying C# fake-SSH
.cmdchild-launch AccessDenied plus its enclosing failure. Twelve minimal process controls passed and the same executable reproduced failing.cmd --versionbetween successful encoded PowerShell exit0 controls. Cause remains unverified; this physical-host gate is not passed, regardless of CI. No policies/permissions/services/guards were changed, no actual agent/native queue invoked. Owned remote diagnostic directory removed and absence verified.Automated receipt producer/collector bootstrap, original-sender SSH collector, Windows private ledger/native observation, Linux native observation and broader version/platform qualification remain unsupported/unverified. Required unsupported goals refuse before submission. Destination SSH fixtures are not actual remote native-agent qualification. Queue acceptance, injection, turn completion and visible response do not independently prove receipt ACK; native retry remains false. The milestone and its issues stay OPEN for remaining gates/human review. Suggested merge review sequence remains #106 → #107 → #108 → #109, with exact-head integration checks after any main changes.
Development artifact SHA-256:
894c9eddce56e0478f8501481c85d5da781a57965bc317b58e40d6612f679b35.Superseded historical checkpoint (not current qualification)
Current checkpoint — 2026-10-11 KST
Exact head:
485c6e1bfe41f0c5f5e2e775e6976d295ce69da7. Refreshed against published 0.3.3 mainc0ed30273b9e9c0049df86ae3c38486a94289527using fast-forward branch updates and integration merges; the earlier Cloud CodeQL fixes are retained. This stays Draft, refs #72, within the unchanged four-issue 0.4.0 milestone.Changes in this checkpoint
Add regressions for positive native acceptance followed by ledger failure: preserve queued/submitted/queueId, reconcile unknown without resubmission, and keep total queue calls at one. Explicitly test synthetic 0.162.1 rejection for required observation (zero queues), versus exactly one legacy queue in best-effort mode before any app-server effect. Includes the revised ledger and app-server guards from the preceding PRs.
Validation actually performed
47c23713d0a2a3c11ebde6186afd8c43489b8b65, extracted from the local reference repository. No runtime/reference repin.npm test(including build and test:types): 308 tests, 303 pass, 0 fail, 5 Windows-only skips.npm run test:package: bash/zsh contract + in-place fixture-version lifecycle, reproducible package, isolated install/uninstall pass. Repository checker, release helperpack/artifact,npm audit(0 vulnerabilities) and diff check pass. These are unpublished validation tarballs, not the public 0.3.3 bytes.Physical Windows follow-up — 2026-10-11 KST
Actual Windows 10 x64 / Node 24.16 SSH fixture run: build/types passed;
test:windows266 total / 155 pass / 2 fail / 109 skip. One underlying C# fake-SSH PowerShell-child spawn failure plus its parent is counted as two failures; this run is not all green. Additional disposable unsupported-path guards passed 3/3 after a helper expectation correction. Real native agent submission/ACK was not exercised; Windows support gates remain. Details are recorded in the follow-up comment. The owned remote test directory was deleted and absence verified.Remaining gates
Standalone restart-resumed observation, receipt/bootstrap, original-sender SSH ledger coordination, Windows private ACL storage, real live injection/ACK and new native/platform qualification remain open.
Required unsupported goals refuse before native effect. No fallback/retry after a possible native submission; queued/posted is not receipt ACK or completion. The milestone remains incomplete. No merge, release/version bump, npm publication, tag, protection change, operations change or issue closure is requested by this checkpoint.
Earlier implementation/validation record (historical checkpoint)
Scope
Refs #72 and #69. Draft local observation integration, part of the unchanged 0.4.0 milestone. Stacked on #108, which is stacked on #107 and #106. No issue is closed; no release/publication/live TUI experiment is claimed.
Validation boundaries
Remaining 0.4.0 release gates
Combined CLI route is narrowly qualified for direct native Codex0.160.1/macOS arm64 with a warm supported store. Linux/Windows native integration, original-sender SSH ledger coordination, Windows private ACL storage, automated receipt producer/collector bootstrap, restart-resumed observation, full initial setup/filesystem cancellation and real live/platform qualification remain open. Required ACK remains unsupported. Bootstrap may initialize policy-selected native state/cache files before a storage-binding refusal; only zero QUEUE is promised on that refusal, not zero bootstrap filesystem activity. No managed requirement is bypassed.
Review/merge order after remaining work: #106 -> #107 -> #108 -> this PR, with main retarget/rebase and exact-head CI/CodeQL verification. No merge, staging, npm/tag/fleet or protection changes performed.