Ayaan Zaidi
b41d5293b2
refactor(mantis): give Codex open-ended Telegram proof control ( #128197 )
...
* refactor(mantis): replace Telegram proof compiler with frozen visible replay
* refactor(mantis): let Codex own Telegram proof scenarios
* fix(mantis): isolate proof publication
* fix(mantis): bind baseline cache to revision
* chore(mantis): remove stale scenario-designer wording
* fix(mantis): align readable worktrees with trusted proof
* fix(mantis): register proof collector tooling
* refactor(mantis): keep collector functions private
* fix(mantis): publish agent-selected Telegram proof
* fix(mantis): trim proof media to final turn
* fix(mantis): fence lanes before evidence collection
* fix(mantis): verify lane termination before unlock
2026-08-24 11:47:26 +05:30
Vincent Koc
1ece62a4d8
fix(ci): gate source package producers ( #128463 )
...
* fix(release): preflight package source metadata
* fix(ci): gate source package producers
* fix(ci): preflight canonical package producers
* fix(ci): skip no-package source setup
* fix(ci): normalize source package validation
* fix(ci): normalize Docker package reporting
* fix(ci): avoid generic dependency guard
* test(ci): cover gated package identity
2026-08-23 22:30:10 -07:00
Vincent Koc
3d302c58c6
fix(release): register focused beta evidence on main ( #128391 )
...
* fix(release): repair frozen beta validation blockers (#128137 )
* fix(release): repair frozen beta validation blockers
* fix(release): bind reviewed scanner evidence
* test(release): align frozen beta validation contracts
* fix(release): accept statusless 9a83 QA evidence (#128188 )
* fix(release): admit final beta QA evidence (#128231 )
Admit the exact final beta candidate to the existing fail-closed statusless QA compatibility profile and its parameterized validation matrix.
* fix(release): authorize focused beta evidence
2026-08-23 15:48:04 -07:00
Dallin Romney
53fbe2eb33
fix(release): preserve validation plan across reruns ( #127343 )
...
* fix(release): preserve validation plan across reruns
* test(release): align rerun plan assertions
* refactor(release): use canonical plan cache action
* style(test): format release plan cache assertion
2026-08-21 19:08:32 -07:00
Vincent Koc
7dfe406d20
perf(ci): parallelize installer smoke validation ( #127138 )
...
* fix(ci): parallelize installer smoke groups
* fix(ci): bind installer smoke artifacts
* fix(ci): isolate installer smoke candidate payload
* fix(ci): restore trusted install harness
* fix(ci): run Bun smoke from trusted harness
2026-08-21 17:02:11 -07:00
Vincent Koc
a2f0b84e8a
fix(release): report blockers before diagnostics finish ( #127014 )
...
* fix(release): separate decisions from diagnostic drain
* test(release): align decision drain fixtures
* fix(release): pin artifact downloads to valid v8 SHA
* fix(release): default empty evidence paths in plans
* fix(release): bind complete evidence reuse selection
* fix(release): harden retry artifact integrity
* fix(release): canonicalize reused validation evidence
* fix(release): bind manifest children to execution plan
* test(release): fix validation fixture types
* fix(release): retry transient decision artifact reads
2026-08-21 09:14:39 -07:00
Vincent Koc
225aa5a178
fix(ci): isolate Actions cache writes ( #127107 )
2026-08-21 02:45:06 -07:00
Vincent Koc
fa86caf94f
fix(release): keep protected tooling trusted after main moves ( #126881 )
...
* fix(release): keep protected tooling trusted after main moves
* fix(release): cover protected tooling recovery paths
* fix(release): honor live tooling contracts
* fix(release): revalidate tooling at npm publish
* fix(release): bind npm publishers to live tooling
* fix(release): preserve trusted dispatch identity
* fix(release): revalidate parent authorization
* fix(release): bind ClawHub to release parent
* docs(release): define frozen tooling identity
* test(release): align ClawHub protected dispatch ref
* fix(release): trust protected plugin npm preflight tooling
* docs(release): scope protected writer guarantees
* fix(release): keep protected tooling foundation npm-only
* test(release): cover trusted npm preflight tooling
2026-08-21 07:24:31 +00:00
Vincent Koc
750f2f3762
fix(release): require concrete validation retry groups ( #127012 )
...
* fix(release): require concrete validation retry groups
* fix(release): reject mismatched retry filters
* fix(release): align retry controller vocabulary
* fix(release): preserve historical validation evidence
* fix(release): validate retry filters before scheduling
* test(release): follow shared filter validator
* docs(testing): clarify release QA retry groups
2026-08-20 23:35:16 -07:00
Dallin Romney
59e9765e77
fix(ci): accept extended-stable patch successors ( #126936 )
...
* fix(ci): accept extended-stable patch successors
* fix(ci): align Telegram extended-stable successors
2026-08-20 20:13:26 -07:00
Dallin Romney
1c40eee82e
fix(ci): route recurring validation through SHA helper ( #126766 )
2026-08-20 19:11:27 -07:00
Vincent Koc
701b576cc1
fix(ci): default Telegram advisory input to false ( #126794 )
2026-08-21 03:03:52 +08:00
Vincent Koc
2f0f65e790
fix(ci): add Telegram-only package acceptance profile ( #126769 )
2026-08-20 11:01:59 -07:00
Peter Steinberger
0d43ade926
perf(test): cache parsed release workflows ( #126673 )
2026-08-20 06:28:31 -07:00
Vincent Koc
c28c279afa
fix(release): keep frozen validation independent of main ( #126622 )
...
* fix(release): freeze validation tooling identity
* fix(release): enforce frozen validation contract
* fix(release): validate candidate identity in parent
* fix(ci): close release isolation gate findings
2026-08-20 04:32:38 -07:00
Ayaan Zaidi
b7b7eec5ee
feat(qa): run Mantis Telegram proof on local desktop ( #126220 )
...
Move Mantis Telegram Desktop proof from the remote AWS/Crabbox lane to a recorder-driven local Docker desktop. Keep proof scenarios agent-authored, cache trusted build outputs, and publish exact visible Telegram evidence without writing the QA bot token to artifacts.
Co-authored-by: Ayaan Zaidi <hi@obviy.us >
2026-08-20 11:12:51 +00:00
Peter Steinberger
7bc994aee8
fix(install): avoid success after incomplete lifecycle changes ( #125992 )
...
* fix(install): make lifecycle mutations transactional
Standalone installers now apply npm-version-aware lifecycle approval. Updates verify and repair the installation before reporting success and preserve the prior install owner during method switches. Uninstall now exits nonzero when requested cleanup is only partially completed. Plugin update behavior is unchanged.
Closes #125925
* test(uninstall): assert aggregated live-owner failure
* fix(install): satisfy standalone shell checks
* fix(update): scan PATH for prior Git wrapper
* test(hooks): await Gmail watcher descendant exit
* fix(install): verify Windows npm candidate
* fix(ci): normalize package acceptance version
* fix(update): preserve staged local package links
* test(update): fold staged symlink coverage
* fix(update): retire every legacy Git wrapper
* test(docs): align consolidated ownership checks
2026-08-18 20:50:15 -07:00
Patrick Erichsen
9e4ba15f4c
improve: detect Claude CLI prompt cache regressions ( #124988 )
...
* test(gateway): cover Claude CLI prompt cache reuse
* test(gateway): validate Claude CLI cache across processes
* test(gateway): perturb Claude native cache context
* test(gateway): calibrate Claude CLI cache threshold
* docs(testing): align Claude cache threshold
* test(gateway): preserve config literal types
* test(gateway): split node admission coverage
2026-08-16 21:48:23 -07:00
Patrick Erichsen
305e38f5d9
fix(release): allow beta Docker backfills ( #124999 )
2026-08-16 20:16:40 -07:00
Peter Steinberger
d5f41f734b
fix(ci): trust QA tooling for frozen targets ( #124509 )
...
* fix(ci): trust QA tooling for frozen targets
* fix(ci): validate frozen QA tooling context
* fix(ci): verify frozen context without checkout
* fix(ci): pin QA tooling to workflow revision
2026-08-16 02:41:24 -07:00
Peter Steinberger
255ca8d96b
fix(ci): trust frozen plugin prerelease fixtures ( #124446 )
...
* fix(ci): trust frozen plugin prerelease fixtures
* fix(ci): apply scoped plugin test omissions
2026-08-15 23:47:25 -07:00
Peter Steinberger
6335e358f3
fix(ci): keep Crabbox dependencies intact after pnpm dlx ( #124423 )
...
* fix(ci): isolate Crabbox pnpm dlx state
* fix(ci): clarify hydrated modules errors
2026-08-15 22:13:26 -07:00
Peter Steinberger
878236cfab
test(tooling): deduplicate release timeout evaluators ( #124297 )
2026-08-15 15:58:29 -07:00
Peter Steinberger
b376b13fec
feat(docker): weekly refresh of published moving image tags ( #123348 )
...
* feat(docker): schedule image refreshes
* docs(docker): explain weekly image refreshes
* test(scripts): gate workflow-step execution on bash 4 mapfile support
Stock macOS bash 3.2 lacks mapfile; CI truth is Linux bash 5.
* test: cover docker-release suffix threading and sanctioned second caller
* test(codex): wire run-attempt-state into the attempt-extra project
#123345 added the file without a project owner; the full-suite coverage
guard fails for any PR that runs it.
* fix(ci): run build-artifacts PR validation on hosted runners
ci-build-artifacts-testbox.yml pinned PR runs to blacksmith-16vcpu and
ran Testbox lifecycle steps unconditionally, so the prepare-run landing
gate starved for every PR during a Blacksmith outage even with
OPENCLAW_CI_RUNNER_BACKEND=github. PR events now build on ubuntu-24.04
with dispatch-only Testbox steps, mirroring ci-check-testbox.yml.
* test(ci): align build-artifacts dispatch guard
2026-08-13 19:20:05 -07:00
Ayaan Zaidi
d2afbd05ad
refactor(plugin-sdk): replace API baselines with diffs ( #123036 )
...
* refactor(plugin-sdk): replace API baselines with diffs
* perf(plugin-sdk): bound API diff resources
* fix(plugin-sdk): isolate API diff dependencies
* fix(release): forward Plugin SDK acknowledgement
* fix(release): enforce SDK acknowledgement on publish
* chore: preserve generated-doc ignore policy
* fix(release): freeze SDK API evidence before publish
* fix(ci): satisfy SDK evidence guards
* fix(release): bind complete SDK evidence
* fix(release): authenticate plugin SDK evidence
* fix(plugin-sdk): abort interrupted API diffs
* test(ui): freeze page clock in background-tasks rail e2e
The rail transcript is compared byte-for-byte across the detail-panel
round-trip while it renders live relative ages; on slow CI runners the
second boundary ticks between the two reads (11s -> 12s) and fails the
equality assertion. Fix the page Date with Playwright setFixedTime while
keeping timers running so the tasks.list polling assertions still hold.
Repro: a 1.5s stall between the reads fails pre-fix with the exact CI
diff and passes post-fix.
* fix(scripts): drop unused export on dependency-evidence CLI main
Knip's workflow scan re-roots script references after an actions/checkout
step that sets path:, so the new trusted-tooling checkout in
openclaw-npm-release.yml stops marking this CLI as a workflow entry and
its exported main() surfaces as an unused export in check-dependencies.
Nothing imports main; the module invokes it through its own entry guard,
so the export keyword was dead surface either way.
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-08-13 03:45:36 -07:00
Peter Steinberger
3b6e54041f
ci: replace dependency sticky disk with exact cache ( #123040 )
...
Amp-Thread-ID: https://ampcode.com/threads/T-019ff3db-c467-70ad-8ed3-81f2ba94b0c0
Co-authored-by: Amp <amp@ampcode.com >
2026-08-13 01:13:25 -07:00
Vincent Koc
6472d22a77
fix(ci): budget expanded survivor groups ( #122058 )
2026-08-11 22:44:21 +08:00
Vincent Koc
0f6885141b
fix(ci): use Node 24.16 for release workflows ( #121967 )
2026-08-11 17:11:35 +08:00
Peter Steinberger
3cd034f7a8
fix(ci): release workflow checks fail on macOS Bash 3.2 ( #121669 )
...
* fix(ci): keep release workflow checks portable on macOS
* fix(ci): repair current main compact shard regressions
* fix(ci): repair latest main validation drift
* fix(approvals): restore native account ownership gates
* fix(ci): repair skill workshop validation drift
* fix(ci): align approval route selection with main
* fix(ci): remove stale skill workshop test exports
* fix(ci): align repairs with latest main
2026-08-10 16:11:53 -07:00
Peter Steinberger
b2bb148407
fix(types): heal package acceptance checks
2026-08-10 09:55:54 -07:00
Peter Steinberger
25a9a2e020
fix(ci): guard empty QA-live filter token join in release checks
...
An all-QA live_suite_filter leaves repo_filter_tokens empty; joining the
empty array under set -u aborts the scheduling script on bash <4.4.
Default the expansion and update the workflow-content assertion.
2026-08-10 09:35:51 -07:00
Vincent Koc
1f591bba56
fix(release): bound validation retries and soak
2026-08-10 22:31:32 +08:00
Peter Steinberger
88fc335323
fix(ci): support frozen script entrypoints ( #121208 )
...
* fix(ci): support frozen script entrypoints
* fix(ci): route frozen plugin tests through package script
* fix(release): support compiled candidate test helpers
* fix(release): support compiled upgrade helpers
* fix(release): mount trusted upgrade runtime
* fix(release): preserve trusted tsx resolution
2026-08-10 10:31:21 +08:00
Peter Steinberger
a828bfe04e
fix(release): bootstrap typed Docker planner ( #121088 )
...
* fix(release): bootstrap typed Docker planner
* test(release): handle optional workflow steps
* fix(release): isolate trusted planner dependencies
Punchcard-Session: amber-workshop-workshop-36
* test(release): update trusted harness contract
Punchcard-Session: amber-workshop-workshop-36
* fix(release): bootstrap every trusted Docker planner
Punchcard-Session: amber-workshop-workshop-36
* fix(release): centralize trusted harness bootstrap
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-08-09 11:14:23 -07:00
Peter Steinberger
623866a30e
fix(release): preserve SHA evidence identity ( #121080 )
2026-08-09 07:51:57 -07:00
Peter Steinberger
c70aee247e
refactor(scripts): migrate JavaScript tools to TypeScript ( #121005 )
...
* refactor(scripts): migrate JavaScript tools to TypeScript
* fix(ci): keep changed-scope preflight zero-install
* fix(ci): preserve zero-install script owners
* fix(ci): complete script migration follow-through
* fix(release): keep stable closeout zero-install
* fix(scripts): preserve standalone execution boundaries
* fix(scripts): repair standalone loader boundaries
* fix(scripts): normalize gateway observation ids
* fix(scripts): keep Docker packager standalone
* test(scripts): preserve rebase cleanup helpers
* test(sessions): use tracked temp directory
2026-08-09 07:21:35 -07:00
Vincent Koc
115e5a6f25
fix(release): isolate prepublish plugin startup probe ( #120749 )
2026-08-09 07:15:46 +08:00
Vincent Koc
0d45efd5da
fix(ci): retry transient artifact API reads ( #120654 )
2026-08-09 02:05:04 +08:00
Vincent Koc
49161dee60
fix(release): unblock deferred Telegram beta validation ( #120630 )
...
* fix(release): allow deferring package Telegram validation
* fix(qa): mount taxonomy in package Telegram harness
* fix(release): restrict Telegram deferral to beta
2026-08-09 01:03:02 +08:00
Peter Steinberger
9a2f91a79a
fix(release): keep prerelease companions exact in cross-OS checks ( #120556 )
...
* fix(release): install exact cross-os companion artifacts
* fix(release): derive companion package type from resolver
* fix(release): produce provider-owned companion registries
* fix(release): preserve companions for npm candidates
* refactor(release): simplify companion registry flow
* test(release): align package acceptance contracts
* fix(release): guard optional registry JSON parsing
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-08-08 21:45:16 +08:00
Peter Steinberger
c98bd2287b
ci(release): retry child-run adoption through read-after-write lag ( #120477 )
2026-08-07 22:00:25 -07:00
Peter Steinberger
8b8058a68b
fix(release): supply exact Codex companions to cross-OS checks and repair legacy node-host metadata ( #120442 )
...
* fix(release): supply exact Codex companions to cross-OS checks and repair legacy node-host metadata
* test(release): align async run title rejection
2026-08-07 20:06:53 -07:00
Peter Steinberger
7016b9c81d
fix(ci): adopt dispatched release validation runs ( #120342 )
...
* fix(ci): adopt dispatched release validation runs
* test(ci): update release child validation guard
* fix(ci): cancel mismatched release children
2026-08-07 16:44:12 -07:00
Dallin Romney
1f1333dfec
fix(ci): allow frozen target scenario omissions in candidate prep ( #120166 )
2026-08-07 14:56:42 +08:00
Vincent Koc
a0deb8edae
fix(release): provide prerelease plugin companions to package QA ( #120107 )
2026-08-07 13:31:41 +08:00
Vincent Koc
2013123472
fix(release): isolate private Telegram QA harness ( #120088 )
2026-08-07 10:03:14 +08:00
Dallin Romney
8c64ca24b1
fix(qa): include pinned gateway restart in core runtime proof ( #118009 )
...
* fix(qa): run pinned gateway restart runtime pair
* fix(qa): run pinned pair before advisory report
2026-08-06 18:52:20 +08:00
Vincent Koc
9518564e30
fix(ci): preserve release evidence across reruns ( #119380 )
...
Punchcard-Session: silver-valley-valley-dt
2026-08-05 08:43:25 +08:00
Dallin Romney
7c93cff84a
fix(release): accept trusted extended-stable validation evidence ( #119264 )
...
* fix(release): accept trusted extended-stable validation evidence
* fix(release): document trusted candidate promotion
* docs(release): clarify validation evidence recovery
2026-08-05 04:14:30 +08:00
Vincent Koc
e99c289f3b
fix(ci): avoid duplicate Matrix release QA runs ( #119171 )
...
* fix(ci): gate reusable Matrix QA runs
* docs(ci): document Matrix release QA budget
2026-08-05 03:31:00 +08:00