Dallin Romney
93ac97511c
ci: validate gateway candidates against Windows releases and main
2026-08-12 00:59:48 +07:00
Peter Steinberger
ebb2770000
refactor: eliminate export name collisions ( #122084 )
...
* refactor: eliminate export name collisions
* chore(scripts): burn resolved collision baselines
* refactor: narrow legacy session load options
* chore: refresh SDK and session debt baselines
* refactor: adopt upstream secrets collision fix
* test(plugin-sdk): mock renamed session store core
* fix(scripts): track renamed session accessor core
2026-08-11 10:41:50 -07:00
Vincent Koc
1fb715853c
fix(qa): resolve Docker harness script entrypoints ( #121548 )
...
Punchcard-Session: amber-workshop-workshop-36
2026-08-12 01:23:20 +08:00
Peter Steinberger
cad77fb39c
refactor: consolidate remaining coercion helpers ( #122020 )
2026-08-11 10:22:01 -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
Vincent Koc
8d3f3377da
fix(ci): make Control UI artifact validation consistent ( #122086 )
2026-08-12 00:11:22 +08: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
afc644464d
fix(ci): bound hosted Android build memory ( #122088 )
2026-08-11 23:57:22 +08:00
Peter Steinberger
d1452fb5d1
refactor(plugin-sdk): split API baseline by entrypoint ( #122082 )
2026-08-11 08:54:42 -07:00
Peter Steinberger
db73b59c04
refactor: burn wrapper shadowing baseline entries ( #122040 )
...
* refactor: burn wrapper shadowing entries
* chore: refresh wrapper shadowing baselines
* test: update secrets runtime state mocks
* fix(ci): absorb Control UI build identity variance
2026-08-11 08:24:03 -07:00
Vincent Koc
6472d22a77
fix(ci): budget expanded survivor groups ( #122058 )
2026-08-11 22:44:21 +08:00
Peter Steinberger
8dace97c2e
perf(test): cut workflow guard overhead ( #122038 )
...
Co-authored-by: Amp <amp@ampcode.com >
2026-08-11 06:29:08 -07:00
Peter Steinberger
686294f9f8
test(sqlite): right-size reliability crash payloads ( #122016 )
...
* test(sqlite): right-size reliability crash payloads
* test(agents): replace hanging provider error integration
---------
Co-authored-by: Amp <amp@ampcode.com >
2026-08-11 05:26:07 -07:00
Peter Steinberger
2cc11aff38
test(scripts): streamline Crabbox wrapper fakes ( #122007 )
...
Co-authored-by: Amp <amp@ampcode.com >
2026-08-11 04:33:11 -07:00
Peter Steinberger
992126e382
refactor(sessions): drop the Sqlite infix from session-accessor exports ( #121536 )
...
* refactor(sessions): drop the Sqlite infix from session-accessor exports
The storage-neutral seam completed its file->SQLite swap on 2026-07-27;
the Sqlite-infixed export names and their X-as-Y rename blocks were the
fossil of that migration, giving every accessor operation two greppable
names. Rename ~148 exports to their canonical names at the definition
sites, delete the message-cut facade (its conflict->failed mask had one
consumer, which already handles conflict), collapse the remaining pure
delegates, and keep honest SQLite-mechanics names (scope resolution,
canonical repair, in-transaction primitives, storage-row types). The main
barrel's exported surface is byte-identical. Net -203 production LOC.
Part 2 of the session-accessor dual-layer collapse (part 1: #121316 ).
* fix: repair main-breaking lint/type/test failures blocking PR CI
Three breakages landed on main that push CI's changed-scope never runs:
a caught-error cause missing in the release-validation script and two
type errors in the package-acceptance test (direct commit 1f591bba56 ),
and a memory-host regression where fs-safe 0.5.4 (#121508 ) started
throwing FsSafeError("not-file") for extra-path reads whose parent chain
hits a regular file, breaking the missing-file empty-text contract that
rejection unchanged.
Item 4 repairs managed-image action E2E narrowing from bad30d5a74 (#77017 ).
Item 5's chat-message mock repair was superseded upstream by 750d0dcd9e , whose broader fetch typing and explicit download capture preserve the same contract.
Item 6 restores #121258 's cursor token contract after #77017 hard-coded pointer.
Item 7's managed-image thumbnail-path repair was superseded upstream by 750d0dcd9e , which preserves the same contract in main's reorganized URL structure.
Item 8 records #121600 's explicit command-bearing lifecycle classification.
Item 9's cron assertion repair was superseded upstream by 3cd034f7a8 , whose exact diagnostic rewrite includes the same redacted alert contract.
Item 10 forwards fs-safe 0.5.4 bigint lstat options through the snapshot mock.
Item 11 refreshes release-matrix test ownership after 1f591bba56 .
Item 12 awaits f3e1efead48's setup-admission settlement in direct session tests.
Item 13's media FileStore-key repair was superseded upstream by cf432ec871 , which fixes the same Windows root cause at the owner boundary.
Item 14 regenerates Swift approval reviewer fields added by 9935ca3b30 .
2026-08-11 11:13:29 +00:00
Peter Steinberger
26d0158e50
test(packaging): speed tarball integrity checks ( #121999 )
...
Co-authored-by: Amp <amp@ampcode.com >
2026-08-11 03:56:38 -07:00
Peter Steinberger
2731dc24e5
fix(plugin-sdk): keep inbound reply shim through next SDK major ( #121922 )
...
* fix(plugin-sdk): honor major-gated reply shim retirement
* fix(plugin-sdk): preserve compat code literals
* chore(plugin-sdk): refresh compatibility API baseline
2026-08-11 03:18:07 -07:00
thomas.szbay
ecc6d5a9fe
fix(e2e): download non-root installer before execution
...
Download the non-root Docker smoke installer before executing it.
- preserve the existing 30-second connection and 300-second transfer limits
- clean up the temporary installer on success or failure
- prove failed downloads cannot execute partial installer content
Co-authored-by: thomas.szbay <xydigit-zt@users.noreply.github.com >
Punchcard-Session: golden-lantern-meadow-0x
2026-08-11 18:12:52 +08:00
wangmiao0668000666
c719cbbfe9
fix(e2e): preserve Unicode in Telegram proof tails ( #109940 )
...
Punchcard-Session: ember-brook-workshop-qc
Co-authored-by: wangmiao0668000666 <290215524+wangmiao0668000666@users.noreply.github.com >
2026-08-11 18:09:29 +08:00
Peter Steinberger
db33736137
test(tooling): decouple MinGit curl assertion ( #121977 )
2026-08-11 03:07:13 -07:00
joshavant
cde0af4c60
test(auto-reply): isolate prepared harness delivery proof
2026-08-11 05:00:17 -05:00
Peter Steinberger
30530ae2a3
improve: speed up test project routing tests ( #121968 )
...
* test(tooling): delete routing inventory reassertions
* test(tooling): preserve full-suite ownership guard
* test(tooling): remove dead fs scan helper
---------
Co-authored-by: Amp <amp@ampcode.com >
2026-08-11 02:40:19 -07:00
qingminlong
59799d965a
fix(scripts): honor repeated response content lengths ( #110126 )
...
Punchcard-Session: clear-valley-meadow-4p
2026-08-11 17:33:57 +08:00
Peter Steinberger
53407b154d
fix(agents): remove stale media completion reply mechanics ( #121937 )
...
* fix(agents): remove stale media completion reply mechanics
Make generated image, music, and video completion wakes follow the current tool-agnostic visible-reply contract, preserving every structured attachment without NO_REPLY or transport-specific instructions.
Refs #121933 .
* test(agents): remove stale media helper
Delete the unused assertion helper left behind by the table-driven generated-media completion coverage.\n\nRefs #121933 .
* test(tooling): wait for profiler descendant pid
Require the PID file to contain a valid positive process ID before asserting profiler descendant cleanup, closing the create-before-write CI race.\n\nRefs #121971 .
2026-08-11 02:29:05 -07:00
Vincent Koc
0f6885141b
fix(ci): use Node 24.16 for release workflows ( #121967 )
2026-08-11 17:11:35 +08:00
Peter Steinberger
2abed88c5e
test(sqlite): avoid duplicate reliability proof run ( #121952 )
...
* test(sqlite): avoid duplicate reliability proof run
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Peter Steinberger <steipete@gmail.com >
* test(sqlite): retain restore count contract
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Peter Steinberger <steipete@gmail.com >
* test(sqlite): retain reliability CLI markers
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 01:36:48 -07:00
Peter Steinberger
fa03d9b913
refactor: consolidate coercion helpers ( #121366 )
...
* refactor: consolidate coercion helpers
* fix: remove duplicate coercion imports
* fix: preserve serialized coercion guard
* chore: ratchet coercion helper carve-outs
* fix(test): keep gauntlet subprocess startup lean
* fix: preserve imported session timestamp semantics
* fix: preserve catalog timestamp string semantics
* chore: align plugin SDK surface ratchet
* fix: preserve trajectory and SDK string contracts
* fix(test): preserve QA record assertion semantics
* fix: complete standalone record guard rename
* refactor(cron): use canonical string coercion
* fix(acpx): preserve Pi timestamp parsing
* test(channels): adapt custody test harnesses
* test(telegram): classify media harness as test support
* test(acpx): split timestamp contract coverage
* test(channels): support generated custody contracts
* chore: ban the full coercion helper name set
Extends the declaration guard to all eleven consolidated helper names and
renames the cron schedule-identity readNumber wrapper to readScheduleInteger
so the banned generic name cannot regrow.
* fix(scripts): repair release-validation guard drift and lint cause
Restores the renamed isJsonRecord guard in assertTrustedWorkflowHarness after
main added isRecord call sites in parallel, and attaches the caught YAML error
as the thrown error cause (preserve-caught-error was red on main).
* fix: preserve Claude timestamp string semantics
* fix: preserve persisted timestamp string semantics
* fix: preserve date-first timestamp contracts
* fix(openai): harden delegation failure formatting
* chore: close coercion helper guard gaps
* test(openai): model non-error delegation rejection
* chore: refresh plugin SDK API contract
* fix(tasks): use canonical string field reader
* fix(ai): use canonical provider error field coercion
* fix(browser): migrate native bootstrap coercion
* docs(plugin-sdk): clarify text record export compatibility
* fix(gateway): normalize approval execution identity
* test(outbound): isolate message action poll harness
2026-08-11 00:02:18 -07:00
Peter Steinberger
c8571daa2f
fix(scripts): tolerate restricted PR metadata tokens ( #121848 )
...
Amp-Thread-ID: https://ampcode.com/threads/T-019feaaa-c7ed-769e-9f29-a3612bec72e7
Co-authored-by: Amp <amp@ampcode.com >
2026-08-10 23:30:59 -07:00
Peter Steinberger
9acc3beff6
test(scripts): prebundle Crabbox wrapper tests ( #121891 )
...
Amp-Thread-ID: https://ampcode.com/threads/T-019fee8d-665d-707b-a380-23f2a6a1ce03
Co-authored-by: Amp <amp@ampcode.com >
2026-08-10 23:16:26 -07:00
Vincent Koc
65d13cb80b
fix(ci): retry fresh artifact metadata reads ( #121876 )
2026-08-11 14:01:31 +08:00
Peter Steinberger
e4a6ded2d3
fix(release): scope iOS version checks to native releases ( #121863 )
2026-08-10 21:57:02 -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
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
Vincent Koc
6dbea69515
fix(ci): separate frozen target context from candidate identity ( #121835 )
2026-08-11 12:14:19 +08: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
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
Josh Avant
bdd35432dd
perf(checks): accelerate fresh changed gates ( #121805 )
2026-08-10 21:30:24 -05:00
Jesse Merhi
d90e47783d
fix(plugins): remove local dependency denylist ( #101813 )
2026-08-11 12:21:29 +10: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
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
Peter Steinberger
32dc816696
test(tooling): trim duplicate coverage ( #121736 )
2026-08-10 16:32:50 -07:00
Vincent Koc
546bb29055
fix(release): support frozen validation tooling
2026-08-11 07:20:44 +08:00