Skip to content

prx-6s8: add changeset - #929

Draft
bdelanghe wants to merge 2 commits into
mainfrom
prx-6s8-effect-ownership-merge-guard
Draft

prx-6s8: add changeset#929
bdelanghe wants to merge 2 commits into
mainfrom
prx-6s8-effect-ownership-merge-guard

Conversation

@bdelanghe

Copy link
Copy Markdown
Contributor

From a backlog local branch, pushed and opened for triage.

bobby and others added 2 commits June 26, 2026 12:47
`projectProvenanceAxis` verified a derivation's signature but never its
ownership, so a signature-valid `push/v1` produced by a non-owning actor
(e.g. `reviewer`) returned "verified". That orphan/ambient effect is exactly
what `verifyEffectOwnership` rejects — it was defined and unit-tested but had
no live call site (only the value-props instrument).

Wire it into the merge gate (the live path `canEnterReadyToMerge` reads):
under enforcement, an authentic-but-unowned effect now fails closed
("unsigned"). Non-effect derivations and non-role producers pass through,
unchanged.

- merge-guard: call verifyEffectOwnership after signature verification
- tests: keeper-owned push ⇒ verified (control); reviewer-produced push ⇒
  unsigned (the gap)
- value-props/effect-ownership header: reflect the now-live wiring; regen
  docs/value-props.md

Closes ledger row 6.2 (github.com/bounded-systems/trust). Full suite green
(6699 pass / 0 fail).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-code-quality

Copy link
Copy Markdown
Contributor

Code Coverage Overview

Languages: TypeScript

TypeScript / unit

The overall coverage remains at 88%, unchanged from the main branch.


Code Coverage is in Public Preview. Learn more and provide us with your feedback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Todo

Development

Successfully merging this pull request may close these issues.

1 participant