570 Commits

Author SHA1 Message Date
Peter Steinberger 86bf768de0 docs(skills): document session and transcript fetching in openclaw-debugging (#122904)
Adds a Fetching Sessions and Transcripts section: sessions CLI first, then
the per-agent SQLite data plane (session_nodes lookup from chat URL
fragments, transcript_events shape, __openclaw sender provenance,
session_transcript_fts, media://inbound mapping) and a dependency-free
node:sqlite read-only recipe for hosts without sqlite3. Read-only-against-
live-gateway rule stated inline.
2026-08-12 18:41:54 -07:00
Josh Lehman 542ac9ac68 fix: make live updater checkout portable (oc-237) (#122873) 2026-08-12 17:17:18 -07:00
Peter Steinberger 6792921dea refactor: finish commitments retirement bookkeeping (#122143)
* refactor(commitments): remove remaining retired references

* refactor(state): track schema retirements
2026-08-11 09:59:11 -07:00
Peter Steinberger 1dcac5b15f fix: open terminals no longer delay gateway updates (#121601)
* fix(gateway): allow updates with open terminals

* fix(updater): support terminal policy upgrades

* chore(plugin-sdk): refresh API baseline
2026-08-11 09:37:58 -07:00
Jason (Json) 94ae370bcc fix(updater): verify launchd bootstrap postcondition (#121747)
* fix(updater): verify launchd bootstrap postcondition

* test(commands): align learn prompt invariants

* test(approvals): align plugin runtime event kinds

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-08-11 09:02:15 -07:00
Vincent Koc 1f591bba56 fix(release): bound validation retries and soak 2026-08-10 22:31:32 +08:00
Peter Steinberger e37614c83f refactor(plugin-sdk): replace hash manifest with JSONL contract (#121473)
* refactor(plugin-sdk): use JSONL API baseline contract

* chore(plugin-sdk): add generated JSONL API baseline
2026-08-10 03:49:17 -07:00
Dallin Romney a808b0d96a docs(release): reconcile stable maturity issue signals (#120515)
* docs(release): reconcile stable maturity issue signals

* docs(release): preserve stable label audit context

* docs(release): reconcile open labelled fixes
2026-08-10 16:13:34 +08:00
Peter Steinberger a8714eea9a docs(agents): add test-audit authoring gate and net-neutral bug-fix doctrine
- Rename openclaw-test-audit skill to test-audit; add an authoring-gate mode
  invoked whenever tests are written, not only during sweeps.
- Repair Doctrine: capture the failing repro before editing; regression tests
  must fail on pre-fix code. Bug fixes default to net <=0 production LOC via
  the refactor that absorbs the fix, not a bolted-on guard.
- ClawSweeper policy: production-vs-test LOC reviewMetrics entry is now
  unconditional for code PRs, counted with judgment; net-positive bug-fix
  deltas become risks findings with bestSolution naming the absorbing refactor.
2026-08-09 19:24:36 -07:00
Shakker cd5ec0027c docs: keep maintainer leads hands-on (#121225) 2026-08-09 21:25:34 +01:00
Peter Steinberger a39c24463e docs: add OpenClaw test-audit skill (#121110) 2026-08-09 09:07:23 -07:00
Vincent Koc 41423753e0 fix(release): normalize appended PR suffixes (#120971) 2026-08-09 23:21:32 +08: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 1b404a1755 fix(release): accept repeated PR title suffixes (#120948) 2026-08-09 14:49:39 +08:00
Peter Steinberger 26ee1b4935 fix(doctor): enforce deprecation registry deadlines (#120868) 2026-08-08 21:19:04 -07:00
Vincent Koc d64531cd38 fix(release): accept explicit provenance mappings (#120842) 2026-08-09 02:53:37 +00:00
Vincent Koc 37526444d2 fix(qa): defer testing skill model policy (#120590)
Punchcard-Session: amber-workshop-workshop-36
2026-08-08 22:38:44 +08:00
Peter Steinberger 3075acd549 chore(skills): unify issue/PR repair sweeps into openclaw-repair-sweep (#120465)
Merge openclaw-small-bugfix-sweep, openclaw-landable-bug-sweep, and
openclaw-autonomous-issue-sweep into one openclaw-repair-sweep skill with
scope/batch_size/workers inputs and sensible defaults. Fold in the
transferable doctrine from the retired personal super-orchestrator runbook:
broken-main repair as standing sweep work, mandatory follow-up refactor
pass, defect-class batching with one canonical helper, ancestry-based merge
verification, and push-then-escalate for maintainer decisions. Update the
auto-qa companion reference.
2026-08-07 22:32:17 -07:00
Vincent Koc 9195bd55c2 fix(ci): retire dead ClawSweeper commit dispatch (#120281)
* fix(ci): retire dead ClawSweeper commit dispatch

* docs(ci): preserve offline ClawSweeper review path
2026-08-08 05:39:08 +08:00
Peter Steinberger 00a5db443a refactor: remove obsolete commit helper 2026-08-06 18:10:10 -07:00
Peter Steinberger 7729100775 docs(skills): repair stale file references in bundled skills (#120042) 2026-08-06 15:57:41 -07:00
hyuga611 cd009e72f0 docs: openclaw-refactor-docs points at a skill renamed in 0dabb70 (#119394)
* docs: point openclaw-refactor-docs at technical-documentation

The openclaw-docs skill was removed in 0dabb7010b,
which replaced it with technical-documentation. openclaw-refactor-docs was not
updated and still told the agent to read ../openclaw-docs/SKILL.md first, so the
read returned nothing and the refactor proceeded without the style and page-type
rules it was supposed to apply.

* docs: use a workspace-relative path for the technical-documentation read

OpenClaw resolves relative read paths from the session workspace cwd
(resolveReadPath -> resolveToCwd -> resolvePath(cwd, path) in
src/agents/sessions/tools/path-utils.ts), not from the directory holding
the skill file. ../technical-documentation/SKILL.md therefore resolved
outside the workspace and the read still failed.

Use .agents/skills/technical-documentation/SKILL.md, which is the path
that exists from the workspace root.

* docs: resolve technical-documentation support files via {baseDir}

The skill names ten support files relatively (six references/*.md and four
agents/*.md). read resolves relative paths from the session workspace cwd,
so none of them resolved: they exist only under the skill directory.

{baseDir} is the documented mechanism for exactly this and resolves against
the skill own directory, so it works regardless of where the skill is
installed. CONTRIBUTING.md is left alone: it is a workspace-root file and
already resolves.

* Revert the {baseDir} rewrite: it was cleanup, not a fix

The skills catalog prompt already instructs the model to resolve a relative
reference against the skill directory and use the resulting absolute path
(src/skills/loading/skill-contract.ts). These ten references were therefore
never broken, and rewriting them does not belong in a rename follow-up.

Restores this file to its state on main.

* Restore the sibling-relative read path

The skills catalog prompt resolves a relative reference against the skill
directory, so ../technical-documentation/SKILL.md resolves to
.agents/skills/technical-documentation/SKILL.md and was already correct.
Rewriting it workspace-relative was churn on a line whose only defect was
the retired skill name.

This leaves the PR as what it claimed to be: three references to a skill
that was renamed in 0dabb70.
2026-08-06 20:57:25 +08:00
Vincent Koc d73eb23b29 fix(release): report seeded changelog provenance truthfully (#119897)
* fix(release): report seeded changelog provenance truthfully

* fix(release): reject legacy provenance formatting

* fix(release): enforce complete provenance records
2026-08-06 19:22:16 +08:00
Peter Steinberger acc31c3af3 docs(skills): make full-authority maintainer runs unattended (#119629) 2026-08-05 07:11:57 -07: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
Jason (Json) b1f2aae303 fix: prevent live updater from leaving Gateway offline indefinitely (#119116)
* fix(updater): bound maintenance commands

* fix(updater): bound post-kill cleanup

* fix(updater): fail closed on unverified Windows cleanup

* fix(updater): constrain unverifiable Windows commands

* fix(scripts): satisfy managed child return contract
2026-08-04 01:59:59 -06:00
Jason (Json) ae21f3c00c fix(daemon): skip unlabeled launchd plists (#119091) 2026-08-04 01:31:25 -06:00
Jason (Json) 8ad2e06a9d fix: preserve live updater failure diagnostics (#119096) 2026-08-03 23:30:17 -06:00
Peter Steinberger 3ebb0ca3b6 chore(lint): resolve the 40 reserved baseline findings to a zero-noise lint:all (#118256)
* fix(lint): resolve reserved runtime findings

* chore(lint): scope intentional contract findings

* fix(android): preserve WebMessageListener bridge contract
2026-08-02 16:08:57 -07:00
Peter Steinberger 7c70571683 chore(lint): clear 172 lint:all baseline violations in five batches (#118098)
* chore(lint): clean Android-Linux app assets batch

* chore(lint): clean setup-launcher-plugin batch

* chore(lint): clean changelog-updater batch

* chore(lint): clean QA-runtime-helper batch

* chore(lint): clean script-tests batch

* fix(mxc): await sandbox spawn before bridge selection

* fix(test): make fake plutil metacharacter escaping survive the template hop
2026-08-02 14:08:09 -07:00
Dallin Romney a530a7bd70 docs(release): clarify extended-stable backport guidance (#117324)
* docs(release): freeze SDK and config extended-stable backports

* docs(release): warn on extended-stable SDK config backports

* docs(release): narrow extended-stable contract warning
2026-08-02 19:26:24 +08:00
Jason (Json) ae27d79364 fix(updater): harden launchd replacement timing (#117030)
* fix(updater): harden launchd replacement timing

* fix(updater): recover failed launchd replacement
2026-07-31 16:02:00 -06:00
Peter Steinberger 21fba83254 fix: live updater no-op restarts healthy gateways (#117038)
* fix(updater): route managed health through overlay

* style: format live updater probe

* test: align live updater readiness types
2026-07-31 14:34:14 -07:00
Peter Steinberger d66b514a7e fix: allow slower gateway readiness after updates (#117032) 2026-07-31 13:38:06 -07:00
Peter Steinberger 4669db230a docs(agents): require architectural root-cause repairs 2026-07-31 11:06:32 -07:00
Peter Steinberger acdb284314 docs(auto-qa): target 100 fixes and announce every landing 2026-07-31 03:59:57 -07:00
Peter Steinberger 27fa5a8950 docs(skill): require independent proof before issue closure 2026-07-31 03:36:55 -07:00
Peter Steinberger b252df8849 docs(skill): isolate autonomous issue sweep worktrees 2026-07-31 03:10:14 -07:00
Peter Steinberger 6fbe39eed1 chore(skills): add autonomous issue sweep workflow 2026-07-31 02:44:12 -07:00
Peter Steinberger 57c18b3ab3 docs(auto-qa): require clean root-cause refactors 2026-07-31 02:43:39 -07:00
Patrick Erichsen 0a9bb046d6 feat: add OpenClaw TUI prototype skill (#116583)
* feat: add OpenClaw TUI prototype skill

* fix: harden TUI prototype tmux launcher

* fix: size TUI grids after terminal attach

* fix: preserve equal TUI pane dimensions

* fix: make TUI grid refresh transactional
2026-07-30 17:27:58 -07:00
Dallin Romney bf8da2537c improve(ci): fail_fast option for release validation, off by default (#116352)
* ci: make release validation fail-fast optional

* ci: pass release QA fail-fast as boolean

* test: format release validation helper test
2026-07-30 18:53:41 +08:00
Dallin Romney f027d7bcf6 refactor(qa): make Matrix sharding execution-owned (#115589)
* refactor(qa): make sharding execution-owned

* test(qa): simplify transport selection coverage
2026-07-29 15:23:37 +08:00
Dallin Romney 9feb6ad161 refactor(qa): make scenario selection taxonomy-owned (#114055)
* refactor(qa): remove scenario execution profiles

* fix(qa): preserve smoke CI membership

* test(qa): drop redundant smoke pack order check

* refactor(qa): remove Matrix runner profiles

* refactor(qa): simplify Matrix CI orchestration

* refactor(qa): derive execution sets from taxonomy

* fix(qa): keep Matrix shard helper private

* refactor(qa): derive profile scenarios from taxonomy

* refactor(qa): reconcile taxonomy selection

* refactor(qa): use canonical profile planning

* refactor(qa): select canonical coverage owners

* fix(qa): keep profile selector internal

* refactor(qa): remove representative coverage owners
2026-07-28 22:23:41 +08:00
Peter Steinberger 6125edfb76 fix(pr): require ripgrep consistently (#114809) 2026-07-27 20:23:25 -04:00
Peter Steinberger 6bc06abbfb fix(release): exclude automation changelog credit (#114788)
* fix(release): exclude automation changelog credit

* fix(ci): repair release-note verifier gates
2026-07-27 19:24:47 -04:00
Peter Steinberger 45bad50e26 fix(qa): harden Mantis Telegram proof harness (#114429)
* fix(qa): harden Mantis Telegram proof harness

* fix(qa): require explicit Mantis dispatch
2026-07-27 04:33:06 -04:00
Peter Steinberger f6131a4fbf build(deps): remove npm shrinkwrap; mirror pnpm lock into transient package locks (#114006)
* build(deps): remove npm shrinkwrap; mirror pnpm lock into transient package locks

npm 12 removed shrinkwrap (command + tarball/root loading). Delete all 82
committed npm-shrinkwrap.json files and stop publishing lockfiles; keep
pnpm-lock.yaml as the single reviewed dependency boundary. The generator
becomes scripts/generate-npm-package-lock.mjs and feeds plugin bundling via
a transient package-lock.json + npm ci (works on npm 11 and 12). Tarball
validation treats the published 2026.7.2 beta train as a shrinkwrap
transition; self-update npm detection now uses install topology instead of
the shipped shrinkwrap.

* fix(deps): repair lint, deadcode, and test-type lanes for the npm 12 migration

- sort integrity comparisons with an explicit comparator (oxlint)
- keep resolveBunGlobalNodeModules module-local (knip unused-export gate)
- model npm pack --json as npm<=11 array / npm 12 name-keyed object
- default calver destructuring in the tarball test fixture
2026-07-26 01:29:55 -04:00
Peter Steinberger 5df966eb0b docs(auto-qa): harden campaign evidence and worker tracking (#113857) 2026-07-25 19:04:05 -07:00
Peter Steinberger 7edc234f6c improve(auto-qa): coordinate live root-cause testing campaigns (#113727)
* refactor(skills): require root-cause fixes in auto qa campaigns

* improve(auto-qa): coordinate current-main root-cause campaigns

---------

Co-authored-by: Peter Steinberger <steipete@golden-gate.local>
2026-07-25 07:41:42 -07:00