Peter Steinberger
5f562e65f6
refactor: burn down export name collision baseline ( #121870 )
...
* refactor(sessions): distinguish persistence owners
* refactor(config): consolidate legacy record helper
* refactor(sessions): name sqlite number coercion
* chore(scripts): ratchet export collision baseline
2026-08-10 23:10:44 -07:00
Vincent Koc
65d13cb80b
fix(ci): retry fresh artifact metadata reads ( #121876 )
2026-08-11 14:01:31 +08:00
Peter Steinberger
36fbd869ed
refactor(agents): eliminate export name collisions ( #121768 )
...
* refactor(auth): consolidate profile helper owners
* refactor(agents): consolidate subagent registry reads
* refactor(agents): disambiguate runtime placement helpers
* refactor(agents): disambiguate helper exports
* chore(scripts): burn export collision debt
* test(agents): follow moved subagent read owner
2026-08-10 22:24:33 -07:00
Peter Steinberger
aba8f10bc3
fix(agents): stop reporting undelivered subagent results as delivered ( #121837 )
...
* fix(agents): record intentional non-delivery truthfully
* fix(agents): stop reporting sinkless cron completions as delivered
The inactive-cron guard runs before requester-agent dispatch. Its regression now asserts the recorded intentional non-outcome before verifying that queue, gateway, and message sends remain untouched.
* test(agents): migrate announce outcome fixtures
* chore: drop changelog edit per repo policy
2026-08-10 22:04:29 -07:00
Peter Steinberger
e4a6ded2d3
fix(release): scope iOS version checks to native releases ( #121863 )
2026-08-10 21:57:02 -07:00
Peter Steinberger
4b46a14a54
feat(apple): show live subagent activity in chat ( #121815 )
...
* feat(apple): show live subagent activity in chat
* chore(apple): refresh native localization inventory
2026-08-10 21:50:13 -07:00
Peter Steinberger
98b222ded8
feat(scripts): report aliasing re-exports ( #121849 )
2026-08-10 21:36:22 -07:00
Peter Steinberger
df3e111c91
fix(ci): run policy tests for watched source changes ( #121841 )
...
* fix(ci): route source policy tests by watched paths
* chore(ci): keep policy watch table module-private
2026-08-10 21:30:21 -07:00
Peter Steinberger
ee7fae8a90
fix(ui): native command settings no longer require Raw mode ( #121832 )
...
* fix(ui): render native command settings controls
Render boolean-or-auto command settings as safe On/Off/Auto controls instead of forcing Raw mode, while preserving typed config values and fail-closed handling for unsafe unions.
* fix(ui): preserve oneOf union exclusivity
2026-08-10 21:28:06 -07:00
Peter Steinberger
19ed7feee1
test(ci): rebalance compact Node shards ( #121834 )
...
* test(ci): rebalance compact node shards
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Peter Steinberger <steipete@gmail.com >
* test(ci): guard compact planner coverage
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Peter Steinberger <steipete@gmail.com >
* test(ci): drop obsolete shard isolation check
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Peter Steinberger <steipete@gmail.com >
* test(ci): stop freezing compact shard placement
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Peter Steinberger <steipete@gmail.com >
---------
Co-authored-by: Amp <amp@ampcode.com >
2026-08-11 04:18:34 +00:00
Josh Avant
73a9eed95b
refactor(audit): add canonical admitted-run context ( #120534 )
...
* feat(audit): carry canonical admitted execution context
* fix(agents): preserve admitted context across retries
* fix(worker): fence legacy launch dialect
* test(gateway): track approval temp dirs
* fix(plugin-sdk): preserve harness attempt compatibility
* fix: close delegated run authority at owner boundaries
* fix: internalize delegated authority validators
* refactor: split delegated authority proof surfaces
* refactor: centralize command admission identity
* test: claim runtime tool authority
* fix(gateway): keep lifecycle cleanup within static budgets
* fix(agents): revalidate harness policy authority
* fix(agents): fence awaited approval capability results
* test(copilot): supply required harness capability fixtures
* fix(agent): preserve scoped embedded run admission
* fix(agent): preserve keyless and worker authority
* test(agent): bind incomplete-turn authority
* docs: preserve execution authority invariants
* chore(plugin-sdk): regenerate API baseline
* fix(gateway): notify pending claim closure
* fix(gateway): revalidate delegated tool authority
* fix(plugin-sdk): keep source guard internal
* fix: close delegated authority races
* fix: revalidate delegated side effects
* fix: close harness authority projection gaps
* fix: align authority integration types
* fix: isolate settled harness finalization
* fix: fence recovery identity finalization
* fix: preserve committed session worktrees
* fix: preserve worker placement agent identity
* fix: fence active harness tool work
* fix(plugins): restore embedded run admission owner
* chore(plugin-sdk): compose integrated surface budgets
* fix(copilot): keep finalization attempt type internal
* fix(plugins): complete admission owner type imports
* test(harness): use settled finalization attempt shape
* fix(security): retain exact side-run and approval authority
* fix(security): preserve protected authority through terminal sweep
* fix(agents): follow moved recovery store owner
* fix(ci): align integrated authority owners with gates
* fix(plugins): distinguish embedded agent adapter export
* chore(plugin-sdk): regenerate API baseline after rolling integration
* refactor(gateway): keep session authority within owner budgets
* fix(gateway): keep session helpers private
* docs(plugin-sdk): name the V2 parameter subpath
* chore(integration): reconcile worker and SDK surfaces
* docs(plugin-sdk): require the V2 host API floor
* chore(plugin-sdk): regenerate after proxy-auth integration
2026-08-10 23:15:20 -05:00
Peter Steinberger
8c3c8a2ab0
feat(android): show live subagent activity in chat ( #121813 )
...
* feat(android): show live subagent activity
* chore(android): mark task event handled
* fix(android): localize activity diff chips
* fix(android): reconcile dropped task activity
2026-08-10 21:08:44 -07:00
Peter Steinberger
b5d5ec340f
feat(cloud-workers): add desktop apps and browser autonomy ( #121475 )
...
* feat(cloud-workers): add desktop apps and browser autonomy
provider-attested Browser/Terminal launchers, shared visible loopback CDP Browser tool, no MCP/cookies/generic command.
* feat(ui): add cloud desktop app launcher
* docs(gateway): document cloud desktop apps and browser autonomy
* perf(ui): trim desktop launcher startup copy
* refactor(ui): simplify desktop launch feedback
* perf(ui): reuse desktop app labels
* fix(ui): keep desktop launch failures actionable
* fix(crabbox): allow browser bootstrap to finish
* fix(cloud-workers): honor provider provision budgets
* fix(cloud-workers): persist browser screenshot receipts
* fix(cloud-workers): bound browser screenshot lifecycle
* fix(cloud-workers): avoid replaying desktop launches
* test(cloud-workers): isolate browser runtime integration
* refactor(cloud-workers): tighten desktop runtime boundaries
* test(cloud-workers): keep browser runtime mock synchronous
* fix(cloud-workers): break gateway type import cycle
* fix(ci): settle admitted setup sessions in tests
* build(plugin-sdk): refresh desktop app contract
* ci: refresh merge-tree validation
* build(plugin-sdk): regenerate desktop app baseline
* style(gateway): format merged method order test
2026-08-10 20:31:07 -07:00
Peter Steinberger
69220fc0d4
test(macos): remove body-only view probes ( #121820 )
...
* test(macos): remove body-only view probes
* test(macos): drop retired i18n wrapper contract
2026-08-10 20:26:56 -07:00
Peter Steinberger
ebfd3ba154
improve: cut CI critical path without more workers ( #121807 )
...
* test(ci): remove redundant builds from critical path
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Peter Steinberger <steipete@gmail.com >
* docs(ci): format runner table
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Peter Steinberger <steipete@gmail.com >
---------
Co-authored-by: Amp <amp@ampcode.com >
2026-08-10 20:21:20 -07:00
Vincent Koc
c87f77185d
fix(release): preserve frozen candidate identity ( #121786 )
...
* commit 'c3e3f276f2b520ffdf28e453eb464a6f4e50dfa0':
fix(release): preserve frozen candidate identity
2026-08-11 11:08:13 +08:00
Vincent Koc
c3e3f276f2
fix(release): preserve frozen candidate identity
2026-08-11 10:48:08 +08:00
Peter Steinberger
f5aba54437
refactor(agents): split Claude live sessions by concept ( #121566 )
...
* refactor(agents): split claude-live-session into concept modules
* refactor(agents): delete duplicated live-session helpers
* fix(agents): fence live-session close during pending spawn
* chore(lint): ratchet max-lines baseline after live-session split
* style(agents): satisfy lint on live-session split modules
* fix(agents): fence live session close state
* refactor(agents): extract Claude live turn timeouts
* fix(agents): preserve exec policy after Claude live split
* test(agents): complete Claude live policy session fixture
2026-08-10 19:39:16 -07:00
Peter Steinberger
fada067277
feat(browser): add zero-click Chrome extension bootstrap ( #121586 )
...
* feat(browser): add zero-click extension bootstrap
Pre-register deterministic path-derived extension IDs and install a strict native messaging host.
Keep the popup and options UI minimal while removing the obsolete copilot and page-share flows.
* fix(browser): satisfy native bootstrap CI guards
* test(browser): isolate native bootstrap Chrome roots
* test(browser): flush native bootstrap profile before status
* test(browser): seed Linux native bootstrap identity
* fix(browser): preserve native bootstrap upgrade safety
Allow immutable root-owned package inputs while keeping mutable state, manifests, and launchers user-owned. Preserve all retired copilot keys whenever active or unrecognized recovery custody remains.
* fix(browser): preserve pending copilot custody
Retired cleanup now removes copilot state only when the durable registry is exactly empty. Any session, archive, malformed value, future shape, or read failure preserves every retired key.
* fix(browser): guard native bootstrap upgrades
Fail closed while retired copilot custody remains and make discard durable across partial failures.
Require exact launcher-embedded origins and repair full launcher drift without accepting mismatched registrations.
* fix(browser): remove stale layout export
* chore(release): leave changelog to release flow
2026-08-10 19:31:13 -07:00
Peter Steinberger
d6f70a96cb
fix(plugins): native commands execute the selected plugin ( #121544 )
...
* fix(plugins): preserve selected command identity
* test(telegram): use scoped command registries
* test(telegram): isolate command runtime fixtures
* test(telegram): warm native command runtime
* refactor(plugins): keep command metadata private
* fix(plugins): accept synchronous command handlers
* fix(plugins): scope command drain bypass to live execution
* test(telegram): use scoped command registry fixtures
* test(telegram): isolate native menu runtime fixtures
* test(telegram): isolate login session store
* test(telegram): surface login flow failures
* test(telegram): preload native login module
* test(telegram): scope native command registries
* fix(plugins): complete command dispatch contracts
* fix(plugins): break command dispatch import cycles
* fix(plugins): stabilize command dispatch contracts
* fix(channels): keep plugin dispatch options internal
* fix(plugins): keep command dispatch carrier opaque
* test(channels): align delivery adapter fixtures
* test(delivery): align custody ownership coverage
* test(delivery): align latest queue reconciliation
* test(channels): drop obsolete delivery wrappers
* fix(plugins): rebind channel reload starts
* fix(plugins): scope command catalog reloads
* fix(ci): align current runtime contracts
* chore(plugin-sdk): refresh API baseline
2026-08-10 19:30:47 -07:00
Josh Avant
bdd35432dd
perf(checks): accelerate fresh changed gates ( #121805 )
2026-08-10 21:30:24 -05:00
Peter Steinberger
498433a58a
test(ui): remove output-root wrapper seam ( #121794 )
2026-08-10 19:04:03 -07:00
Peter Steinberger
ba58803997
fix(models): repair local model no-auth and overflow handling ( #121790 )
...
Preserve the internal null Authorization marker when resolving local no-auth provider headers, avoid classifying LM Studio prompt-template guidance as context overflow, and rebuild ai/llm-core package sources during pnpm dev/watch.
2026-08-10 18:52:00 -07:00
Patrick Erichsen
abb856ece4
fix(release): restore frozen beta validation ( #121791 )
...
Punchcard-Session: coral-summit-brook-8j
2026-08-10 18:45:42 -07:00
Peter Steinberger
dd2aedf08f
refactor: burn export name collision debt ( #121767 )
...
* refactor(tasks): disambiguate lifecycle helpers
* refactor(channels): clarify account and id helpers
* refactor(media): separate SDK facades from cores
* refactor(auto-reply): consolidate command helpers
* refactor(cli): disambiguate registration helpers
* refactor(gateway): clarify runtime and test helpers
* chore(scripts): burn resolved collision debt
* fix(refactor): update remaining core callers
* fix(refactor): update remaining UI callers
* chore(plugin-sdk): refresh API baseline
2026-08-10 18:17:13 -07:00
Peter Steinberger
32894a3ba5
feat: start sessions from registered projects ( #121465 )
...
* feat(gateway): add project registry sessions
* fix(gateway): authorize project branch discovery
* test(gateway): reuse worktree test imports
* fix(protocol): register projects schema owner
* fix(gateway): gate project paths by write scope
* feat(control-ui): register projects from folder browser
* refactor(gateway): extract session diff baseline preparation
* fix(gateway): honor admin scope in project listings
2026-08-10 17:56:12 -07:00
Peter Steinberger
96b0cf95ef
fix(gateway): restore restart preflight compatibility ( #121757 )
...
* fix(gateway): restore restart preflight compatibility
* ci(protocol): preserve restored method vintages
* chore: defer compatibility note to release
2026-08-10 16:43:27 -07:00
Peter Steinberger
a2dc90765c
test(bench): trim shared helper duplicates ( #121745 )
2026-08-10 16:34:59 -07:00
Vincent Koc
7e03fe3ba0
Merge commit '546bb29055b3e204b981dc27d4375c4d7679c7dd' into HEAD
...
* commit '546bb29055b3e204b981dc27d4375c4d7679c7dd':
fix(release): support frozen validation tooling
2026-08-11 07:34:47 +08:00
Vincent Koc
546bb29055
fix(release): support frozen validation tooling
2026-08-11 07:20:44 +08:00
Patrick Erichsen
c6b9be2646
fix(release): run plugin tooling against source checkout ( #121762 )
2026-08-10 16:16:33 -07:00
Peter Steinberger
1ced7441eb
refactor(agents): move announce, completion, recovery, and registry families into concept directories ( #121553 )
...
* refactor(agents): move announce family into subagents/announce/
* refactor(agents): move completion and main-session recovery families
* refactor(agents): move registry family into subagents/registry
* refactor(agents): update registry state type imports
* style(agents): format moved subagent imports
* test(agents): preserve isolated registry test routing
* fix(scripts): recognize relocated subagent announce seams
2026-08-10 16:06:39 -07:00
Peter Steinberger
a770218518
refactor: consolidate duplicate helpers ( #121431 )
...
* refactor(agents): consolidate session slug creation
* refactor(commands): consolidate config validation
* refactor(infra): consolidate stale pid termination
* refactor(tui): reuse canonical sleep helper
* chore(scripts): burn resolved entries from collision baseline
* fix(refactor): preserve cross-platform helper contracts
* fix(plugin-sdk): keep approval helper private
* chore(scripts): burn resolved wrapper shadowing entry
* chore(scripts): refresh wrapper shadowing baseline
* test(agents): target canonical session slug helper
* chore(plugin-sdk): refresh API baseline
2026-08-10 15:57:24 -07:00
Peter Steinberger
18e5b0e3e3
test(web): trim duplicate provider test surfaces ( #121727 )
2026-08-10 15:44:54 -07:00
Patrick Erichsen
105038e658
ci: mirror Docker release images to Vercel registry ( #120058 )
...
* ci: publish release images to Vercel registry
* ci: publish beta images to Vercel registry
* fix(ci): allow beta Vercel dispatch
* fix(ci): publish VCR-compatible image indexes
* fix(ci): allow VCR readiness propagation
* fix(ci): use Sandbox as VCR readiness proof
* fix(ci): promote clean VCR channel indexes
* fix(release): harden VCR publication
* fix(release): bind VCR publishing to verified inputs
* fix(test): follow script declaration migration
* fix(release): isolate VCR mirroring
* test(release): align VCR secret ownership
2026-08-10 14:45:05 -07:00
Ayaan Zaidi
9935ca3b30
fix(approvals): bind native requests to channel accounts ( #121673 )
...
Native approval delivery and resolution now stay bound to the originating or explicitly targeted channel account. Unbound requests fail closed across multiple eligible accounts; trusted reviewer-less SDK callers remain compatible.
Co-authored-by: Ayaan Zaidi <hi@obviy.us >
2026-08-11 01:42:41 +05:30
Peter Steinberger
810c3510ee
fix: reject invalid memory parents and trim test facades ( #121696 )
...
* test(scripts): trim dead testing facades
* test(memory): align non-directory path contract
* test(discord): drop stale progress callback ids
* fix: repair current main validation failures
* fix(gateway): remove redundant setup admission generic
* test(gateway): await setup admission settlement
2026-08-10 12:58:30 -07:00
Peter Steinberger
511db367fe
fix(lint): preserve release validation parse cause
2026-08-10 09:55:54 -07:00
Peter Steinberger
63776cf5a0
fix(mcp): honor Windows PATH key casing in doctor ( #121595 )
2026-08-10 09:55:41 -07:00
Peter Steinberger
a0ad38e71a
feat(docs-ci): validate docs config examples against the schema ( #121336 )
...
* feat(docs-ci): validate config examples against schema
* docs: teach canonical agent roster configuration
* docs: nest inline environment variables under vars
* docs: update canonical media model keys
* docs: remove retired config keys from examples
* fix(docs-ci): keep audit internals private
* feat(docs-ci): validate plugin-owned config examples
* fix(docs-ci): validate indented config fences
* fix(ci): route manifest changes through docs audit
* chore(docs): refresh generated config baselines
2026-08-10 07:57:56 -07:00
Peter Steinberger
ed39f6540f
fix(release): keep evidence reads on cached gh ( #121619 )
2026-08-10 07:40:55 -07:00
Vincent Koc
1f591bba56
fix(release): bound validation retries and soak
2026-08-10 22:31:32 +08:00
Peter Steinberger
3b3c540896
refactor: remove dead branches and test-only helpers ( #121345 )
...
* refactor: remove dead branches and test-only helpers
* fix: preserve codex cleanup error causes
* fix: preserve gateway error code compatibility
* chore: update plugin sdk api baseline
* docs: fix live cache runner path
2026-08-10 06:47:43 -07:00
Peter Steinberger
8d810d188b
refactor: split ClawHub infrastructure by responsibility ( #121565 )
...
* refactor(infra): split clawhub into concept modules
* refactor(plugins): move compat predicates to their owners
* chore(lint): ratchet baselines after clawhub split
2026-08-10 06:42:37 -07:00
Peter Steinberger
572fab0b5b
fix(auto-reply): handle uppercase file URLs when staging media ( #121521 )
2026-08-10 04:26:32 -07: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
Peter Steinberger
024caf1e51
fix(plugin-sdk): external plugins typecheck across SDK entrypoints ( #121512 )
...
* fix(plugin-sdk): dedupe declaration dependency types
Keep Zod declarations owned by the published dependency across partitioned SDK declaration builds, and compile an isolated external consumer that mixes the documented runtime and schema entrypoints.
* fix(plugin-sdk): narrow package type regression guard
Keep the cross-entrypoint assignment and exported-schema checks while excluding unrelated declaration-library diagnostics. Inline the temporary consumer and carry the current-main unused-import repair required for green CI.
2026-08-10 02:52:28 -07:00
Dallin Romney
0296785c5f
fix(ci): validate frozen extended-stable candidates ( #120986 )
...
* fix(ci): support frozen extended-stable validation
* fix(ci): avoid map spread in release config projection
* refactor(ci): use suite config mutation for frozen candidates
* fix(ci): keep frozen candidate config private
* refactor(qa): expose config mutation
* fix(qa): preserve config mutation in runtime pairs
2026-08-10 17:40:46 +08:00
Pavan Kumar Gondhi
c9d39979f2
fix(ci): read dependency guard state from trusted metadata [AI] ( #121505 )
...
* fix(ci): bind dependency guard state to head
* test(ci): isolate dependency guard state forgeries
2026-08-10 14:32:49 +05:30
Peter Steinberger
560d172ae7
chore(scripts): prevent new wrapper shadowing ( #121456 )
...
* chore(scripts): prevent wrapper shadowing
* chore(scripts): refresh wrapper baseline
2026-08-10 01:40:44 -07:00