Skip to content

fix: reconcile interactions between the merged stability batch and record it in the changelog - #1191

Merged
aviggiano merged 7 commits into
mainfrom
claude/wave1-interaction-fixes
Sep 29, 2026
Merged

aviggiano merged 7 commits into
mainfrom
claude/wave1-interaction-fixes

Conversation

@aviggiano

@aviggiano aviggiano commented Sep 29, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

The 25 stability/simplification PRs #1163–#1188 were validated individually and then merged back to back into main, with conflict resolutions replayed from a combined integration branch (#1190). Their combination fails CI in five places, and main is red until this lands. None is a product regression: four are tests or lint that one PR's change invalidated for another PR's test, and one is an error code a test pinned before #1188 changed it deliberately.

Change

One commit per interaction, each named after the PR it pairs with:

Verification

The tree of this branch is byte-identical to the combined integration branch with these fixes. On that tree: the affected runtime and CLI tests pass, pnpm -w build, pnpm -w lint, format:check, size, the dependency-advisory check, and the diff-limited strict lint (lint:strict:ci) over all 180 changed files pass. This PR's CI is the first full run of every lane on the merged result.

Risk / compatibility

Only resume.ts and the report error code change behaviour. replay.ts and fork.ts interpolate workflow_run_id the same way; they pass lint only because they are outside the diff, so an explicit return type on submitSmithersContinuation would be the durable fix (not done here).

Refs #1190

🤖 Generated with Claude Code

RetriggerConfidence Score: 5/5

The PR appears safe to merge; no actionable issue was identified.

Summary

This PR reconciles tests and CLI output with changes already merged in the stability batch, and records the batch in the changelog.

  • Updates the resume message fallback and two verified-report diagnostic expectations.
  • Preserves oversized CLI tests by moving later phases into helpers.
  • Updates runtime test fixtures for sealed attempt authority, journal failures, and generated-adapter loading.

Reviews (1) · Last reviewed commit: "docs: record the stability and simplific..."

aviggiano and others added 7 commits September 29, 2026 07:22
…e gate test

#1178 made attemptAuthority required for verifyRuntimeRequiredArtifactsForAttempt;
the unscoped-prose test from #1176 still used the three-argument form.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
(cherry picked from commit dd45e92)
… this runtime build

#1173 made the generated environment adapter import its route helpers from
the runtime module at load time (ULTRAFUZZ_RUNTIME_MODULE, else the sealed
../../modules copy next to a launch). The Bun adapter tests default that
variable to this build; the #1177 continuation test runs under Node and
transpiles the adapter into the project, where the relative fallback
resolves outside the run, so the import failed with ERR_MODULE_NOT_FOUND.
Set the same default for the adapter load only, then restore it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
(cherry picked from commit 9a2c541ca927f1d808ecae62afeac620f0c7df32)
…t journal

The #1180 test forced run-state synchronization to throw with a torn
usage ledger. #1186 made usage accounting a derived cache whose failure is
a WORKFLOW_ACCOUNTING_FAILED warning, so the sync no longer threw and the
WORKFLOW_STATE_SYNC_FAILED path went untested. A hard link to events.jsonl
keeps the journal readable for the evidence checks status runs, but the
pass refuses to append to a hard-linked journal, so it still throws.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
(cherry picked from commit f4c7701d33a74a61d86e009b32530767f0fa6945)
… run ID

#1177 rewrote the resume text lines around `${value.workflow_run_id}`.
#1185 added an early `runtimeFailure<WorkflowLifecycleValue>` return to
resumeRun, which puts that constituent first in the inferred result union,
so the text callback's value is now WorkflowLifecycleValue, whose
workflow_run_id is optional, and strict lint flags both template
expressions (restrict-template-expressions). Print the run ID instead of
"undefined" if the workflow run ID is ever absent.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
(cherry picked from commit 1e94e320a7443649b36c96394e99705f96f63e91)
#1184 gave every CLI test a context parameter so temporaryRoot can
register its cleanup, which makes the headers of the product workflow
evidence test (371 lines, 188 statements) and the report bundle test
(192 lines, 118 statements) changed lines, and strict lint holds them to
the test budgets (150 lines, 80 statements). Restoring the old
`async () =>` headers would drop that cleanup, since temporaryRoot needs
the test context, and both tests launch runs whose sealed snapshots are
large. Move the later phases of each test, unchanged, into helpers the
test calls in the same order, so the scenario, its state and its cleanup
stay the same and every function fits the budgets.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
(cherry picked from commit 555fcbc86ce93381892c4cd84639355209d19a72)
…w report

#1188 validates a schema-bound verified output with the artifact gate's
verifyRequiredArtifactSchemaBinding, which reports JSON_SCHEMA_VIOLATION
as the gate always has, instead of validateArtifactContractBytes, which
mapped it to ARTIFACT_SCHEMA_INVALID; #1188's own tests pin the new code.
The two `report --require-verified` CLI tests still expected the old one.
They fail on #1188 alone, but #1188 changed no CLI files, so its PR lane
selection never ran the CLI package tests.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
(cherry picked from commit be2a2acbc154510b91fb7f2542426c52c16f24b5)
The 25 pull requests merged on 2026-09-29 (#1163-#1188) moved their entries
here instead of each inserting one at the same place, which would have made
every merge conflict with the next. Entries keep the section their author
chose; the #1184 entry describes its final form (a global complexity ceiling,
not a suppression baseline).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@aviggiano
aviggiano requested a review from a team as a code owner September 29, 2026 07:23
@aviggiano
aviggiano merged commit 8ff5eac into main Sep 29, 2026
17 checks passed
@aviggiano
aviggiano deleted the claude/wave1-interaction-fixes branch September 29, 2026 08:02
aviggiano added a commit that referenced this pull request Sep 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant