Commit graph

39 commits

Author SHA1 Message Date
Vincent Koc
0a6f1fa28b
fix(doctor): explain update lint supervisor refusals (#156547)
* fix(doctor): explain update lint supervisor refusals

* test(gateway): complete placement read policy fixture

Supply the policyConfig required by SessionRowReadView after scoped session authorization was introduced. This restores the gateway-root type check without weakening the production contract or changing lifecycle assertions.

(cherry picked from commit 0901260323)

* test(agents): join owned cleanup before fixture assertions

Completion now crosses asynchronous SQLite work, but two steer-restart
fixture cases still polled callbacks every millisecond with a one-second
deadline. The assertion could expire while valid completion work remained
admitted; the existing teardown join then observed the missing announcement.
Join the existing lifecycle and cleanup roots before the unchanged assertions,
restore observers in finally, and remove the timed-poll helper.

The original CI failure and two local failures reproduced the race; a local
diagnostic observed zero announcements before owner settlement and one after.
Natural isolated and loaded Linux baselines passed, so no natural Linux
before-failure is claimed. After the repair, the full file passed 20 times
and its exact 86-file Linux child shard passed three times. Changed checks
and P2 review passed. The existing 22-test file measured 27.99 seconds wall
with one worker; no new tests, retries, or timeouts were added.

(cherry picked from commit 1f067fa03d)

* test(update): arm Doctor refusal at the worker entry

Use the existing survivor preload path so inspection budget admission cannot skip the diagnostic refusal fixture. Preserve refused update and process evidence separately from the healthy retry through the maintained diagnostics publisher.

Retain the original successful-update fixture failure as evidence; production Doctor semantics remain unchanged.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

* test(e2e): reap orphaned upgrade survivor fixture children

Start both survivor containers with Docker init so orphaned worker children
are reaped by the namespace owner. Retain process parentage and PID 1 identity
in the refusal witnesses, and include HostConfig.Init in failure diagnostics.
Keep the supervisor refusal and completed-cleanup assertions unchanged.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-09-24 22:44:37 +00:00
Vincent Koc
1947ba719c
refactor(scripts): share release package cleanup (#144798) 2026-09-12 00:16:32 +08:00
Dallin Romney
cbf23a1eba
fix(release): preserve frozen upgrade scenario closure (#142007)
* fix(release): preserve frozen scenario imports

* test(release): keep helper mount assertion behavioral
2026-09-08 01:44:44 -07:00
Vincent Koc
07fe26ecf8
fix(release): consolidate frozen target harness contracts (#136761)
* fix(release): consolidate frozen target harness contracts

Keep current targets strict, source-qualify the frozen plugin fixture dialect, and omit only the mobile reconnect lane when the selected Gateway lacks its required iPhone watch-relay capability.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

Co-authored-by: Dallin Romney <dallinromney@gmail.com>

* fix(release): make frozen capability probes pipefail safe

* fix(release): restore frozen core harness dialects

* fix(release): default frozen code-mode catalog mode

* fix(release): bind frozen identity for docker chunks

* fix(release): derive frozen live package mode

* fix(release): materialize frozen bundle MCP client

* fix(release): use frozen typed onboarding contract

* fix(release): make frozen client mount traversable

* fix(release): preserve frozen client module scope

* fix(release): select frozen runtime-context input contract

* fix(release): qualify frozen MCP permission ownership

* fix(release): retain failed Docker harness diagnostics

* test(release): preserve harness cleanup assertion

* Revert "fix(release): qualify frozen MCP permission ownership"

This reverts commit 10028a08371a6c6ccb17ac76742bb0de00c7a957.

---------

Co-authored-by: Dallin Romney <dallinromney@gmail.com>
2026-09-07 13:21:01 -07:00
Dallin Romney
6d3a1b867f
build: consume platform-specific fs-safe packages (#132240)
* build: consume platform-specific fs-safe packages

* test: prove fs-safe optional fallback
2026-09-03 13:26:50 -07:00
Peter Steinberger
a162944f54
improve(release): prepare publication artifacts during validation (#135639)
* perf(release): prepare publication artifacts during validation

* fix(release): scope npm registry environment restoration

* test(ci): align release artifact verification fixtures

Account for newly tracked artifact tests and internal workflow-only inputs. Keep synthetic runner timing checks independent of unrelated suite budgets. Reuse the catalog-row selector fix already landed in #135597.

* fix(release): preserve correction identity across prepared artifacts
2026-09-01 18:41:09 -07:00
Vincent Koc
ec3a8343c5
fix(ci): keep plugin fixture validation compatible with capability consent (#131208)
* fix(ci): accept plugin fixture capabilities

* fix(ci): detect fixture capability consent support

Probe candidate command help through the existing bounded E2E runners so
positive fixtures accept capabilities only when that command supports it.
Preserve historical packages, probe failures, argv, and child exit status;
keep negative, no-op, and integrity-bound update coverage unapproved.

Replace duplicated probes and source-string checks with executable
compatibility regressions. Synchronize the RPC timeout test with real
process readiness before advancing its unchanged 100 ms deadline, while
retaining real process-group termination and cleanup.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

* fix(ci): run Docker lanes from trusted harness

Resolve package scripts and packaging tools from the trusted harness while
keeping candidate source, artifacts, registry identity, and preflight on
the frozen target. Remove candidate-script lane filtering and the duplicate
live command wrapper; preserve source inputs in source-built Docker lanes.

Prove the public scheduler boundary with distinct harness/target roots and
poisoned candidate scripts. Synchronize scheduler timeout fixtures with real
child readiness, retain real signals and kill grace, and handle empty QR
build arguments on Bash 3.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

* test(ci): retire superseded harness source assertions

Keep the workflow trust and pnpm PATH guards, but remove checks for the
old inline replacement and deleted duplicate live-script wrapper. The
public scheduler regressions now prove those behaviors through distinct
candidate/harness roots and quoted pinned pnpm commands.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

* test(ci): cover multi-build source roots

* fix(ci): select the harness toolchain before Docker lanes

Start prepared pnpm commands in the trusted harness before Corepack resolves
its package-manager pin. Preserve frozen candidate source and artifact
identity, and resolve relative executable and cache paths before changing cwd.

Keep quoted rerun environment values out of executable substitution. Cover
different toolchain pins, shell-sensitive paths, and generated reruns through
the public scheduler boundary.

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-08-27 21:34:12 -07:00
Peter Steinberger
21df0f36a4
fix(e2e): mount prerelease registry verifier (#130288)
Amp-Thread-ID: https://ampcode.com/threads/T-01a039ee-f7c4-71d8-8b71-e028dbd60493

Co-authored-by: Amp <amp@ampcode.com>
2026-08-26 11:58:43 -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
fb0812c857
fix(qa): prevent false update-restart package failures (#120300)
* test(qa): expose update restart process exits

* test(qa): supervise update restart gateway

* test(qa): isolate supervised gateway environment

* test(qa): diagnose restart plugin convergence

* test(qa): mount trusted upgrade harness

* test(qa): include upgrade runtime companions

* test(qa): remove temporary restart diagnostics

* test(qa): enforce systemd restart budget

* test(qa): honor systemd stop timeout

* test(qa): tighten package fixture ownership

* test(qa): preserve unrelated lane shapes

* test(qa): complete service fixture boundaries
2026-08-07 14:46:59 -07:00
Peter Steinberger
b5a59e0a7d
refactor(docker): consolidate E2E scenario helpers (#117359)
* refactor(docker): consolidate E2E scenario helpers

* fix(ci): retain release harness entry

* test(docker): complete package helper fixture
2026-08-01 05:48:28 -07:00
Peter Steinberger
c69a75f697
fix(release): mount normalization helper in Docker E2E 2026-07-17 16:25:37 +01:00
Peter Steinberger
ff9b291673
fix(docker): explain unsupported E2E resource limits (#109587)
* fix(docker): diagnose unsupported E2E resource limits

* test(docker): track diagnostic temp dirs

* fix(docker): bound resource diagnostic capture

* fix(docker): restrict diagnostic FIFO access
2026-07-16 20:56:23 -07:00
Peter Steinberger
6e9e64bd30
fix: current-tree package checks support unreleased versions (#104186)
* fix(ci): package unreleased QA builds safely

* style(ci): format QA changelog intent
2026-07-10 22:31:42 -07:00
Peter Steinberger
5635d74ecc
fix(release): contain installer artifact restores (#103608) 2026-07-10 08:27:24 -07:00
Vincent Koc
8755077fe4
fix(release): bundle AI runtime in installer smoke (#103556)
* fix(release): bundle AI runtime in installer smoke

* fix(release): verify bundled AI runtime loadability

* fix(release): preserve advisory doctor exits

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-10 02:13:41 -07:00
Vincent Koc
bb44c5326e
fix(e2e): validate docker log limits 2026-06-19 01:02:59 +02:00
Vincent Koc
6af1b97b1d
fix(e2e): validate docker pids limits 2026-06-19 00:46:17 +02:00
Dallin Romney
0a6736af09
test: fold lifecycle and package proof into QA Lab (#93114)
* test: fold script coverage into qa scenarios

* test: migrate script checks into qa e2e

* test: point qa code refs at migrated e2e

* test: fold plugin lifecycle probe into qa e2e

* test: use shared temp dirs in plugin lifecycle probe

* test: fold plugin lifecycle sweep into qa lab

* test: trim lifecycle docker text assertions

* test: keep followup script conversions split

* test: make lifecycle docker runner script-safe

* test: update changed helper routing expectation
2026-06-17 14:22:04 -07:00
Vincent Koc
a3d5e5bc72
fix(test): support macOS Bash 3 script suites 2026-06-10 15:37:15 +09:00
Vincent Koc
5496044f6d
fix(release): cap docker e2e cpus 2026-06-09 01:02:22 +02:00
Vincent Koc
6bfd47af38
fix(e2e): clean interrupted docker harness runs 2026-06-07 08:17:16 +02:00
Vincent Koc
a372429a96
fix(e2e): cap docker harness resources 2026-06-07 06:06:12 +02:00
Vincent Koc
0cfd6b0504
fix(e2e): clean timed-out docker harness containers 2026-06-01 23:45:56 +02:00
Vincent Koc
0833c68b1b
fix(e2e): show plugins docker sweep progress 2026-05-31 15:57:19 +02:00
Vincent Koc
d0cb7ba55b
fix(e2e): bound package cli scenarios 2026-05-27 04:00:55 +02:00
Vincent Koc
3736d7b60b
fix(docker): require bounded e2e docker commands 2026-05-27 00:03:00 +02:00
Vincent Koc
71cb60706b
fix(e2e): bound docker lifecycle hangs 2026-05-26 21:22:01 +02:00
Vincent Koc
e89afa6afa
fix(e2e): kill timed docker helper commands 2026-05-26 17:16:20 +02:00
Vincent Koc
a07dc3896b
fix(e2e): time out package npm installs 2026-05-26 14:18:58 +02:00
Vincent Koc
b34e1b32d8
fix(e2e): honor Docker harness run timeouts 2026-05-26 10:42:34 +02:00
Vincent Koc
b377618fae
fix(e2e): clean package mount tarballs
Some checks are pending
CI / check-test-types (push) Blocked by required conditions
CI / check-additional-boundaries-a (push) Blocked by required conditions
CI / check-additional-boundaries-bcd (push) Blocked by required conditions
CI / check-additional-extension-bundled (push) Blocked by required conditions
CI / check-additional-extension-channels (push) Blocked by required conditions
CI / check-additional-extension-package-boundary (push) Blocked by required conditions
CI / check-additional-runtime-topology-architecture (push) Blocked by required conditions
CI / check-docs (push) Blocked by required conditions
CI / skills-python (push) Blocked by required conditions
CI / -4 (push) Blocked by required conditions
CI / -5 (push) Blocked by required conditions
CI / macos-swift (push) Blocked by required conditions
CI / -6 (push) Blocked by required conditions
ClawSweeper Dispatch / dispatch (push) Waiting to run
Control UI Locale Refresh / plan (push) Waiting to run
Control UI Locale Refresh / Refresh (push) Blocked by required conditions
Docs Sync Publish Repo / sync-publish-repo (push) Waiting to run
Docs / docs (push) Waiting to run
Plugin NPM Release / preview_plugins_npm (push) Waiting to run
Plugin NPM Release / Validate release publish approval (push) Blocked by required conditions
Plugin NPM Release / preview_plugin_pack (push) Blocked by required conditions
Plugin NPM Release / publish_plugins_npm (push) Blocked by required conditions
Website Installer Sync / static (push) Waiting to run
Website Installer Sync / linux-docker (push) Waiting to run
Website Installer Sync / macos-installer (push) Waiting to run
Website Installer Sync / windows-installer (push) Waiting to run
Website Installer Sync / sync-website (push) Blocked by required conditions
Workflow Sanity / generated-doc-baselines (push) Waiting to run
Workflow Sanity / no-tabs (push) Waiting to run
Workflow Sanity / actionlint (push) Waiting to run
2026-05-26 09:43:40 +02:00
Vincent Koc
abc7b7b331
fix(e2e): clean functional Docker build inputs 2026-05-26 09:29:57 +02:00
Vincent Koc
5f0315467b
fix(test): mount upgrade survivor helper 2026-05-24 18:59:34 +02:00
Peter Steinberger
8ac2dd4cd2
refactor: simplify docker e2e harness scripts 2026-04-29 08:45:42 +01:00
Peter Steinberger
34bd962a20
refactor: share docker e2e harness runner 2026-04-29 08:28:54 +01:00
Peter Steinberger
3286e99bc2
refactor: share docker e2e instance helpers 2026-04-29 01:17:19 +01:00
Peter Steinberger
a2adb05f74
refactor(test): split docker e2e planner 2026-04-26 23:36:31 +01:00
Peter Steinberger
d108110a89
ci: use packaged tarball for docker e2e 2026-04-26 23:10:33 +01:00