Dallin Romney
7de26759ad
fix(release): retain Docker-only recovery after restack
2026-08-21 02:34:14 -07:00
Dallin Romney
81b65f62fc
fix(release): preserve current recovery contracts
2026-08-21 02:31:20 -07:00
Dallin Romney
fb62d77f2a
ci: route extended-stable through shared release publish
2026-08-21 02:31:02 -07:00
Dallin Romney
2e27c33245
ci: share GitHub release finalization
2026-08-21 02:30:48 -07:00
Dallin Romney
059c75f8e4
ci: simplify extended-stable release closeout
2026-08-21 02:30:47 -07:00
Dallin Romney
f852520e5d
test(release): align raw status history assertions
2026-08-21 02:30:47 -07:00
Dallin Romney
8958ed38f1
fix(release): satisfy typed status validation
2026-08-21 02:30:47 -07:00
Dallin Romney
f5a4ebab14
fix(release): load typed extended-stable notes tooling
2026-08-21 02:30:47 -07:00
Dallin Romney
fdeb02208c
ci: persist extended-stable Docker completion
2026-08-21 02:30:47 -07:00
Dallin Romney
56b86eb6bf
ci: make extended-stable closeout idempotent
2026-08-21 02:30:36 -07:00
Dallin Romney
f5b2daf19f
ci: publish extended-stable GitHub releases
2026-08-21 02:30:36 -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