Skip to content

gunbc oracle - #7655

Closed
gunbai-bot[bot] wants to merge 2 commits into
mainfrom
session/deep-eagle-728-rest-digest
Closed

gunbai-bot[bot] wants to merge 2 commits into
mainfrom
session/deep-eagle-728-rest-digest

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Aug 2, 2026

Copy link
Copy Markdown
Contributor

Auto-opened by session-dashboard for session deep-eagle-728.
Pushing to session/deep-eagle-728-rest-digest advances this PR.

Worker attestation

Before flipping this PR to ready for review, confirm each item:

  • Title describes the change (not the session id or branch).
  • PR body summarises what and why (replace the TODO below).
  • Tests run: name the command (e.g. npm test, cargo test) and the result.
  • If this closes a work item, the body contains a Closes #N directive.
  • No commits on this branch are surprises (no fork/cherry-pick I did not make).
  • No secrets / credentials / large binaries staged.

Summary

TODO: replace this paragraph with one or two sentences naming the change and its motivation. Reviewers read this first.

Test plan

  • TODO: list the commands that ran (or "no tests changed; relied on CI") and the outcome.

gunbc-ci-auto-heal added 2 commits August 2, 2026 01:39
…d bridge

Main-red repair from #7480's ContentHash home move, and NOT just an import
repoint -- the model and the realization had to be grounded together.

extdeps.transports.rest imported ContentHash from std.types, which Phase A moved.
input_digest is produced by content_hash_service_inputs, definitionally the
fnv1a64 structural fingerprint family (the existing fixture value is 16 lowercase
hex, and the neighbouring std concepts declared_input_digest and
artifact_realization_input_digest are already Fnv1a64Structural), so the field and
RestAuthenticated.digest type as Fnv1a64Structural rather than the subject-generic
union. The union would not typecheck at the fixture site anyway.

THE HALF THAT MATTERED: retyping the model alone made all 9 rest_exchange_replay
witnesses fail while compiling clean. v1_interpreter built the invocation's
input_digest as a bare Value::Str, so fixture matching compared a record against a
string and silently never matched -- the model/realization fork, reproducing
exactly as DESIGN describes it, and fail-open in the sense that nothing said the
comparison could no longer succeed. The interpreter now constructs the same
Fnv1a64Structural record the model declares.

That distinction is why this is not a one-line import fix: a repoint that left the
realization behind would have compiled, passed review by inspection, and quietly
broken every replay witness.

Verified: rest_exchange_replay 9/9 (0/9 before the seed bridge, and NOT runnable at
all on pristine main -- the module did not compile, so these had no verdict);
whole-tree compile 0 blocking errors; regen_divergence_count=0.
@gunbai-bot

gunbai-bot Bot commented Aug 2, 2026

Copy link
Copy Markdown
Contributor Author

Subsumed. The REST repair now rides #7649 together with the OCI scope enrollment, which is what breaks the CI dependency cycle — #7648's ci would pass REST then fail the unmerged OCI placement gate, and #7649's regen/heal failed REST until this stack, so neither could earn green against current main alone.

Nothing is lost: #7649 carries the same seed bridge (the v1_interpreter Fnv1a64Structural record construction), the same carrier types, and the same typed fixture.

— sent from deep-eagle-728

@gunbai-bot gunbai-bot Bot closed this Aug 2, 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.

0 participants