Commit Graph

6334 Commits

Author SHA1 Message Date
Peter Steinberger
40b119f57a refactor(build): run generated formatter through oxfmt bin 2026-07-13 11:44:28 -07:00
Peter Steinberger
59003634ad refactor(cron): retire cron_run_logs; ledger-owned retention and cancellation
Stops the legacy run-log dual-write, auto-imports remaining rows and drops
the table at state-DB open (table-presence guard: self-heals downgrade
round-trips), keeps the newest 2000 terminal runs per job in the ledger,
retires cron.runLog config via doctor, and moves live-run cancellation to
src/cron behind the shared task control seam.

Part 2 of 2 for #106041.
2026-07-13 11:41:27 -07:00
Peter Steinberger
cdf4f2208b chore(deadcode): move resolveCronRunEndedAt baseline entry to event codec 2026-07-13 11:32:57 -07:00
Peter Steinberger
b1f765ae8b fix(cron): baseline transitional cron-ledger exports; drop dead migration re-export
check-dependencies (knip) flagged run-log read exports left unused after the
reader flip plus test-only ledger/migration exports. Baseline the genuine
test-only/transitional exports; remove the redundant state-migrations barrel
re-export (state-db imports the migration from the sibling module directly).
2026-07-13 11:32:57 -07:00
Peter Steinberger
b842be157a chore(cron): decompose oversized modules for the changed-file LOC ratchet
Extracts startup-run repair, timer outcome finalization, task record
normalization, legacy task-sidecar row codec, and state-schema helpers
into focused modules; exempts .generated.d.ts files from the ratchet
(policy gap: schema evolution regrows generated Kysely types).
2026-07-13 11:32:57 -07:00
Peter Steinberger
bfe2786957 refactor(ui): remove dead exports (#105979)
* refactor(ui): remove dead exports

* chore(deadcode): refresh export baseline

* refactor(gateway): privatize chat media fields
2026-07-13 11:32:00 -07:00
Peter Steinberger
db02a96c4c refactor(process): route bounded commands through Execa (#106495)
* refactor(process): centralize bounded command execution

* refactor(process): migrate core one-shot commands

* refactor(plugins): migrate one-shot commands

* fix(process): await Windows tree termination

* chore(plugin-sdk): refresh process runtime surface

* refactor(process): migrate remaining bounded commands

* refactor(process): normalize command result handling

* refactor(process): split execution responsibilities

* chore(plugin-sdk): refresh API baseline

* chore(process): remove release-owned changelog entry

* fix(process): narrow binary command input checks

* fix(process): cap sandbox command output

* fix(qa-lab): preserve exact node probe env

* chore(ci): refresh dead export baseline

* fix(process): preserve force-kill command deadlines

* fix(process): avoid post-exit timeout reclassification

* test(process): update scp staging wrapper mock

* test(process): update remaining wrapper mocks

* refactor(qa-lab): preserve Execa tar execution
2026-07-13 11:07:35 -07:00
Peter Steinberger
4c7efd2673 refactor(agents): privatize session state types (#106672)
* refactor(agents): privatize session state types

* chore(deadcode): shrink agents export baseline
2026-07-13 11:04:21 -07:00
Peter Steinberger
e30cc79b81 ci: remove redundant extension oxlint lanes 2026-07-13 11:02:51 -07:00
Vincent Koc
ee2efed993 refactor(commands): remove duplicate session target export (#106620) 2026-07-14 01:49:36 +08:00
Peter Steinberger
9544937b22 refactor(auto-reply): trim test facade exports (#106639) 2026-07-13 10:43:41 -07:00
Peter Steinberger
4f2553be5f fix(test): bound extension test inventory query (#106632) 2026-07-13 10:30:27 -07:00
Peter Steinberger
2b9991c748 refactor(agents): privatize native hook relay internals (#106634)
* refactor(agents): privatize native hook relay internals

* chore(ci): shrink dead-export baseline
2026-07-13 10:27:34 -07:00
Peter Steinberger
8d9950d8ae refactor(agents): split embedded runner orchestration (#106552)
* refactor(agents): split embedded runner orchestration

* test(agents): fix skill startup fixture type

* style(agents): format runner imports

* refactor(agents): remove stale attempt import

* refactor(agents): reuse attempt result slot type

* fix(test): avoid truncating extension test inventory
2026-07-13 10:22:38 -07:00
Peter Steinberger
edbcf11451 refactor(auto-reply): privatize reply helpers (#106600) 2026-07-13 10:12:17 -07:00
Peter Steinberger
8814e75cd6 perf(ci): start long node shards first (#106522) 2026-07-13 09:56:30 -07:00
Peter Steinberger
5d12f6bfb5 refactor(policy): remove remaining unused exports (#106591)
* refactor(policy): remove unused exports

* chore(deadcode): regenerate policy export baseline
2026-07-13 09:47:31 -07:00
Vincent Koc
1708faf85b refactor(cli): remove obsolete gateway call options export (#106549) 2026-07-14 00:38:14 +08:00
Peter Steinberger
dd4f36690a refactor: replace remaining worker pools with p-map (#106489)
* refactor: replace remaining worker pools with p-map

* test(tui): retry session rollover until accepted
2026-07-13 09:37:55 -07:00
Peter Steinberger
a13796bcfd fix(docs-i18n): recognize isolated indented fences 2026-07-13 12:26:18 -04:00
Peter Steinberger
8867a9da0b refactor(extensions): remove unused Discord and QA Lab exports (#106286)
* refactor(extensions): remove unused major-plugin exports

* refactor(qa-lab): preserve existing test seams

* chore(deadcode): regenerate export baseline

* refactor(qa-lab): share evidence environment resolver
2026-07-13 09:25:45 -07:00
Vincent Koc
9619585e85 refactor(cli): collapse npm pinning helpers (#106499) 2026-07-14 00:12:02 +08:00
Peter Steinberger
f0fe068da7 refactor(agents): trim MCP runtime exports (#106520)
Related: #105595
2026-07-13 08:49:16 -07:00
Peter Steinberger
9f546e2645 refactor: clear remaining plugin dead-export baseline (#106488)
* refactor: clear remaining plugin dead-export baseline

* refactor: expose plugin runtime type consumers to knip
2026-07-13 08:26:12 -07:00
Peter Steinberger
11f6247618 refactor(commands): privatize doctor helpers (#106478) 2026-07-13 08:16:29 -07:00
Peter Steinberger
2c8306a5be improve(android): make gateway QR pairing prominent in Settings
Mirror the iOS gateway settings ordering: nav-bar QR scan action,
Scan QR to Pair hero while unpaired, one Add Gateway panel (scan,
setup code + connect, discovered gateways with per-row connect),
paired gateways below, manual host/credential plumbing at the bottom.
Add facts rows (Discovered, Default Agent, Agents, Instance ID) and a
Diagnose action, plus a deterministic 'gateway' screenshot scene.

Closes #106186
2026-07-13 08:02:56 -07:00
Peter Steinberger
d323e421c8 refactor(agents): trim fast-mode re-exports (#106463) 2026-07-13 08:00:58 -07:00
Peter Steinberger
ab7f6dd3c9 refactor(deadcode): trim policy private exports (#106290) 2026-07-13 07:58:12 -07:00
Peter Steinberger
2ab8cbc66b refactor(config): simplify channel schema loading (#106462) 2026-07-13 07:57:23 -07:00
Vincent Koc
69554995c1 refactor(logging): privatize timezone validation helper (#106459) 2026-07-13 22:55:27 +08:00
Peter Steinberger
96522b9fce refactor(commands): trim internal helper exports (#106455) 2026-07-13 07:49:09 -07:00
Peter Steinberger
f167089d61 feat(nodes): continue Claude catalog sessions on paired nodes via streaming CLI agent runs (#105833)
* feat(gateway): stream node.invoke progress with idle timeouts and cancel

* feat(node-host): opt-in approval-gated claude cli agent run command

* feat(agents): run node-placed claude-cli turns through streaming node invoke

* feat(anthropic): continue claude catalog sessions on advertising nodes

* docs(nodes): document paired-node claude agent runs and continuation

* chore(plugin-sdk): admit spawn-invocation helper into surface budget

* fix(nodes): harden streaming invoke and node run policy from review findings

* test(node-host): prove multi-token tool-policy argv fails closed

* fix(nodes): allowlist cancel event for apps and break node-host type cycle

* chore(protocol): regenerate Swift gateway models for node invoke progress

* chore(node-host): drop test-only export surface flagged by deadcode ratchet

* style(node-host): merge invoke-types imports

* refactor(nodes): split node agent run modules to satisfy the LOC ratchet

* chore(protocol): regenerate android gateway models and sync export baseline

* chore(plugin-sdk): admit spawn-invocation helper and inherited deprecated drift into surface budget

* chore(plugin-sdk): tolerate inherited agent-core deprecated export

* fix(anthropic): drop node param parser orphaned by upstream catalog split

* ci: sync unused-export baseline with healed main

* test(agents): adopt renamed cli backend prepare helper

* style(node-host): format claude run spawn invocation

* ci: retrigger checks

* chore(plugin-sdk): pin surface budgets to healed-base counts

* fix(protocol): restore untyped lazy validators after upstream style change
2026-07-13 07:39:22 -07:00
Vincent Koc
1b43d71440 refactor(channels): privatize approval channel list (#106447) 2026-07-13 22:35:26 +08:00
Peter Steinberger
0e96fc7e10 refactor(agents): trim bootstrap test exports (#106427)
* refactor(agents): trim bootstrap test exports

* test(agents): isolate bootstrap cache cases
2026-07-13 07:24:33 -07:00
Peter Steinberger
458746e1c2 chore(ci): enforce changed-file TypeScript LOC ratchet (#106387)
* ci: enforce changed-file TypeScript LOC ratchet

* ci: derive release-gate LOC base from PR

* test(ci): exclude repository test helpers from LOC ratchet

* ci: validate LOC ratchet on PR merge tree

* style: format release maintainer skill

* ci: run LOC ratchet for fast-only changes

* fix(ci): harden LOC ratchet comparisons

* fix(ci): cover native TypeScript in LOC ratchet

* fix(ci): compare LOC against tested merge tree

* test(ci): cover LOC manifest routing
2026-07-13 07:20:32 -07:00
Vincent Koc
60e8d4f021 refactor(queue): remove dead summary reset (#106440) 2026-07-13 22:14:37 +08:00
Vincent Koc
c45553089a refactor(slack): trim private reply exports (#106431) 2026-07-13 21:53:34 +08:00
Peter Steinberger
a965d28e04 refactor(cli): trim internal command exports (#106426) 2026-07-13 06:47:02 -07:00
Peter Steinberger
b76a7f453b refactor(auto-reply): trim internal export surface (#106409)
* refactor(auto-reply): trim internal export surface

* chore(deadcode): update auto-reply export baseline
2026-07-13 06:17:20 -07:00
Peter Steinberger
2a7132a43f refactor(agents): trim exec approval exports (#106401) 2026-07-13 06:03:41 -07:00
Vincent Koc
194ed5d34c refactor(acpx): privatize internal helpers (#106394) 2026-07-13 21:01:52 +08:00
Peter Steinberger
df3fe6a4f2 feat(worktrees): configurable cleanup limits (max count, max total size) with Settings UI (#106224)
Config surface worktrees.cleanup.{maxCount,maxTotalSizeGb} (0/unset disables),
enforced by hourly gc, worktrees.gc RPC, and openclaw worktrees gc: least
recently active session/Workboard worktrees are snapshotted and removed until
count and total size fit. Manual worktrees, live locks, run leases, and active
session owners are never limit-evicted. Settings -> Worktrees gains a Cleanup
section with debounced, quota-aware stepper controls. Closes #106213.
2026-07-13 06:00:33 -07:00
Peter Steinberger
370b5150c2 fix(docs-i18n): preserve nested list prefixes 2026-07-13 08:52:13 -04:00
Peter Steinberger
26312fd0b0 refactor: remove gateway and channel dead exports (#106038)
* refactor: remove gateway and channel dead exports

* style: format config reload test

* refactor: remove newly dead gateway exports

* test: preserve approval audience coverage

* refactor: preserve gateway contracts while pruning exports

* test: retain gateway regression coverage

* test: restore gateway policy coverage

* test: close dead-export CI gaps

* fix: reconcile dead exports with latest main

* refactor: remove newly dead gateway runner export

* test: remove private worker verifier coverage

* test: preserve weak secret docs coverage

* fix: avoid gateway health import cycle

* fix: preserve node pairing type contract

* style: format talk relay test

* fix: preserve gateway protocol generation contract

* chore: refresh dead export baseline

* fix: preserve loaded target compatibility exports

* fix: preserve plugin SDK declaration resolution

* chore: refresh dead export baseline

* chore: refresh dead export baseline

* test(gateway): derive private worker service options
2026-07-13 05:47:05 -07:00
Peter Steinberger
5ca0e634bc fix(ios): connect iPhone and Watch to protocol v3 gateways (#106294)
* fix(ios): support gateway protocol v3

* chore(i18n): refresh native source metadata

* fix(watchos): keep direct transport on protocol v4

* chore(i18n): refresh Watch source metadata
2026-07-13 05:44:49 -07:00
Vincent Koc
9f3d3b5672 refactor(oc-path): privatize internal types (#106317) 2026-07-13 20:37:08 +08:00
Peter Steinberger
253f4a33e0 refactor(agents): trim exec runtime exports (#106358) 2026-07-13 05:32:23 -07:00
Peter Steinberger
35fb5ee81a fix(ci): sort Control UI assets explicitly (#106377) 2026-07-13 05:20:27 -07:00
Peter Steinberger
8aab4ff94d refactor(state): split migration modules (#106356)
* refactor(state): split migration modules

* fix(state): relocate migration guard baselines
2026-07-13 05:13:42 -07:00
Peter Steinberger
200103a72b fix(ci): remove chat test export debt 2026-07-13 13:11:35 +01:00