Skip to content

chore: version packages - #321

Merged
cuibonobo merged 1 commit into
mainfrom
changeset-release/main
Sep 19, 2026
Merged

cuibonobo merged 1 commit into
mainfrom
changeset-release/main

Conversation

@cuibonobo

Copy link
Copy Markdown
Member

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@haverstack/conformance-fixtures@0.31.0

Minor Changes

  • #320 f99ab6b Thanks @cuibonobo! - Pin the grantee arms and the evaluation-time refusals that the fixtures only described.

    Two fixtures covered a grant with no grantee at all and a group arm with no role, and both said in prose that the other arms "are refused the same way" — a rule stated in a fixture and checked by nothing. Nine fixtures now stand behind it: each incomplete arm (entity with no entityId, group with no groupId), an empty entityId as distinct from an absent one, the listing-only role: 'any' that a listGrants() query may ask for and a stored grantee may never carry, an unrecognized kind, and a null grantee reported as the missing field it is rather than read as absent-then-defaulted.

    Two more pin the half of the rule no request shape can show: that a grant reaching storage unvetted confers nothing when it is read back. A grant naming _app@1 still answers 403 on a create, and a mutate verb with no read companion in the same grant conveys neither the write nor a read — so it answers 404, not 403. Both are states grant() refuses and a server mapping a request body, an import, or a foreign server's response can still produce.

    Also pins that an anyone element labelled anything but read is refused, which is load-bearing beyond the element: stored, it would read as world read and satisfy the read a write element needs beside it, silencing write-implies-read for every grantee on the record.

    No behavior change — every rule here is already in docs/spec/access-control.md. A consumer holding these fixtures to a coverage gate will see the new names and need to dispatch or skip them.

@cuibonobo
cuibonobo merged commit 4a06a4c into main Sep 19, 2026
9 checks passed
@cuibonobo
cuibonobo deleted the changeset-release/main branch September 19, 2026 22:01
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