Skip to content

fix: resolve audited runtime and workflow defects - #257

Merged
KaiEureka merged 31 commits into
mainfrom
codex/fix-audit-candidate-budget-20261025
Oct 26, 2026
Merged

KaiEureka merged 31 commits into
mainfrom
codex/fix-audit-candidate-budget-20261025

Conversation

@KaiEureka

@KaiEureka KaiEureka commented Oct 25, 2026 •

Copy link
Copy Markdown
Collaborator

Resolve nineteen reproducible defects found in the OpenCollab runtime audit. The repairs cover shared workflow budgets, session snapshots, authored child workflows, message persistence and conversion, context summarization, Git checkout handling, CLI interruption and Weave verification and continuation.

Parent workflows account for candidate sessions while they are running. Snapshots retain hard and soft allowances, budget decisions, Scout submission settings, workspace bindings and workflow-tool ownership. Effective submission reserves survive a later soft-budget decrease and subsequent direct or policy-driven expansion. Fresh configuration validation remains in place. Closing a source or branch ends its own authored work, and copied environment callbacks use the current environment and role.

Native workflow snapshots copy mutable configuration independently and start fresh observation state, leaving source tracing, subscriptions and autosave with their owner. Factory-owned model transports remain open until the last owning session or snapshot closes. Failed snapshot construction acquires no ownership reference, and externally supplied models retain caller-owned cleanup.

Authored workflows forward binary stdin in worktree isolation and settle startup failures through the existing cleanup path. Large internal results and session artifacts use checked artifact transfer. Developer messages survive autosave, journals, exports and subsequent turns, including native Anthropic continuation and Responses-to-Anthropic restoration. Their conversion preserves the established system projection, chronological compaction records and content validation. Truncated model summaries use the existing recovery behavior while retaining history and avoiding the summary cache.

Git accepts explicitly disabled sparse-checkout settings. Interrupted CLI turns decline subsequent interactive questions without consuming fresh input. Weave executes supported echo-prefixed checks, obtains per-target pytest evidence for ordinary quiet invocations and accepts the original run identity for continuation. Existing verification rules and resource cleanup behavior remain covered by regression tests.

Workflow collections preserve exception objects returned as per-item diagnostic data, allowing successful sibling work and final summaries to complete. Actual thrown errors are recorded separately by input position. Budget errors retain priority, and other terminal errors retain input order. Ordinary raised business errors, queue admission and cancellation cleanup keep their existing behavior.

Validation uses native OpenAI Chat, Responses and Anthropic SDK transports with local HTTP substitutes, real files and Git worktrees, child processes, terminal interaction and installed-package checks. Independent snapshot and provider review passed 219 snapshot tests and 132 provider tests on each of Python 3.12 and 3.14. Separate behavior probes cover soft-budget changes, exhausted and unbounded allowances, independent branch settings, developer save/load, provider transfer, actual file tools and message chronology. All probe-owned models, clients and environments closed.

The latest aggregate commit is 3a0b4ff9. The 996-case regression set passed against the same runtime and test files as this head. Cleanup lifecycle tests now synchronize session entry before cancellation, retaining actual quiescence, late-write and tracer-order assertions across variable startup times. The lifecycle suite passed 139 cases on Python 3.12, 3.13 and 3.14, and independent delayed-start and negative controls verified the assertions. Whole-repository Ruff, import constraints, dependency checks, translation synchronization, whitespace checks and the existing proposed-history scan pass. Complete CI verification passed on this head. Python 3.10 passed 10,407 tests with 76 skips. Python 3.11, 3.12, 3.13 and 3.14 each passed 10,408 tests with 75 skips. Distribution artifacts, macOS platform integrity and browser fixtures also passed.

The focused repair commits retain human authorship through merge commits. This PR supersedes #256, #258, #259, #260, #261 and #262.

Forward stdin through worktree commands and finalize child state and budget
reservations when executor startup fails. Retain recovery errors when process
cleanup fails.

Transfer internal results and native session artifacts independently of model
file-read limits while preserving pinned workspace and regular-file checks.

Cover real local, copied, Git worktree and Team candidate execution, large
results, startup failures, path boundaries, descriptor cleanup and bridge
compatibility.
Validate developer history as instruction content during snapshot and journal loading. Preserve its role through autosave, exports, and resumed Responses requests.

Cover native SDK continuation, saved identity and usage, legacy formats, and malformed message rejection.
Read sparse checkout settings with Git boolean parsing so full checkouts restored by sparse-checkout disable can export patches and acquire candidate worktrees. Reject enabled and malformed values in local and worktree configuration, with real Git regressions for both configuration scopes and active sparse indexes.
@KaiEureka KaiEureka changed the title fix(workflow): account for live candidate token usage fix: resolve audited runtime and workflow defects Oct 25, 2026
@KaiEureka
KaiEureka force-pushed the codex/fix-audit-candidate-budget-20261025 branch from 8b16d12 to f4ce28f Compare October 25, 2026 14:57
@KaiEureka
KaiEureka marked this pull request as draft October 26, 2026 12:06
Copy the source session's active enforcement strength and commit reserve without
revalidating them against a later soft cap. Keep new configuration validation
unchanged.

Cover direct and policy budget expansion with actual submission and file-read
behavior.
Convert developer history through the existing system path while preserving
chronological compaction records and content validation.

Cover native save/load and Responses-to-Anthropic continuation through SDK
MockTransport, and use unknown for unsupported-role coverage.
@KaiEureka
KaiEureka marked this pull request as ready for review October 26, 2026 14:01
@KaiEureka
KaiEureka marked this pull request as draft October 26, 2026 14:36
Track thrown collection errors separately from returned values by input position. Preserve budget exception priority, input order, ordinary failure handling, and worker cleanup.
Wait for fake session run loops to start before cancelling their agent callers. This keeps cleanup and tracer ownership assertions independent of session startup speed.
@KaiEureka
KaiEureka marked this pull request as ready for review October 26, 2026 17:09
@KaiEureka
KaiEureka merged commit 8cc07dd into main Oct 26, 2026
14 checks passed
@KaiEureka
KaiEureka deleted the codex/fix-audit-candidate-budget-20261025 branch October 26, 2026 17:28
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