Peter Steinberger and GitHub
2bb6b870aa
fix: preserve Codex-bound conversation history across session rotation ( #112016 )
...
* fix: preserve Codex conversation bindings
* test: harden Codex live gateway stress
* chore: refresh plugin SDK API baseline
* test: tighten restart recovery fixtures
* test: complete restart recovery recorder fixture
* fix: keep plugin command authorization fail closed
* fix: restore private queue source imports
* fix: keep private SDK imports inside core
* fix: keep speech core on private SDK paths
* fix: stage private SDK exports for live tests
* fix: preserve plugin-bound gateway history
* fix: block transcript writes after binding races
* test: complete live stage helper contracts
* test: align binding mocks with current types
* fix: preserve compiler OOM diagnostics
* chore: move release notes to PR context
2026-07-20 19:42:56 -07:00
Peter Steinberger and GitHub
3564c1c795
fix(test): bound Matrix test process memory ( #111607 )
...
* test: bound Matrix test process memory
* test: align Matrix runner mock contract
2026-07-19 20:04:14 -07:00
Peter Steinberger and GitHub
50114c5163
fix(test): recognize CI env aliases ( #111521 )
2026-07-19 12:44:18 -07:00
Peter Steinberger and GitHub
c7e7ac2728
refactor: remove expired plugin compatibility surfaces ( #111451 )
...
* docs(secrets): remove retired web credential paths
* refactor(web): remove retired provider compatibility paths
* refactor(providers): delete retired compatibility routes
* refactor(secrets): remove retired credential aliases
* refactor(plugin-sdk): delete retired compatibility surfaces
* docs(plugin-sdk): remove retired migration guidance
* chore(plugin-sdk): refresh rebased surface budgets
* chore(plugin-sdk): refresh API removal baseline
* refactor(compat): migrate retired internal callers
* chore(plugin-sdk): refresh current-main baselines
* test(config): migrate plugin-owned secret assertions
* test(gateway): narrow plugin secret refs
* fix(plugin-sdk): preserve private boundary type identity
* chore(compat): remove stale sweep references
* chore(lint): lower max-lines budget
* refactor(secrets): remove unused web helper
* build(plugin-sdk): drop removed compat entries
* chore(plugin-sdk): refresh rebased API baseline
* chore(plugin-sdk): use Linux API baseline hash
* fix(plugin-sdk): preserve private bundled build entries
* fix(plugin-sdk): package private runtime facades
* fix(plugins): preserve external credential contracts
2026-07-19 11:04:48 -07:00
Peter Steinberger and GitHub
87fbc19fe3
fix: complete lint toolchain reuse in worktrees ( #111467 )
...
* fix(scripts): complete worktree lint toolchain
* fix(scripts): prepare complete lint pipeline
2026-07-19 08:58:43 -07:00
Peter Steinberger and GitHub
ca3a1873a6
fix(test): make broad shard execution deterministic ( #111416 )
...
* fix(test): harden broad shard execution
* test: allow broad-profile contention
* style(telegram): remove redundant chat id cast
* style(test): preserve setup test spacing
2026-07-19 08:39:16 -07:00
Peter Steinberger and GitHub
1f507162ee
fix(ci): validate sticky importer restores ( #111444 )
2026-07-19 07:57:46 -07:00
Peter Steinberger and GitHub
be831088e9
fix: local lint works in dependency-less worktrees ( #111393 )
...
* fix(scripts): resolve worktree oxlint toolchain
* fix(scripts): declare worktree tool resolver
2026-07-19 06:23:36 -07:00
Mason Huang and GitHub
c26d3cfbd0
fix(ci): skip Periphery scans for unrelated PR changes ( #107991 )
...
* fix(ci): scope Periphery to PR merge changes
* test(ci): align Periphery changed-test routing
2026-07-19 16:52:44 +08:00
Peter Steinberger and GitHub
28ce6b8116
fix(macos): accept current native state schema ( #111032 )
2026-07-18 19:58:37 -07:00
Peter Steinberger and GitHub
0135c6bf89
test: cover Codex version contracts on dependency bumps ( #110958 )
2026-07-18 22:09:50 +01:00
Shakker and Shakker
643476f24d
fix: derive generated asset watch exclusions
2026-07-18 06:42:27 +01:00
Shakker and Shakker
b118e9e913
fix: preserve generated asset mtimes
2026-07-18 06:42:27 +01:00
Peter Steinberger and GitHub
700a089d3b
ci(release): tolerate historical script contracts ( #110365 )
...
* ci(release): tolerate historical script contracts
* ci: escape stalled macOS retry capacity
* ci: freeze exact release-gate merge snapshot
2026-07-18 06:31:47 +01:00
Dallin Romney and GitHub
a9dc393f7e
test(qa): prove Codex auth product migration ( #109291 )
2026-07-17 16:10:23 -07:00
Peter Steinberger and GitHub
241143262a
fix(ci): script-only changes cold-start every Node job ( #110158 )
...
* fix(ci): keep sticky deps warm across script edits
* fix(ci): register dependency fingerprint entrypoint
* fix(ci): distinguish missing fingerprint inputs
* fix(ci): invalidate delegated workspace scripts
* fix(ci): harden cold install recovery
* fix(docs): escape release gate placeholder
* fix(ci): reject unaudited dependency hooks
2026-07-17 23:05:16 +01:00
Peter Steinberger and GitHub
6ac15970a7
feat(onboarding): unified empty-state with provider icons, websites, and recommended installs ( #109681 )
...
* feat(onboarding): unify setup recommendations
* fix(control-ui): proxy model setup icons
* fix(onboarding): refresh landing artifacts
* chore(ui): sync translated i18n catalogs
* chore(ui): keep generated locale artifacts on the refresh workflow
2026-07-17 01:01:06 -07:00
Peter Steinberger and GitHub
6b6bf3a34b
fix(ci): repair Mantis desktop scenario dispatch ( #109505 )
2026-07-16 18:50:57 -07:00
Peter Steinberger and GitHub
067635cb51
fix(ui): prevent generated locale rebase conflicts ( #109393 )
...
* ci(ui): make locale refresh bot-owned
* test(ui): keep locale gate coverage scoped
* fix(ci): preserve generated PR merge policy
* fix(ci): wait for generated PR head convergence
* fix(ci): retry transient guard API failures
* fix(ci): enforce locale isolation across CI events
* fix(ci): harden generated PR publication
* fix(ci): validate release gate merge tree
* fix(ci): allow trusted main locale output
2026-07-16 18:48:20 -07:00
Peter Steinberger and GitHub
85d375c1b2
chore: add live tool-surface benchmark ( #109374 )
...
* test(agents): add tool-surface live benchmark
* chore(agents): narrow live benchmark exports
* fix(agents): pin live bench models
2026-07-16 17:20:47 -07:00
Shakker and Shakker
107820b2bd
fix: prevent generated asset watch loops
2026-07-16 22:48:03 +01:00
Peter Steinberger and GitHub
ce919593bf
fix(ui): unblock rebases with generated i18n conflicts ( #109279 )
...
* fix(ui): automate i18n conflict resolution
* fix(ui): preserve i18n cache merge intent
* fix(ui): restrict resolver to generated locales
* fix(ui): prune stale locales before baseline
* fix(ui): handle removed locale conflicts
2026-07-16 12:52:28 -07:00
Peter Steinberger and GitHub
05dd921016
fix: shard OpenAI transport stream tests ( #109181 )
...
* test(agents): shard OpenAI transport stream suites
* chore(lint): transfer transport test baselines
2026-07-16 09:43:07 -07:00
Peter Steinberger and GitHub
46c3dba537
chore: gate releases on Codex progress follow-through ( #108828 )
...
* test(release): gate Codex progress follow-through
* test(release): register Codex follow-through entry
* test(release): harden Codex follow-through proof
* test(release): preserve legacy Codex follow-through proof
2026-07-16 09:01:00 -07:00
Peter Steinberger
89a16c93b5
fix(ci): give vitest no-output retries the full watchdog window
...
Shards that pin a short no-output timeout (agents-core stripes) die fast
on the known warm-cache stall, but a cold Vitest module cache makes the
same imports legitimately silent for minutes - the in-job retry then
re-dies at the short limit without running a single test (observed 4x
on agents-core-runner-cli-2 today). Raise the retry attempt's window to
the 300s watchdog floor while keeping the fast first kill.
2026-07-16 16:42:01 +01:00
0960d07d8e
ci: gate PR edit automation by changed field ( #95010 )
...
* ci: gate PR edit automation by changed field
* ci: include title edits in ClawSweeper dispatch gate
* ci: refine PR edit automation gates
Co-authored-by: Sash Zats <sash@zats.io >
* test(ci): require boolean workflow matcher
Co-authored-by: Sash Zats <sash@zats.io >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 00:42:14 -07:00
Peter Steinberger and GitHub
bae9752c5a
refactor(deadcode): enforce repository hard zero ( #108641 )
2026-07-15 22:40:00 -07:00
Peter Steinberger and GitHub
6252f9b1f7
improve(ci): speed warm Node shards with sticky bind mount ( #108386 )
...
* perf(ci): bind sticky dependency disk into test shards
* chore(ci): restore workflow guard coverage
* perf(ci): skip pnpm install on exact sticky hits
* fix(ci): require stock layout for sticky dependencies
* perf(ci): bypass pnpm for test shard launches
* fix(ci): declare direct shard runner command
* fix(ci): bypass pnpm in warm shard builds
* fix(ci): invalidate sticky deps on pnpm config
* ci: document sticky failure guard
2026-07-15 15:41:24 -07:00
Peter Steinberger and GitHub
28d30e9dae
ci: stabilize release validation tests ( #108420 )
...
* test(codex): remove turn-watch timing race
* ci: pin workflow sanity shellcheck
* ci: run workflow sanity on blacksmith
* ci: serialize workflow sanity lint
* ci: bound workflow lint stalls
* ci: cap actionlint process fanout
* ci: report stalled workflow shellcheck
* ci: stabilize release validation checks
* ci: restore release workflow shellcheck
* test: preserve codex turn watch reset proof
2026-07-15 13:22:31 -07:00
Peter Steinberger and GitHub
a748634aa9
test: isolate stateful unit-fast tests ( #108334 )
2026-07-15 07:14:35 -07:00
Peter Steinberger and GitHub
86085563be
test(ci): isolate flaky shared-worker suites ( #107780 )
...
* test(ci): isolate flaky shared-worker suites
* test(ci): route isolated agent targets
2026-07-14 15:00:58 -07:00
Peter Steinberger
a6a0716486
feat(setup): rename Crestodian to OpenClaw system agent
...
User-facing name is now OpenClaw (the system speaks); internal code name is
system-agent. Gateway methods crestodian.* -> openclaw.chat/openclaw.setup.*,
agent tool -> openclaw, reserved agent ids openclaw + retired crestodian.
openclaw setup routes: onboarding flags -> onboard, -m/--yes -> system agent,
bare configured interactive -> OpenClaw chat, unconfigured -> onboarding.
Hidden crestodian CLI and /crestodian TUI aliases kept; docs moved to
docs/cli/openclaw.md with redirect stub. macOS/Android strings in lockstep.
Refs #107237
2026-07-14 11:03:02 -07:00
Peter Steinberger and GitHub
f81f9d8570
chore: enforce max-lines suppression ratchet ( #107315 )
...
* ci: enforce max-lines suppression ratchet
* chore: prune stale max-lines suppression
* fix: close max-lines ratchet enforcement gaps
* fix: harden max-lines ratchet checks
* fix(ci): satisfy max-lines ratchet checks
* style: format max-lines declarations
* fix(ci): match oxlint suppression grammar
* test: isolate max-lines git fixtures
* chore: prune resolved max-lines debt
* test: skip newline path fixture on Windows
* fix: harden max-lines suppression ratchet
* chore: refresh max-lines baseline
* fix: close max-lines ratchet bypasses
* fix: derive ratchet base from PR merge tree
* fix: support older Git in staged ratchet
* fix: align max-lines declarations and baseline
* chore: refresh max-lines baseline for current main
* fix: exclude generated wizard locales from max-lines
* chore: prune resolved max-lines debt
2026-07-14 09:27:02 -07:00
Peter Steinberger and GitHub
69a578034f
test: isolate provider auth parity suite ( #107167 )
2026-07-14 00:16:49 -07:00
Peter Steinberger and GitHub
07284af748
test: omit live-only tooling leaf shards ( #107088 )
2026-07-13 20:56:14 -07:00
Peter Steinberger and GitHub
70833dab7f
ci: scope PR Node tests to changed targets ( #106633 )
...
* ci: scope PR Node tests to changed targets
* ci: bound targeted Node test plans
* test: cover changed path manifest input
* fix(ui): preserve model providers lazy boundary
* ci: cover public SDK re-export consumers
* ci: reject unresolved changed test targets
* ci: cover public SDK wrapper imports
* ci: preserve global checks in targeted plans
* docs(ci): clarify targeted boundary coverage
* test(plugins): declare computed runtime dependencies
2026-07-13 15:26:02 -07:00
Peter Steinberger and GitHub
418dd85e66
improve: speed up focused test execution ( #106307 )
...
* test: speed up focused test execution
* style: format vitest config test
* test: preserve targeted watch routing
2026-07-13 04:38:05 -07:00
Peter Steinberger and GitHub
4dd839c462
refactor(release): split cross-os checks ( #106309 )
2026-07-13 04:01:40 -07:00
Peter Steinberger and GitHub
e01d1e85f3
ci(swift): enforce shared OpenClawKit dead-code coverage ( #105770 )
...
* ci(swift): enforce shared kit dead-code coverage
* chore(i18n): sync native source inventory
* ci(swift): install pinned iOS scan tools
2026-07-12 17:35:47 -07:00
Peter Steinberger and GitHub
ef3a0cf1fc
fix(test): bound agents-core full-suite processes ( #105382 )
2026-07-12 14:11:08 +01:00
Vincent Koc and GitHub
a5b70c5abe
refactor(ci): centralize changed-path facts ( #104897 )
2026-07-12 10:26:32 +08:00
Peter Steinberger and GitHub
93e5b017bf
test(channels): trace-harness follow-ups — scenario names, fault vocabulary, lane sync guard ( #104653 )
2026-07-11 15:14:02 -07:00
Peter Steinberger and GitHub
6bd14d9129
test(channels): extend bundled artifact parity and add plugin-shape contract suite ( #104618 )
2026-07-11 11:44:34 -07:00
Peter Steinberger and GitHub
96f0983a85
fix(onboarding): skip setup for configured gateways and require inference first ( #102883 )
...
* fix(crestodian): keep onboarding RPCs restart-safe
* fix(profiles): isolate approval state migrations
* fix(crestodian): bypass configured gateway setup
* test(crestodian): type onboarding mocks
* fix(onboarding): require inference before Crestodian
* fix(onboarding): enforce verified inference handoff
* fix(macos): reset setup on gateway endpoint edits
* chore(i18n): refresh native source inventory
* fix(gateway): keep socket on request cancellation
* test(packaging): require workspace templates
* fix(onboarding): bind setup to verified inference
* fix(onboarding): align inference gate contracts
* fix(crestodian): classify concurrent policy rejection
* test(crestodian): expect registry restoration
* fix(onboarding): bind setup to configured gateways
* fix(codex): preserve startup phase deadlines
* test(crestodian): match fail-closed policy ordering
* test(onboarding): assert bound gateway handoff
* fix(codex): bind runtime resolution to spawn cwd
* test(crestodian): assert policy rejection order
* fix(cli): preserve gateway routing across restarts
* fix(macos): fail closed during gateway edits
* test(macos): cover gateway route generation races
* chore: keep release notes out of onboarding PR
* fix(ci): refresh onboarding generated checks
* style(swift): align gateway channel formatting
* fix(ci): refresh plugin SDK surface budgets
* fix(ci): resync native string inventory
* refactor(swift): split gateway channel support
* test(doctor): isolate plugin compatibility registry
* test(macos): isolate gateway onboarding fixtures
* test(macos): assert gateway lease health ordering
* fix(codex): reconcile computer-use startup changes
2026-07-11 10:25:14 -07:00
Peter Steinberger and GitHub
d8bf51b462
fix(discord): single-source thread-binding default placement and guard artifact parity ( #104342 )
...
* fix(discord): single-source thread-binding default placement and guard artifact parity
* fix(tests): load thread-binding parity artifacts via sanctioned contract test helpers
2026-07-11 02:50:53 -07:00
Peter Steinberger and GitHub
2e2366b6d3
chore(tooling): typecheck scripts/** with a dedicated tsgo lane ( #104348 )
...
* feat(tooling): add tsgo typecheck lane for scripts/**
* fix(scripts): burn down scripts type debt surfaced by the new lane
Typing-only except bugs the lane surfaced: gh-read timeout race,
Discord Headers spread dropping entries, undefined allowedHeadBranches
match, plugin-boundary matchAll crash. Deletes retired config keys from
fixtures/benches (prompt snapshots regenerated, config dump only) and
the orphaned non-runnable sync-moonshot-docs script. Adds full-surface
.d.mts declarations for existing .mjs boundaries.
2026-07-11 02:31:17 -07:00
Peter Steinberger and GitHub
8cd092620d
test: fix changed-run routing, dedupe gateway package lanes, repair force-rerun triggers ( #104287 )
...
* test: fix changed-run routing, dedupe gateway package lanes, repair force-rerun triggers
- route extensions/active-memory changed runs to their dedicated lane; add a
generic guard that every catch-all-excluded extension root resolves to a
dedicated config so future split lanes cannot silently skip changed tests
- exclude packages/gateway-client and packages/gateway-protocol from the unit
lane; explicit targets now route to the gateway-client lane (was double-run)
- generate forceRerunTriggers from the test/vitest directory and resolve all
entries absolute: Vitest matches triggers against absolute changed-file
paths, so the old hand-maintained relative list never matched at all
- replace deprecated envFile:false with envDir:false (Vitest 4.1.9 warning)
- give scripts/test-live.mjs stall detection teeth: kill the process group and
exit non-zero when OPENCLAW_VITEST_NO_OUTPUT_TIMEOUT_MS elapses quietly
- consolidate the live-docker shell target list into changed-lanes.mjs so the
lane regex and check targets cannot drift; cover subagent-announce edits
- delete orphans: vitest.extension-clickclack.config.ts,
vitest.full-core-unit.config.ts, scripts/test-docker-all.sh,
scripts/test-live-acp-spawn-defaults-docker.sh
Closes #104231
* test: keep envDir literal so sharedVitestConfig satisfies Vite UserConfig
Vite 8 types envDir as string | false; the bare object literal widened false to
boolean and broke check:test-types at the defineConfig call sites.
2026-07-11 00:58:14 -07:00
Vincent Koc and GitHub
54cc90b1b1
fix(release): publish ClawHub bootstrap artifacts immutably ( #103809 )
...
* fix(release): harden ClawHub bootstrap
* fix(release): centralize publication artifact verification
* fix(release): harden publication artifact verification
* fix(release): lock ClawHub bootstrap toolchain
* test(release): assert locked ClawHub binary
* fix(release): pack with trusted ClawHub harness
* fix(release): bound beta verifier artifact reads
* fix(release): bind target and tooling identities
* fix(release): stabilize signed package ordering
* fix(release): bind ClawHub pretag proof
* fix(release): bind ClawHub OIDC readback
* fix(release): bind ClawHub OIDC readback
2026-07-10 13:33:20 -07:00
Vincent Koc and GitHub
69f8198ba3
fix(release): keep no-push Docker images validation-only ( #103891 )
...
* fix(release): make no-push Docker artifacts portable
* fix(release): keep no-push images validation-only
2026-07-10 12:02:57 -07:00
Peter Steinberger and GitHub
b91e117dcd
fix(ci): select full Kova performance reports ( #103863 )
2026-07-10 19:01:30 +01:00