Repository navigation
What's Changed
- fix: allow retargeting declared Specs before Shape confirmation by @abmn614 in #522
- fix(native): accept UTF-8 BOM source in candidate checks by @poco0222 in #520
- feat(platform): add MiniMax Code support by @Jakeyhb in #521
- fix(cli): release a file lock the coordinator could not release by @Jin-H in #535
- fix(classic): approve the migration fence that the archive moves by @Jin-H in #536
- feat: streamline Native workflows and add benchmark datasets for 0.5.2 by @benym in #539
Added
- Native check outputs: Declare generated test artifacts in a Builder's
verificationChecks[].outputsbefore verification, so trace files can remain through independent review and Archive. Tracked files and undeclared generated application inputs remain verified (#531). - Native benchmark datasets: Select pinned WorkBuddy Code and SkillsBench tasks through
comet evalor Dashboard, with an isolated Claude Code Goal baseline. Compare original task scores under matching execution conditions. Transfer portable configuration across Windows and Linux without copying local Runtime markers, and keep controller-created files outside candidate inputs while rejecting original task path collisions. Bind the original public task, adapter, resource policy and candidate directories; workflow approvals cannot change the task. Preserve candidate outputs across execution and scoring, including Goal runs, and reject incompatible task constraints before starting a model. New plans use finite per-task workflow and build budgets while retaining manual stop, explicit overrides and historical plan semantics. Preserve original rewards while recording verifier execution stages, distinguish subject and simulator telemetry, and avoid counting cumulative session usage twice. Storage monitoring is explicitly separate from a kernel filesystem quota. Keep pinned verifier dependencies isolated, preserve upstream paths and fractional rewards, and retain redacted diagnostics. Retain original execution ownership when grading a separate copy. Block known benchmark-reference retrieval through Claude Code hooks, audit main and verifier tool traces, and exclude reference access or unverifiable execution identity from comparisons while retaining original rewards. Downloads remain explicit; selection and static collection start neither containers nor models. - Change walkthroughs: Generate a standalone HTML explanation of Classic changes at Build completion and Native changes when the user requests one. Read before/after behavior by feature, expand files and key code, and see actual verification results updated on the same page during Verify. Optional flow and before/after diagrams connect the explanation to its code. Compact, responsive pages follow the system light or dark theme, and existing pages stay with archived materials. Set
change_walkthrough: falsein project config to skip extra explanation and rendering; init and update preserve this choice (#519). - MiniMax Code support: Install, detect, update, diagnose, and uninstall project- or user-scoped Comet Skills under
.minimax/skills, including Classic dependency integration. Managed Skills stay outside Native source snapshots so Skill updates do not change project verification hashes. Project instructions useAGENTS.md; platform-specific Rules and Hooks are not installed (#518).
Changed
- Native Verify and Archive: New built-in Runs allow acceptance in the current session, with independent review chosen for task needs and user requirements. Submit one receipt-based result, run repeatable checks, and bind user acceptance to the candidate and structured verdict. Build can run managed checks whose matching receipts are reused by Verify, and no longer repeats the full acceptance review. Passing Verify results wait directly for acceptance, with final revalidation included in ordinary Archive preparation. Reports become retryable reading views, edited reports are preserved, and Archive blocks actual Spec conflicts rather than another change declaring the same capability. Use the SDK Run as local authority and write portable checkpoints at recovery boundaries. Ordinary status skips settled execution records, and normal handoffs omit unused recovery templates. Reuse input observations and matching process-stop evidence to reduce repeated file reads, lock acquisition, and process probes. Use Native task continuations to submit business results, run needed checks, and claim same-session verification together. Explicit delegated acceptance can finish Archive with the result submission; otherwise the current result still requires user acceptance. Compact task output exposes the current work and next action, while detailed SDK views remain available. New Supervisor Child reviews can share the implementation session unless independent review was explicitly required, and reports record the actual review assurance. Installed workflow Rules and Hook guidance follow the same review, context-delivery, learning, and recovery choices as the Native Skills. Native learning submissions run only for reusable observations; pending learning queues no longer delay completion. Existing Runs retain their original verification and recovery contracts.
- Native request alignment: Keep the original text supplied through
native new --taskin the Run and deliver it with Builder and Verifier handoffs. Review Shape against the original request, then require an explicit alignment conclusion in the same verification result before accepting a pass. Unresolved requirements and unauthorized scope reductions cannot be reported as aligned. Existing Runs remain compatible; this adds no reviewer or fixed test rounds. - Task context delivery: Include applicable personal memory and project knowledge in Native and Classic SDK claim responses, bound to the receiving session. Provide prepared expansion, recovery, and learning commands, with bounded retrieval that cannot undo a successful claim. Queue implicit workflow checkpoints and deferred observations for
comet memory syncinstead of waiting for maintenance during workflow advancement; explicit memory requests and evidenced adoption feedback retain their immediate behavior. - Native Runtime continuation: Advance authorized internal Actions in one
native nextrequest until an Agent handoff, user decision, or execution blocker. Preserve individual Action receipts and reuse the application loaded for that request. Builder result templates no longer require a submission timestamp; the Runtime supplies missing or invalid times while accepting legacy requests. Native claim responses provide receipt-based business-result templates and optional check schemas, prefill claim tokens, and accept an omitted iteration-focus list while retaining complete self-review. Verifier context shows current input changes and applicable recovery without replaying valid checks or one-time operations. Edit observation includes approved formal originals and separate judgment templates in the same response. Reuse committed Run results and stable preflight observations instead of reloading them. - Workflow continuation after edits: Ordinary edits during Build, Verify, or before Archive no longer block on a separate review session. Hooks keep the edit and the current Run, and the current Agent judges the actual impact at the next advance through
comet edit-review observe, keeping valid approvals, checks, and Actions and rerunning only the affected checks. Detection stays language-neutral and never depends on file extensions, parsers, or compilers. - Formal document edits: Changed briefs, Specs, Design Docs, and plans are judged against the approved original text obtained through
comet edit-review prepare-applied. An unchanged contract keeps the original approval, phase, and acceptance items; only a material change to the goal, acceptance criteria, approach, or authorization requests the affected decisions. - Accepted results before Archive: After acceptance but before delivery, ordinary documentation changes keep the report and the accepted results.
comet edit-review refresh-checksreruns only the affected checks and then continues the original archive. Repeated edits and byte-identical rewrites retain the original document and check evidence, including one-time operations; a changed delivery goal or authorization still requires the corresponding decision. - Native Git staging decoupling: Staging, unstaging, and empty commits no longer rebuild the implementation candidate unconditionally. Only checks that explicitly depend on Git identities recheck them; unchanged bytes continue the original action.
- Edit-continuation performance: Share protected-file reads within a request, batch input hashing, and widen Git status observation instead of rescanning unchanged inputs, shortening the edit-to-continue path for Native and Classic.
Fixed
- Workflow evidence focus: Keep focus on controls selected while an evidence drawer closes, and restore the original trigger when keyboard dismissal leaves focus inside the drawer.
- Native Archive recovery: Recover returned but rejected Spec application and finalization outcomes through
native archive --recover, preserving the original Action and checking its transaction or durable receipt without repeating completed writes. Continue blocking active executions without matching rejection evidence and recovery with changed candidate inputs (#526). - Authored Eval image reuse: Bind copied task environment files to the image cache so tasks with the same Dockerfile and different candidate inputs run their own code. Later controller files do not invalidate the image.
- File lock release: When the lock coordinator fails while releasing a project-state lock, the lock is now released directly if it is still the exact lock this write published, so the same process is no longer blocked by its own lock. A lock that another holder republished, or one that can no longer be inspected, is retained and reported, and a failed direct release reports its own reason instead of describing the lock as changed (#529).
- Classic migration-fence delivery: Accept complete archive moves of tracked migration fences, including archives created before this fix, while rejecting missing or altered archived copies (#530).
- Dashboard plugin loading: Reuse plugin hosts across page reloads, share repeated Git observations during initialization, and allow slower local sections to complete without premature timeouts. Configuration and plugin changes refresh the host;
COMET_DEBUG=1reports redacted section failures while preserving available data (#538). - Windows command startup: Start recognized Node command wrappers directly, avoiding an extra PowerShell process within check deadlines while preserving literal arguments, interpreter selection, and batch argument safeguards.
- Windows doctor diagnostics: Probe OpenSpec versions and optional CodeGraph availability and index status without Node 24 shell deprecation warnings, keeping doctor output clean while preserving version detection and validation of broken changes.
- Windows process probes: Allow slower probe compilation, remove unpublished executables after failed preparation, and back off repeated failures without weakening process identity validation (#538).
- Native delivery recovery: Recover rejected read-only Archive preflights on their original Actions, retain accepted results after incomplete input sampling, and recognize repeated acceptance of the same candidate and report. Reconcile legacy Windows PID ambiguity using explicit stop evidence and fresh system enumeration. Honor successful termination-command exits despite delayed handle closure, wait for supervisor readiness, stop promptly on process or IPC errors, and preserve command completion and timeout facts when cleanup cannot be confirmed. Bound confirmed cleanup when pipes remain open, and report independent Builder field errors together with actionable result-ID guidance (#531).
- Interrupted Native Archive: Recover an applied Spec transaction from its original implementation, approved materials, report, and frozen Spec evidence when generated outputs change after interruption. Continue the original Actions without rewriting Specs or treating historical checks as fresh verification; changed implementation, materials, reports, and transactions remain blocked (#528).
- Classic archived worktree queries: Resolve merged archive copies through the original completed Run without importing duplicate ownership, including after an amended delivery commit. Preserve checkpoint validation and the refusal to select an archived change as active work (#527).
- UTF-8 BOM check receipts: Accept successful Native checks for unchanged JavaScript source with a UTF-8 BOM while preserving the original file bytes and candidate-drift safeguards.
- Cancelled Native history: Explicitly migrate a fully stopped built-in cancellation after its original worktree is removed, including Git checkouts using CRLF, without changing the portable checkpoint, original revision, or execution evidence. Interrupted imports resume from their bound source; active runs, unresolved cleanup, custom applications, conflicting records, and surviving source-worktree ownership remain protected (#513).
- Native Shape target changes: Before Shape confirmation, replace a previously declared target Spec or withdraw an unapproved target capability through the existing requirement-revision continuation without deleting its canonical Spec. Replacement proposals still require fresh approval; exemptions and unrelated removals cannot hide missing declared Specs, and confirmed target Specs remain required (#516).
- Classic Doctor discovery: Ignore non-change entries such as
.DS_Storein both Classic layouts, while continuing to report malformed real changes and unsafe paths (#515).
New Contributors
Full Changelog: 0.5.1...0.5.2