Skip to content

Add isolated planner/quorum experiment with DONE reopening and bounded recovery - #64

Open
FORLEMON wants to merge 3 commits into
systemind-team:codex/bootstrap-basefrom
FORLEMON:experiment/planner-quorum-recovery-v3
Open

FORLEMON wants to merge 3 commits into
systemind-team:codex/bootstrap-basefrom
FORLEMON:experiment/planner-quorum-recovery-v3

Conversation

@FORLEMON

Copy link
Copy Markdown

Problem and behavior

An experimental goal run can stall when a member exits while other agents keep waiting for its output. A member's DONE also needs to be reversible when another member explicitly asks it to revise or verify work.

This PR adds the independently deployed 0.1.12-planner-quorum.3 JavaScript experiment under experiments/planner-quorum-client/, with:

  • optional random planner-first startup and all-active-member completion;
  • explicit @<roster-name> REOPEN <request-id>: <instruction> requests, deduplication, queued delivery, and DONE revocation;
  • a final-check barrier that drains newly arrived room messages before approving completion;
  • a 30-second recovery grace after member exit, followed by cancellation of still-running seat turns, confirmed container stop/restart, and fresh task redistribution;
  • retained roster/model participation evidence, completed_degraded, structured recovery events, and unchanged time/token bounds.

Repository boundary

This is a standalone experimental snapshot of the deployed 0.1.12 fork, not a port into the current 0.1.16 TypeScript CLI. The production CLI, its version, its dependencies and default behavior are unchanged. The experiment is private and outside the pnpm workspace; invoke its entry explicitly. Keeping it isolated preserves the tested artifact and makes the experiment available for review without replacing newer upstream behavior. A TypeScript integration would be separate work.

The root test command runs the experiment's 40 offline tests, and all new files are explicitly export-allowlisted. Portable runtime hashes and baseline provenance are included; deployment paths, credentials, run records and node_modules are not. Six exact historical checksum fingerprints are excluded from Gitleaks because the api-client filenames caused SHA-256 manifests to match the generic API-key rule; all other scanning remains enabled.

Validation

Passed on Linux (Node 22 experiment image, isolated from credentials):

  • pnpm check:export
  • pnpm typecheck
  • pnpm test, including all 40 experiment tests
  • pnpm test:package (unchanged production CLI installed-package smoke)
  • gitleaks git . --redact --no-banner on the final branch: no leaks
  • canonical Git hashes verified for all 31 experiment runtime/declaration/entry files

The experiment's 40 tests also pass on Windows and in a network-disabled Linux container. Windows full upstream tests/package smoke hit existing environment limitations (temporary-directory EPERM and spawn npm ENOENT); Linux checks passed.

Prior deployed Earth_001 runs exercised successful explicit reopening and bounded cancellation/replanning after provider 429 exits. These observations are not service-contract certification and do not establish a benchmark score benefit.

Limits

Forced cancellation may interrupt file writes; existing artifacts must be revalidated. Failed cancellation confirmation blocks further scheduling. The post-check drain is client-side, not a server-atomic close transaction. Natural-language requests outside the explicit REOPEN protocol are not outstanding work items. No npm publication, merge, queue start or server version switch is part of this PR.

FORLEMON and others added 3 commits October 21, 2026 19:39
Preserve the tested 0.1.12 JavaScript experiment independently of the current
TypeScript CLI. Add random planner-first startup, all-active-member completion,
explicit DONE reopening, and bounded cancellation before exit redistribution.
Wire its 40 offline tests into the repository test command and allowlist every
new file. Do not change the published package or default runtime behavior.

Co-authored-by: Codex <noreply@openai.com>
Normalize Windows paths and line endings in the snapshot integrity manifest.

Co-authored-by: Codex <noreply@openai.com>
The api-client filenames cause six fixed SHA-256 entries to match the generic API-key detector; keep all other secret scanning enabled.

Co-authored-by: Codex <noreply@openai.com>
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.

1 participant