Repository navigation
test(library): prove the two-device private library round trip and record the design - #136
Merged
Merged
Conversation
…nd document its decisions Covers owner publish, kit store and activate, library list, install digests, an outsider's identical 404, key revocation and a stale If-Match write. Adds the owner gate, capability scope and visibility decision record.
…R claims The newest row is now 1.0.0, so latest = 1.1.0 holds only by semver. The ADR states that kit and signed-URL answers are no-store without Vary, and that a digest lookup still serves a yanked release.
20 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This is the final M0 slice S6 of #107 (private library). It proves the two-device flow end to end and records the shipped design.
apps/web/tests/e2e/private-library-roundtrip.test.tsdrives the real routes and the CLI's library, kit and install code against in-memory D1/R2:kit:@u/k#r1gives identical lock, release, composition and overlay digests and file bytes.401 invalid_api_keyon the library, and a wrong-handle kit key gets403 auth.scope_missing.If-Matchpush fails as CLIconflict(exit 8) over 412 and stores nothing.auth_error, while A still publishes.docs/system-architecture.mdgains "Private Library: Owner Access, Capability Scopes, Visibility", recording the decisions as shipped in feat(releases): let publisher owners read their own private packages #124, feat(releases): choose package visibility on publish, private by default #130, feat(auth): add library:read and kits:write scopes for private library sync #132, feat(library): list the caller's owned and entitled skills and kits #133, fix(collections): keep private packages out of collection views for readers who cannot read them #134 and feat(cli): add library list and kit authoring commands #135.docs/cli-reference.md: an unknown kit isnot_found, notkit.not_found.Validation
pnpm typecheckis clean.pnpm exec vitest runpasses: 136 files, 2634 tests, 3 skipped. The new file has 7 tests.Closes the M0 slice list of #107.
Refs #107
🤖 Generated with Claude Code