Skip to content

fix(oh-my-pi): preserve native run facts across sandbox and team execution - #236

Closed
Mateo-GarciaL wants to merge 1 commit into
cx/delivery-observatory-hermes-pluginfrom
mateo/uh-native-run-facts
Closed

Mateo-GarciaL wants to merge 1 commit into
cx/delivery-observatory-hermes-pluginfrom
mateo/uh-native-run-facts

Conversation

@Mateo-GarciaL

@Mateo-GarciaL Mateo-GarciaL commented Sep 5, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Stacked on #234 (cx/delivery-observatory-hermes-plugin), not on main: this change extends the existing Delivery Observatory integration rather than introducing a second dashboard.

  • Persist native OMP progress before process exit, including split UTF-8 chunks and trailing JSON lines. Aggregate completed assistant-turn usage without double-counting repeated event envelopes; keep incomplete totals unknown.
  • Publish canonical host/per-run receipts for sandboxed execution and isolated team workers. Retain team facts and leader verification after normal worktree cleanup, and project the selected active/completed run in the Observatory.
  • Finalize interrupted runs without overwriting newer run facts. Handle SIGINT/SIGTERM and terminate the owned process tree; hide Windows OMP/verification console windows. Strengthen the timeout regression to assert that the child process is actually gone.
  • Capture staged, unstaged, untracked, and binary product changes without mutating the Git index or including generated harness bookkeeping.

Updates the runtime contract, runtime documentation, changelog, and relevant regression tests. No workstation configuration, credentials, internal review reports, or task-tracker files are included.

Validation

Local validation was performed on Windows 11; upstream Linux CI subsequently completed on f458cdf643f8922fc7fc863c105628168c0e7969. This remains deliberately a draft because CI is blocked by two missing template documents already absent in the recorded base.

Check Result
bun run typecheck Passed
bun run plugin:typecheck Passed
bun run build Passed
NPM_CONFIG_TOKEN=dry-run-token bun run publish:dry-run Passed; dry-run only, using the same dummy token as CI
Built CLI smoke Timeout returned failed verification and left no live child; a subsequent successful command returned passed verification
TypeScript suite, one worker, Git for Windows Unix utilities on PATH 868 passed / 34 failed / 902 total
bun run plugin:test 87 passed / 3 failed
Upstream Linux TypeScript suite 900 passed / 2 failed / 902 total
Upstream Pack + publish dry-run Passed

The recorded untouched-base TypeScript run had 39 failures. Of the final candidate's 34 failing test cases, 33 also failed in that baseline. The remaining OpenSandbox lifecycle-timeout case was reproduced separately against an untouched base-source snapshot with the same Unix tools on PATH; it fails with Windows EBUSY cleanup behavior there too. This is not a claim that the suite is green.

The plugin failures are test_create_and_run_mission_invokes_uh, test_artifact_endpoint_rejects_symlinked_artifact, and test_local_lifecycle_links_enables_starts_and_rolls_back. They remain visible rather than being skipped or weakened.

The Linux CI failure consists of the two tests/spec-templates.test.ts cases opening missing docs/specs/templates/feature.spec.md and docs/specs/templates/epic.spec.md files (ENOENT). Both also fail in the recorded untouched base. Linux typechecking and build completed before the test step; the plugin test step was not reached. This PR does not delete those tests or add unrelated template changes to conceal the inherited blocker.

GitNexus flags the combined change as critical in breadth, affecting 26 execution flows. Its Windows index reported incomplete flow coverage and unavailable full-text search, so this is a scope warning, not a completeness guarantee. Live-provider smoke was not repeated on this exact contribution commit; no paid-provider validation is claimed here.

Review / merge boundary

Keep draft until the required upstream CI checks are green and the stacked dependency is handled. Do not merge this directly into main while #234 remains unmerged. The primary review areas are terminal run ownership, canonical artifact routing, usage deduplication, and team artifact retention.

@LaloLalo1999

Copy link
Copy Markdown
Contributor

Closing as superseded. Two reasons:

  1. Dead base. This is stacked on cx/delivery-observatory-hermes-plugin, which was merged into main on 2026-09-08 (feat: add Delivery Observatory Hermes plugin #234). The stack no longer exists.

  2. Reimplemented in UH v0.11.0: multi-adapter runtime supervision and governed verification #237. The UH 1.0 consolidation (UH v0.11.0: multi-adapter runtime supervision and governed verification #237) covers the same ground in its own form: canonical native run facts outside the worktree, team artifact retention after cleanup, assistant-turn usage aggregation without double-counting, SIGINT/SIGTERM termination of the owned process tree (src/cli.ts), Windows console hiding (windowsHide in runtime-process.ts/verify.ts), and staged/unstaged/untracked/binary diff capture (src/harness/diff-capture.ts).

Note this is a different implementation, not a fast-forward — the branch is not an ancestor of Mateo-GarciaL/uh-1.0-clean. If any specific behavior here is not faithfully covered by #237 (most plausibly the split-UTF-8-chunk streaming edge cases or the interrupted-run finalization ordering), please cherry-pick just that piece onto the 1.0 branch rather than reviving this one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants