Repository navigation
Prepare, qualify, and freeze the v0.1.0 release candidate from main #598
Copy link
Copy link
Closed
Milestone
Description
Outcome
Produce one exact, reviewable v0.1.0 release candidate from stabilized main, qualify it, and freeze its source and artifact identities for the paired Ultrafuzzbench experiment in #597.
This is release engineering, not feature development. Do not add feature scope while assembling the candidate.
Entry conditions
- Human strategy review Manually review every strategy and decide bug-search vs test-authoring framing #5 is complete and every approved shared-node change is merged to
main. - The human decision for the Invariant campaign can report complete when Recon smart-filter drops a generated property #519/Validate selected properties against executable backend oracles #524/Isolate invariant properties so one failure cannot retire unrelated backend tests #589 property ↔ oracle ↔ backend-entrypoint contract is recorded, and the approved bounded work is complete or explicitly deferred.
- Release-blocking bug issues in Stabilize, benchmark, and release Ultrafuzz v0.1.0 #184 are complete or have an explicit maintainer disposition.
- OpenRouter Integrate OpenRouter for v0.1.0 via main #584 / PR feat(openrouter): add catalogue-wide model support #586 is reviewed, green, and merged directly to
main. - No untracked feature work is being pulled into the candidate.
Candidate construction and qualification
- Start from the exact stabilized
mainrevision; do not revive or merge the historicalrelease/v0.1.0branch or PR v0.1.0 release (open source candidate) #366. - Carry all release-only metadata before the freeze, including the approved version convention, package versions where applicable, changelog/release notes, migrations, and compatibility notes.
- Repair the known changelog hygiene problems recorded in Stabilize, benchmark, and release Ultrafuzz v0.1.0 #184, including the duplicate R40 Aave v4 run exhausted Modal recovery after sandbox exits #267 entry, and make the v0.1.0 shipped-change record reviewable.
- Verify the final schema-v2 catalog contains both
defaultandfuzz-onlyprofiles. - Prove that shared nodes, prompts, output contracts, settings, dependencies, and bug fixes are identical across the profiles; only the intended threat/database/goal-planning profile subgraph may differ.
- Pin and record the external vulnerability-database revision and retained manifest/record provenance without treating the corpus as an Ultrafuzz package.
- Run all deterministic release-validation, workspace/type, package/install, migration, and packed-artifact checks required by Stabilize, benchmark, and release Ultrafuzz v0.1.0 #184.
- Perform bounded operational qualification for both profiles on the pinned Ultrafuzzbench cohort. This qualification proves the candidate can run; it is not the scored paired experiment in Benchmark v0.1.0 default vs fuzz-only audit profiles on the frozen release candidate #597.
- Complete appsec and open-source readiness Complete appsec and open-source readiness review for v0.1.0 #527 against this exact candidate. If Complete appsec and open-source readiness review for v0.1.0 #527 requires a product or packaging change, apply it, invalidate the candidate, and repeat qualification before freezing again.
- Record the candidate source SHA, candidate/merge-tree identity, package/image identities and digests, catalog/profile/topology/prompt digests, external corpus revision, toolchain/runtime versions, and validation evidence in one candidate manifest or equivalent durable record.
Freeze rule
After the candidate is declared frozen, any product, prompt, topology, output-contract, dependency, model/evaluator configuration, release metadata, or package/image change invalidates the freeze. Re-run the affected qualification and #527 checks, issue a new candidate identity, and do not start #597 until the replacement is frozen.
Acceptance criteria
- Every entry condition has a recorded disposition.
- The versioning convention and all release metadata are maintainer-approved and present before freeze.
- Both profiles pass deterministic validation and bounded Ultrafuzzbench operational qualification.
- Complete appsec and open-source readiness review for v0.1.0 #527 is complete against the final candidate identity.
- Packed artifacts contain only intended files and reproduce the recorded identities.
- A candidate manifest records every identity and digest required by Benchmark v0.1.0 default vs fuzz-only audit profiles on the frozen release candidate #597 and the final release issue.
- A maintainer explicitly records that the candidate is frozen and ready for Benchmark v0.1.0 default vs fuzz-only audit profiles on the frozen release candidate #597.
Non-goals
- Running or interpreting the scored paired benchmark.
- Tagging or publishing v0.1.0.
- Adding benchmark-only product behavior or new release features.
Creating or completing this issue does not itself authorize merging a final release PR, tagging, or publishing.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
aviggiano commentedon Aug 21, 2026
Entry-condition audit (2026-08-21):
#598 is correctly blocked; candidate construction should not start yet.
mainworktrees.release/v0.1.0; authoritativemainstill has the residualthoroughprofile, so its bounded config change must land onmain.mainnorrelease/v0.1.0contains the requiredfuzz-onlycomparison profile.dabbee3d, before a Prepare, qualify, and freeze the v0.1.0 release candidate from main #598 candidate existed. Currentmainisfe0922ea, and Complete appsec and open-source readiness review for v0.1.0 #527's own goal/acceptance criteria require re-checking the exact final candidate. The preserved review is strong baseline evidence, but it cannot by itself satisfy the exact-candidate gate after later changes.release/v0.1.0is 82 commits ahead and 50 behindmain. Recent fixes fix(runtime): give agentic nodes a retry budget, base worktrees on the launch revision, and make preparation failures diagnosable #689/fix(goals): shrink goal prompts from inlined JSON to path references, and stop killed goal lanes being attested as verified empty results #690 and changes docs: describe the DeepSeek pairing as a compatibility pairing, not DeepSeek's first-party harness #695/feat(runtime): tight OpenCode adapter with run-scoped state isolation #696/Add a tight Pi adapter bound to OpenRouter #703 landed only there, while this issue explicitly forbids using that branch as the candidate.Before freeze: finish/merge the focused
mainblockers, explicitly disposition which release-branch-only fixes are approved for a focused port, resolve #597's missing comparison surface, and schedule a bounded #527 delta/revalidation against the resulting exact candidate.No candidate, freeze, benchmark, tag, or publish action was started.