Skip to content

check.html: rc.22 publishes v3, so the #120 scope lines are corrected and the parity check holds v3 to the package - #124

Merged
BTCBoyd merged 2 commits into
masterfrom
struct/v3-scope-published
Aug 25, 2026
Merged

check.html: rc.22 publishes v3, so the #120 scope lines are corrected and the parity check holds v3 to the package#124
BTCBoyd merged 2 commits into
masterfrom
struct/v3-scope-published

Conversation

@BTCBoyd

@BTCBoyd BTCBoyd commented Aug 25, 2026

Copy link
Copy Markdown
Member

Why

rc.22 is published (registry direct: dist-tags.latest and .rc both 1.0.0-rc.22, gitHead 75f0d50). #120's v3 scope lines said the v3 construction was in no published release and did not check with npm install. That was true when written and the publish makes it false.

Measured, not reasoned. Against a clean npm install @observer-protocol/policy-engine@1.0.0-rc.22 --install-links from the registry, all v3 records verify rather than throw, the served shape reads through signableFromRefusalRow, the tampered row is rejected, and v1/v2 are byte-unchanged.

What changed

  • check.html — the two v3 scope paragraphs corrected in place, dated 24 August 2026 in the page's house style: the published engine now reads v2 and v3; a v3 record checks with npm install; the version paragraph now says v1, v2 and v3 are the package's.
  • The pin moved 1.0.0-rc.21 → 1.0.0-rc.22 (scripts/package.json + lockfile). sync-engine-version moved the eight data-engine-version="current" markers with it, and the engine-payload-exports:npmLatest measured figure moved to rc.22 (the "no longer inside that band" sentence survives — confirmed by sentences-at-risk, not by argument).
  • scripts/check-page-payload-parity.mjs — repointed. The served rows and the five v3 vectors are now held byte-identical to the published package (19/19), the same way v1/v2 store records already were; the five fixtures are demoted to regression vectors against the enforcement point's own signatures. Stale "no package to hold them to / 6f58fcb" comments removed.
  • The demonstration-key caveat is kept. The publish changes what verifies, not who held the key. The one clause that implied the five demo records were the only thing holding v3 is corrected, because the package now holds it too.
  • sitemap.xml regenerated (committed alone), because editing verify.html moved its git date.

Checks (run under rc.22)

Green: check-page-payload-parity (19/19 held to package), check-measured-figures, sync-engine-version --check, check-public-checker, check-page-attestation-parity, check-declarations, check-outbound-links, check-section05-transcript, verify-published-credentials.

Out of scope, flagged not fixed

verify.html §"the same engine, two releases behind" (hosted engine.running rc.10 vs published rc.22) is a stale version-gap number. It predates this change (already inaccurate at rc.21) and is unrelated to v3 refusals, so it is left for a separate correction.

Not self-merged — this ships to observerprotocol.org on merge to master.

…nd the parity check holds v3 to the package

rc.22 published the v3 refusal construction (REFUSAL_PAYLOAD_TYPE_V3, and signableFromRefusalRow
for the served shape) and npm's `latest` now serves it. The scope lines added by #120 said the v3
construction was in no published release and did not check with `npm install`; that held through
24 August 2026 and the publish makes it false. Corrected in place, dated.

Measured against a clean install of @observer-protocol/policy-engine@1.0.0-rc.22 from the registry:
all v3 records verify rather than throw, the served shape reads through signableFromRefusalRow, and
v1/v2 are unchanged. Pin bumped rc.21 -> rc.22; the eight data-engine-version markers and the
engine-payload-exports:npmLatest figure moved with it (the "no longer inside that band" sentence
survives at rc.22).

check-page-payload-parity now holds the served rows and the five v3 vectors byte-identical to the
published package, the same way v1 and v2 store records already were; the five fixtures are demoted
to regression vectors against the enforcement point's own signatures.

The demonstration-key caveat is unchanged in substance: the publish changes what verifies, not who
held the key. The one clause implying the five demo records were the only thing holding the v3
construction is corrected, because the package now holds it too.
@netlify

netlify Bot commented Aug 25, 2026

Copy link
Copy Markdown

Deploy Preview for observerprotocol ready!

Name Link
🔨 Latest commit 3df9d6a
🔍 Latest deploy log https://app.netlify.com/projects/observerprotocol/deploys/6a8d1582e41d9200088d7a12
😎 Deploy Preview https://deploy-preview-124--observerprotocol.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@BTCBoyd
BTCBoyd merged commit 261bf6e into master Aug 25, 2026
8 checks passed
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