borgmcp-shared 0.6.3 → 0.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -7
- package/dist/conformance/adapter.d.ts +18 -0
- package/dist/conformance/adapter.d.ts.map +1 -1
- package/dist/conformance/adapter.js +119 -1
- package/dist/conformance/adapter.js.map +1 -1
- package/dist/conformance/index.d.ts +106 -1
- package/dist/conformance/index.d.ts.map +1 -1
- package/dist/conformance/index.js +106 -0
- package/dist/conformance/index.js.map +1 -1
- package/dist/protocol/contract.d.ts +47 -1
- package/dist/protocol/contract.d.ts.map +1 -1
- package/dist/protocol/contract.js +112 -9
- package/dist/protocol/contract.js.map +1 -1
- package/dist/protocol/errors.d.ts +2 -0
- package/dist/protocol/errors.d.ts.map +1 -1
- package/dist/protocol/errors.js +2 -0
- package/dist/protocol/errors.js.map +1 -1
- package/dist/protocol/version.d.ts +1 -1
- package/dist/protocol/version.js +1 -1
- package/docs/compatibility.md +16 -7
- package/docs/enrollment.md +48 -6
- package/docs/releasing.md +4 -3
- package/package.json +1 -1
- package/src/conformance/adapter.ts +261 -0
- package/src/conformance/index.ts +146 -0
- package/src/protocol/contract.ts +166 -9
- package/src/protocol/errors.ts +2 -0
- package/src/protocol/version.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/protocol/contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/protocol/contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,8 @@ export declare enum ErrorCode {
|
|
|
12
12
|
DATABASE_ERROR = "DATABASE_ERROR",
|
|
13
13
|
EXTERNAL_SERVICE_ERROR = "EXTERNAL_SERVICE_ERROR",
|
|
14
14
|
NOT_FOUND = "NOT_FOUND",
|
|
15
|
+
REPOSITORY_ALREADY_ASSOCIATED = "REPOSITORY_ALREADY_ASSOCIATED",
|
|
16
|
+
CUBE_ALREADY_ASSOCIATED = "CUBE_ALREADY_ASSOCIATED",
|
|
15
17
|
ROLE_IN_USE = "ROLE_IN_USE",
|
|
16
18
|
ROLE_HAS_FROZEN_DRONES = "ROLE_HAS_FROZEN_DRONES",
|
|
17
19
|
DRONE_EVICTED = "DRONE_EVICTED",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/protocol/errors.ts"],"names":[],"mappings":"AACA,oBAAY,SAAS;IACnB,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,qBAAqB,0BAA0B;IAC/C,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,sBAAsB,2BAA2B;IACjD,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,sBAAsB,2BAA2B;IACjD,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,4BAA4B,iCAAiC;IAC7D,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;IAQnC,gBAAgB,qBAAqB;CACtC;AAGD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/protocol/errors.ts"],"names":[],"mappings":"AACA,oBAAY,SAAS;IACnB,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,qBAAqB,0BAA0B;IAC/C,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,sBAAsB,2BAA2B;IACjD,SAAS,cAAc;IACvB,6BAA6B,kCAAkC;IAC/D,uBAAuB,4BAA4B;IACnD,WAAW,gBAAgB;IAC3B,sBAAsB,2BAA2B;IACjD,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,4BAA4B,iCAAiC;IAC7D,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;IAQnC,gBAAgB,qBAAqB;CACtC;AAGD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
package/dist/protocol/errors.js
CHANGED
|
@@ -13,6 +13,8 @@ export var ErrorCode;
|
|
|
13
13
|
ErrorCode["DATABASE_ERROR"] = "DATABASE_ERROR";
|
|
14
14
|
ErrorCode["EXTERNAL_SERVICE_ERROR"] = "EXTERNAL_SERVICE_ERROR";
|
|
15
15
|
ErrorCode["NOT_FOUND"] = "NOT_FOUND";
|
|
16
|
+
ErrorCode["REPOSITORY_ALREADY_ASSOCIATED"] = "REPOSITORY_ALREADY_ASSOCIATED";
|
|
17
|
+
ErrorCode["CUBE_ALREADY_ASSOCIATED"] = "CUBE_ALREADY_ASSOCIATED";
|
|
16
18
|
ErrorCode["ROLE_IN_USE"] = "ROLE_IN_USE";
|
|
17
19
|
ErrorCode["ROLE_HAS_FROZEN_DRONES"] = "ROLE_HAS_FROZEN_DRONES";
|
|
18
20
|
ErrorCode["DRONE_EVICTED"] = "DRONE_EVICTED";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/protocol/errors.ts"],"names":[],"mappings":"AACA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/protocol/errors.ts"],"names":[],"mappings":"AACA,MAAM,CAAN,IAAY,SAgCX;AAhCD,WAAY,SAAS;IACnB,0CAA6B,CAAA;IAC7B,0CAA6B,CAAA;IAC7B,0CAA6B,CAAA;IAC7B,4DAA+C,CAAA;IAC/C,4CAA+B,CAAA;IAC/B,4CAA+B,CAAA;IAC/B,oDAAuC,CAAA;IACvC,oDAAuC,CAAA;IACvC,wDAA2C,CAAA;IAC3C,8CAAiC,CAAA;IACjC,8CAAiC,CAAA;IACjC,8DAAiD,CAAA;IACjD,oCAAuB,CAAA;IACvB,4EAA+D,CAAA;IAC/D,gEAAmD,CAAA;IACnD,wCAA2B,CAAA;IAC3B,8DAAiD,CAAA;IACjD,4CAA+B,CAAA;IAC/B,0CAA6B,CAAA;IAC7B,0EAA6D,CAAA;IAC7D,8CAAiC,CAAA;IACjC,8CAAiC,CAAA;IACjC,gDAAmC,CAAA;IAQnC,kDAAqC,CAAA;AACvC,CAAC,EAhCW,SAAS,KAAT,SAAS,QAgCpB"}
|
package/dist/protocol/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const PROTOCOL_VERSION = '
|
|
1
|
+
export const PROTOCOL_VERSION = '5';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/docs/compatibility.md
CHANGED
|
@@ -37,12 +37,20 @@ removes `session.expires_at` from attach responses: the exact session shape is
|
|
|
37
37
|
before it decodes this response; a v3 peer likewise rejects v2. There is no
|
|
38
38
|
field-level fallback.
|
|
39
39
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
40
|
+
Published `borgmcp-shared@0.6.3` carries protocol v4. It adds strict
|
|
41
|
+
origin-or-local repository identity, separate cube and repository display names,
|
|
42
|
+
named built-in templates, and authoritative created-or-resolved readback. A v3
|
|
43
|
+
peer and a v4 peer reject each other before credentials or mutation.
|
|
44
|
+
|
|
45
|
+
The reviewed, unpublished `borgmcp-shared@0.6.4` hotfix candidate carries
|
|
46
|
+
protocol v5. It adds authenticated, read-only
|
|
47
|
+
`POST /api/repository-cubes/resolve` and separately confirmed, atomic
|
|
48
|
+
`PUT /api/repository-cubes/association` operations. The resolver returns an
|
|
49
|
+
explicit none or authoritative associated cube/template/role fields; association
|
|
50
|
+
requires an explicit cube ID and canonical repository identity. A v4 peer and a
|
|
51
|
+
v5 peer reject each other during credential-free preflight before credentials or
|
|
52
|
+
operation dispatch. The candidate is not a release until its separate
|
|
53
|
+
exact-commit tag and protected publication gates complete.
|
|
46
54
|
|
|
47
55
|
Removing or reinterpreting an existing field is a protocol-breaking change even
|
|
48
56
|
when TypeScript permits it. Implementations must not infer compatibility from a
|
|
@@ -56,7 +64,8 @@ The rollout order is fail-closed:
|
|
|
56
64
|
1. Publish the reviewed `borgmcp-shared` registry artifact only after its
|
|
57
65
|
separate tag and publication gates pass, under a version that has never been
|
|
58
66
|
published with a different protocol tag.
|
|
59
|
-
2. Update the
|
|
67
|
+
2. Update the server release to the reviewed exact shared version, then update
|
|
68
|
+
the client release to the same exact shared version and matching server; Git
|
|
60
69
|
dependencies are not an authorized release input.
|
|
61
70
|
3. Run the shared adapter conformance suite in both consumers before release.
|
|
62
71
|
4. Deploy client and server support together. A peer on the prior protocol tag
|
package/docs/enrollment.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Retry-Safe Enrollment and Cube
|
|
1
|
+
# Retry-Safe Enrollment and Repository Cube Contract
|
|
2
2
|
|
|
3
3
|
This document defines the data-only enrollment and cube-creation boundaries
|
|
4
4
|
shared by clients and servers. It does not define offline operator commands,
|
|
@@ -19,9 +19,10 @@ incident is bound to tag object `045268aa8873da330819860012ecaddb4bc2883c`, prot
|
|
|
19
19
|
`fd69b08586481a60c88099dede8e4e066f73f2f2`; attempt-1 workflow run
|
|
20
20
|
`30054936226` failed in tests before build, packaging, authentication, or registry
|
|
21
21
|
mutation and must never be rerun or moved. `borgmcp-shared@0.6.1` and
|
|
22
|
-
`borgmcp-shared@0.6.2` are published and immutable.
|
|
23
|
-
the reviewed, unpublished `0.6.
|
|
24
|
-
The version bump grants no tag or
|
|
22
|
+
`borgmcp-shared@0.6.2` and `borgmcp-shared@0.6.3` are published and immutable.
|
|
23
|
+
This source now identifies the reviewed, unpublished `0.6.4`
|
|
24
|
+
repository-association hotfix candidate. The version bump grants no tag or
|
|
25
|
+
publication authority: creating `v0.6.4` and
|
|
25
26
|
publishing the reviewed artifact remain separate, independently gated steps.
|
|
26
27
|
There is no compatibility path that returns a bearer from the server.
|
|
27
28
|
|
|
@@ -128,7 +129,8 @@ enrollment and attach routes never create or widen grants.
|
|
|
128
129
|
|
|
129
130
|
## Cube Creation
|
|
130
131
|
|
|
131
|
-
|
|
132
|
+
Introduced under protocol v4 and retained in v5, `POST /api/cubes` requires an
|
|
133
|
+
active parent-client credential
|
|
132
134
|
with the persisted `create_cube` server capability. Ordinary clients, revoked
|
|
133
135
|
clients, and drone sessions cannot use it. Its strict payload is:
|
|
134
136
|
|
|
@@ -190,6 +192,40 @@ repository may create another cube, subject to implementation quotas. `owner_id`
|
|
|
190
192
|
and role labels remain metadata; cube access derives only from the explicit
|
|
191
193
|
cube-scoped grant.
|
|
192
194
|
|
|
195
|
+
## Existing Repository Cube Resolution and Association
|
|
196
|
+
|
|
197
|
+
Repository lookup and adoption are separate authenticated operations. Before
|
|
198
|
+
name discovery or any prompt, a client sends the canonical `repository` identity
|
|
199
|
+
and bounded `working_repo_name` to the read-only
|
|
200
|
+
`POST /api/repository-cubes/resolve` operation. It returns exactly
|
|
201
|
+
`{ "result": "none" }` when no association exists for that authenticated client,
|
|
202
|
+
or the stored authoritative cube name, template, repository display, human-seat
|
|
203
|
+
role ID, default-worker role ID, and `manage` access with `result: "resolved"`.
|
|
204
|
+
The resolver never mutates state or infers an association from a cube name.
|
|
205
|
+
Associations are scoped to the authenticated client. Cross-client bindings never
|
|
206
|
+
produce a conflict or existence signal. If a same-client association points to a
|
|
207
|
+
cube for which the caller no longer has `manage` access, read-only resolution
|
|
208
|
+
returns `none` rather than exposing the binding.
|
|
209
|
+
|
|
210
|
+
After separate user confirmation, `PUT /api/repository-cubes/association`
|
|
211
|
+
accepts an explicit canonical cube UUID plus the same repository identity and
|
|
212
|
+
display fields. The server requires authenticated `manage` authority for that
|
|
213
|
+
cube and atomically persists the association before returning the same
|
|
214
|
+
authoritative resolved shape. Repeating the same cube/repository binding is
|
|
215
|
+
idempotent. A repository already bound to another cube returns HTTP `409`
|
|
216
|
+
`REPOSITORY_ALREADY_ASSOCIATED`; a cube already bound to another repository
|
|
217
|
+
returns HTTP `409` `CUBE_ALREADY_ASSOCIATED`. A legacy cube whose authoritative
|
|
218
|
+
human-seat or default-worker roles are invalid returns HTTP `409` `INVALID_INPUT`.
|
|
219
|
+
All three outcomes perform zero mutation and use static, non-enumerating
|
|
220
|
+
diagnostics: neither `message` nor `details` may name or echo a conflicting cube
|
|
221
|
+
ID or repository identity, regardless of the caller's access. An inaccessible
|
|
222
|
+
target cube, or a same-client repository binding whose cube is no longer
|
|
223
|
+
accessible, returns HTTP `403` `ACCESS_DENIED` without distinguishing the hidden
|
|
224
|
+
state. Names are discovery and display values only. Implementations must not
|
|
225
|
+
silently infer or backfill an
|
|
226
|
+
association, report success after a client-local write alone, or overload cube
|
|
227
|
+
creation as the read-only preflight.
|
|
228
|
+
|
|
193
229
|
## Conformance
|
|
194
230
|
|
|
195
231
|
`ENROLLMENT_RETRY_CONFORMANCE` covers exact retry stability plus retry-key,
|
|
@@ -207,4 +243,10 @@ violation fails conformance.
|
|
|
207
243
|
display readback, and mismatch rejection for cube name, repository kind/value,
|
|
208
244
|
and template. `CREATE_CUBE_ASSOCIATION_CONFORMANCE` distinguishes no-mutation
|
|
209
245
|
resolution of an existing repository association from creation for a different,
|
|
210
|
-
unassociated repository.
|
|
246
|
+
unassociated repository. `RESOLVE_REPOSITORY_CUBE_CONFORMANCE` pins explicit
|
|
247
|
+
none and authoritative no-mutation readback. `ASSOCIATE_REPOSITORY_CUBE_CONFORMANCE`,
|
|
248
|
+
`REPOSITORY_CUBE_PERMISSION_CONFORMANCE`, and
|
|
249
|
+
`REPOSITORY_CUBE_AUTHORITATIVE_STATE_CONFORMANCE` pin explicit-ID idempotency,
|
|
250
|
+
both conflict directions, non-enumerating diagnostics, manage authorization,
|
|
251
|
+
authoritative role validation, and zero mutation on rejection. The
|
|
252
|
+
adapter runner executes the complete association boundary against each host.
|
package/docs/releasing.md
CHANGED
|
@@ -133,11 +133,12 @@ that tag. `borgmcp-shared@0.6.0` was never published. Its annotated tag object
|
|
|
133
133
|
`fd69b08586481a60c88099dede8e4e066f73f2f2`; attempt-1 workflow run
|
|
134
134
|
`30054936226` failed in tests before build, packaging, authentication, or registry
|
|
135
135
|
mutation. Never rerun or move that tag. `borgmcp-shared@0.6.1` and
|
|
136
|
-
`borgmcp-shared@0.6.2` are published and immutable.
|
|
137
|
-
reviewed, unpublished `0.6.
|
|
136
|
+
`borgmcp-shared@0.6.2` and `borgmcp-shared@0.6.3` are published and immutable.
|
|
137
|
+
This source identifies the reviewed, unpublished `0.6.4`
|
|
138
|
+
repository-association hotfix candidate. Its
|
|
138
139
|
release requires reviewed source and explicit publication authorization through
|
|
139
140
|
one protected publish run whose terminal boundary is successful `npm publish`.
|
|
140
141
|
The workflow performs no post-publication registry readback. Consumers
|
|
141
142
|
must update the reviewed shared artifact before adopting the matching server and
|
|
142
|
-
client releases; incompatible protocol v2, v3, and
|
|
143
|
+
client releases; incompatible protocol v2, v3, v4, and v5 peers fail closed at
|
|
143
144
|
credential-free preflight.
|
package/package.json
CHANGED
|
@@ -2,6 +2,7 @@ import {
|
|
|
2
2
|
ErrorCode,
|
|
3
3
|
compareLogCursor,
|
|
4
4
|
createProtocolEnvelope,
|
|
5
|
+
decodeAssociateRepositoryCubeResponseEnvelope,
|
|
5
6
|
decodeCreateCubeResponseEnvelope,
|
|
6
7
|
decodeAppendLogResultEnvelope,
|
|
7
8
|
decodeDecisionResultEnvelope,
|
|
@@ -14,6 +15,7 @@ import {
|
|
|
14
15
|
decodeProtocolErrorEnvelope,
|
|
15
16
|
decodeProtocolTagPreflight,
|
|
16
17
|
decodeReadLogResultEnvelope,
|
|
18
|
+
decodeResolveRepositoryCubeResponseEnvelope,
|
|
17
19
|
decodeReassignDroneResultEnvelope,
|
|
18
20
|
decodeUpdateDroneRuntimeMetadataResponseEnvelope,
|
|
19
21
|
decodeSseFrames,
|
|
@@ -24,6 +26,7 @@ import {
|
|
|
24
26
|
type CreateCubeResponse,
|
|
25
27
|
type CreateCubeRepository,
|
|
26
28
|
type CubeTemplate,
|
|
29
|
+
type ResolvedRepositoryCube,
|
|
27
30
|
type LogCursor,
|
|
28
31
|
type StreamEvent,
|
|
29
32
|
type DroneRuntimeMetadata,
|
|
@@ -127,6 +130,15 @@ export interface ConformanceCreatedCubeState {
|
|
|
127
130
|
default_worker_role_matches: boolean;
|
|
128
131
|
}
|
|
129
132
|
|
|
133
|
+
export interface ConformanceRepositoryCubeFixture {
|
|
134
|
+
cube_id: string;
|
|
135
|
+
name: string;
|
|
136
|
+
template: CubeTemplate;
|
|
137
|
+
human_seat_role_id: string;
|
|
138
|
+
default_worker_role_id: string;
|
|
139
|
+
access: 'manage';
|
|
140
|
+
}
|
|
141
|
+
|
|
130
142
|
export interface ConformanceEnrollmentPrincipalState {
|
|
131
143
|
response_client_matches: boolean;
|
|
132
144
|
active_credential_bindings: number;
|
|
@@ -164,6 +176,7 @@ export interface ConformanceAdmin {
|
|
|
164
176
|
cube: ConformanceCube,
|
|
165
177
|
access?: ConformanceCubeAccess,
|
|
166
178
|
): Promise<void>;
|
|
179
|
+
revokeCubeGrant(principal: ConformancePrincipal, cube: ConformanceCube): Promise<void>;
|
|
167
180
|
createRole(cube: ConformanceCube, input: {
|
|
168
181
|
readonly roleClass: 'queen' | 'worker';
|
|
169
182
|
readonly isHumanSeat: boolean;
|
|
@@ -192,6 +205,13 @@ export interface ConformanceAdmin {
|
|
|
192
205
|
creator: ConformancePrincipal,
|
|
193
206
|
response: CreateCubeResponse,
|
|
194
207
|
): Promise<ConformanceCreatedCubeState>;
|
|
208
|
+
prepareRepositoryCube(
|
|
209
|
+
cube: ConformanceCube,
|
|
210
|
+
input: {
|
|
211
|
+
name: string;
|
|
212
|
+
template: CubeTemplate;
|
|
213
|
+
},
|
|
214
|
+
): Promise<ConformanceRepositoryCubeFixture>;
|
|
195
215
|
inspectEnrollmentPrincipal(
|
|
196
216
|
principal: ConformancePrincipal,
|
|
197
217
|
responseClientId: string,
|
|
@@ -207,6 +227,8 @@ export interface ConformanceOperations {
|
|
|
207
227
|
protocol(credential: string | null): Promise<ConformanceHttpResponse>;
|
|
208
228
|
enroll(request: unknown): Promise<ConformanceHttpResponse>;
|
|
209
229
|
createCube(credential: string | null, request: unknown): Promise<ConformanceHttpResponse>;
|
|
230
|
+
resolveRepositoryCube(credential: string | null, request: unknown): Promise<ConformanceHttpResponse>;
|
|
231
|
+
associateRepositoryCube(credential: string | null, request: unknown): Promise<ConformanceHttpResponse>;
|
|
210
232
|
attach(credential: string, request: unknown): Promise<ConformanceHttpResponse>;
|
|
211
233
|
selfMetadataUpdate(
|
|
212
234
|
credential: string,
|
|
@@ -291,6 +313,7 @@ export const ADAPTER_CONFORMANCE_FIXTURES = [
|
|
|
291
313
|
{ id: 'http.unauthenticated-liveness', area: 'http' },
|
|
292
314
|
{ id: 'protocol.credential-free-preflight', area: 'protocol' },
|
|
293
315
|
{ id: 'enrollment.retry-authority', area: 'enrollment' },
|
|
316
|
+
{ id: 'repository.explicit-association', area: 'repository' },
|
|
294
317
|
{ id: 'security.adapter-boundary-injection', area: 'security' },
|
|
295
318
|
{ id: 'security.oversize-request', area: 'security' },
|
|
296
319
|
{ id: 'security.cross-cube-isolation', area: 'security' },
|
|
@@ -981,6 +1004,244 @@ export async function runAdapterConformance(
|
|
|
981
1004
|
};
|
|
982
1005
|
});
|
|
983
1006
|
|
|
1007
|
+
await record('repository.explicit-association', async () => {
|
|
1008
|
+
const repository = {
|
|
1009
|
+
kind: 'origin' as const,
|
|
1010
|
+
value: 'https://github.com/Byte-Ventures/legacy-repository',
|
|
1011
|
+
};
|
|
1012
|
+
const prepared = await environment.admin.prepareRepositoryCube(cubeA, {
|
|
1013
|
+
name: 'Legacy Repository Cube',
|
|
1014
|
+
template: 'software-dev',
|
|
1015
|
+
});
|
|
1016
|
+
const resolveRequest = {
|
|
1017
|
+
working_repo_name: 'legacy-repository',
|
|
1018
|
+
repository,
|
|
1019
|
+
};
|
|
1020
|
+
const beforeNone = await environment.admin.observeAuthorityState();
|
|
1021
|
+
const noneResponse = await environment.operations.resolveRepositoryCube(
|
|
1022
|
+
credentialA,
|
|
1023
|
+
createProtocolEnvelope('repository-resolve-none', resolveRequest),
|
|
1024
|
+
);
|
|
1025
|
+
expectStatus(noneResponse, 200, 'Unassociated repository resolution');
|
|
1026
|
+
invariant(
|
|
1027
|
+
same(decodeResolveRepositoryCubeResponseEnvelope(noneResponse.body).payload, { result: 'none' }),
|
|
1028
|
+
'Unassociated repository did not return explicit none.',
|
|
1029
|
+
);
|
|
1030
|
+
assertStateDelta(beforeNone, await environment.admin.observeAuthorityState(), {}, 'Repository resolution');
|
|
1031
|
+
|
|
1032
|
+
const associationRequest = { cube_id: cubeA.id, ...resolveRequest };
|
|
1033
|
+
const beforeDenied = await environment.admin.observeAuthorityState();
|
|
1034
|
+
expectSecretFreeError(
|
|
1035
|
+
await environment.operations.associateRepositoryCube(
|
|
1036
|
+
credentialB,
|
|
1037
|
+
createProtocolEnvelope('repository-associate-denied', associationRequest),
|
|
1038
|
+
),
|
|
1039
|
+
403,
|
|
1040
|
+
ErrorCode.ACCESS_DENIED,
|
|
1041
|
+
'Inaccessible repository cube association',
|
|
1042
|
+
[associationRequest.cube_id, repository.value],
|
|
1043
|
+
);
|
|
1044
|
+
assertStateDelta(beforeDenied, await environment.admin.observeAuthorityState(), {}, 'Denied repository association');
|
|
1045
|
+
|
|
1046
|
+
const beforeAssociation = await environment.admin.observeAuthorityState();
|
|
1047
|
+
const associatedResponse = await environment.operations.associateRepositoryCube(
|
|
1048
|
+
credentialA,
|
|
1049
|
+
createProtocolEnvelope('repository-associate', associationRequest),
|
|
1050
|
+
);
|
|
1051
|
+
expectStatus(associatedResponse, 200, 'Explicit repository cube association');
|
|
1052
|
+
const associated = decodeAssociateRepositoryCubeResponseEnvelope(associatedResponse.body).payload;
|
|
1053
|
+
const authoritative = {
|
|
1054
|
+
result: 'resolved' as const,
|
|
1055
|
+
cube_id: prepared.cube_id,
|
|
1056
|
+
name: prepared.name,
|
|
1057
|
+
working_repo_name: resolveRequest.working_repo_name,
|
|
1058
|
+
repository,
|
|
1059
|
+
template: prepared.template,
|
|
1060
|
+
human_seat_role_id: prepared.human_seat_role_id,
|
|
1061
|
+
default_worker_role_id: prepared.default_worker_role_id,
|
|
1062
|
+
access: prepared.access,
|
|
1063
|
+
};
|
|
1064
|
+
invariant(same(associated, authoritative), 'Repository association did not return authoritative stored fields.');
|
|
1065
|
+
assertStateDelta(
|
|
1066
|
+
beforeAssociation,
|
|
1067
|
+
await environment.admin.observeAuthorityState(),
|
|
1068
|
+
{ repository_associations: 1 },
|
|
1069
|
+
'Explicit repository association',
|
|
1070
|
+
);
|
|
1071
|
+
|
|
1072
|
+
const beforeResolve = await environment.admin.observeAuthorityState();
|
|
1073
|
+
const resolvedResponse = await environment.operations.resolveRepositoryCube(
|
|
1074
|
+
credentialA,
|
|
1075
|
+
createProtocolEnvelope('repository-resolve', {
|
|
1076
|
+
...resolveRequest,
|
|
1077
|
+
working_repo_name: 'ignored-new-display',
|
|
1078
|
+
}),
|
|
1079
|
+
);
|
|
1080
|
+
expectStatus(resolvedResponse, 200, 'Associated repository resolution');
|
|
1081
|
+
invariant(
|
|
1082
|
+
same(decodeResolveRepositoryCubeResponseEnvelope(resolvedResponse.body).payload, authoritative),
|
|
1083
|
+
'Associated repository did not return stored authoritative display.',
|
|
1084
|
+
);
|
|
1085
|
+
assertStateDelta(beforeResolve, await environment.admin.observeAuthorityState(), {}, 'Associated repository resolution');
|
|
1086
|
+
|
|
1087
|
+
const beforeRetry = await environment.admin.observeAuthorityState();
|
|
1088
|
+
const retryResponse = await environment.operations.associateRepositoryCube(
|
|
1089
|
+
credentialA,
|
|
1090
|
+
createProtocolEnvelope('repository-associate-retry', associationRequest),
|
|
1091
|
+
);
|
|
1092
|
+
expectStatus(retryResponse, 200, 'Exact repository association retry');
|
|
1093
|
+
invariant(
|
|
1094
|
+
same(decodeAssociateRepositoryCubeResponseEnvelope(retryResponse.body).payload, authoritative),
|
|
1095
|
+
'Exact repository association retry changed authoritative fields.',
|
|
1096
|
+
);
|
|
1097
|
+
assertStateDelta(beforeRetry, await environment.admin.observeAuthorityState(), {}, 'Repository association retry');
|
|
1098
|
+
|
|
1099
|
+
const cubeC = await environment.admin.createCube('cube-c');
|
|
1100
|
+
await environment.admin.grantCube(principalA, cubeC);
|
|
1101
|
+
await environment.admin.prepareRepositoryCube(cubeC, {
|
|
1102
|
+
name: 'Other Legacy Cube',
|
|
1103
|
+
template: 'starter',
|
|
1104
|
+
});
|
|
1105
|
+
const beforeRepositoryConflict = await environment.admin.observeAuthorityState();
|
|
1106
|
+
expectSecretFreeError(
|
|
1107
|
+
await environment.operations.associateRepositoryCube(
|
|
1108
|
+
credentialA,
|
|
1109
|
+
createProtocolEnvelope('repository-associate-repository-conflict', {
|
|
1110
|
+
...associationRequest,
|
|
1111
|
+
cube_id: cubeC.id,
|
|
1112
|
+
}),
|
|
1113
|
+
),
|
|
1114
|
+
409,
|
|
1115
|
+
ErrorCode.REPOSITORY_ALREADY_ASSOCIATED,
|
|
1116
|
+
'Repository-to-other-cube conflict',
|
|
1117
|
+
[cubeA.id, cubeC.id, repository.value],
|
|
1118
|
+
);
|
|
1119
|
+
assertStateDelta(
|
|
1120
|
+
beforeRepositoryConflict,
|
|
1121
|
+
await environment.admin.observeAuthorityState(),
|
|
1122
|
+
{},
|
|
1123
|
+
'Repository-to-other-cube conflict',
|
|
1124
|
+
);
|
|
1125
|
+
|
|
1126
|
+
const beforeCubeConflict = await environment.admin.observeAuthorityState();
|
|
1127
|
+
expectSecretFreeError(
|
|
1128
|
+
await environment.operations.associateRepositoryCube(
|
|
1129
|
+
credentialA,
|
|
1130
|
+
createProtocolEnvelope('repository-associate-cube-conflict', {
|
|
1131
|
+
cube_id: cubeA.id,
|
|
1132
|
+
working_repo_name: 'other-repository',
|
|
1133
|
+
repository: {
|
|
1134
|
+
kind: 'origin',
|
|
1135
|
+
value: 'https://github.com/Byte-Ventures/other-repository',
|
|
1136
|
+
},
|
|
1137
|
+
}),
|
|
1138
|
+
),
|
|
1139
|
+
409,
|
|
1140
|
+
ErrorCode.CUBE_ALREADY_ASSOCIATED,
|
|
1141
|
+
'Cube-to-other-repository conflict',
|
|
1142
|
+
[cubeA.id, repository.value, 'https://github.com/Byte-Ventures/other-repository'],
|
|
1143
|
+
);
|
|
1144
|
+
assertStateDelta(
|
|
1145
|
+
beforeCubeConflict,
|
|
1146
|
+
await environment.admin.observeAuthorityState(),
|
|
1147
|
+
{},
|
|
1148
|
+
'Cube-to-other-repository conflict',
|
|
1149
|
+
);
|
|
1150
|
+
|
|
1151
|
+
const preparedB = await environment.admin.prepareRepositoryCube(cubeB, {
|
|
1152
|
+
name: 'Other Client Legacy Cube',
|
|
1153
|
+
template: 'starter',
|
|
1154
|
+
});
|
|
1155
|
+
const beforeCrossClientResolve = await environment.admin.observeAuthorityState();
|
|
1156
|
+
const crossClientResolve = await environment.operations.resolveRepositoryCube(
|
|
1157
|
+
credentialB,
|
|
1158
|
+
createProtocolEnvelope('repository-resolve-cross-client', resolveRequest),
|
|
1159
|
+
);
|
|
1160
|
+
expectStatus(crossClientResolve, 200, 'Cross-client repository resolution');
|
|
1161
|
+
invariant(
|
|
1162
|
+
same(decodeResolveRepositoryCubeResponseEnvelope(crossClientResolve.body).payload, { result: 'none' }),
|
|
1163
|
+
'Another client repository binding was exposed by resolution.',
|
|
1164
|
+
);
|
|
1165
|
+
assertStateDelta(
|
|
1166
|
+
beforeCrossClientResolve,
|
|
1167
|
+
await environment.admin.observeAuthorityState(),
|
|
1168
|
+
{},
|
|
1169
|
+
'Cross-client repository resolution',
|
|
1170
|
+
);
|
|
1171
|
+
const beforeCrossClientAssociation = await environment.admin.observeAuthorityState();
|
|
1172
|
+
const crossClientAssociation = await environment.operations.associateRepositoryCube(
|
|
1173
|
+
credentialB,
|
|
1174
|
+
createProtocolEnvelope('repository-associate-cross-client', {
|
|
1175
|
+
...associationRequest,
|
|
1176
|
+
cube_id: cubeB.id,
|
|
1177
|
+
}),
|
|
1178
|
+
);
|
|
1179
|
+
expectStatus(crossClientAssociation, 200, 'Cross-client repository association');
|
|
1180
|
+
const crossClientAssociated = decodeAssociateRepositoryCubeResponseEnvelope(
|
|
1181
|
+
crossClientAssociation.body,
|
|
1182
|
+
).payload;
|
|
1183
|
+
invariant(
|
|
1184
|
+
crossClientAssociated.cube_id === preparedB.cube_id &&
|
|
1185
|
+
crossClientAssociated.repository.value === repository.value,
|
|
1186
|
+
'Another client binding changed cross-client association identity.',
|
|
1187
|
+
);
|
|
1188
|
+
assertStateDelta(
|
|
1189
|
+
beforeCrossClientAssociation,
|
|
1190
|
+
await environment.admin.observeAuthorityState(),
|
|
1191
|
+
{ repository_associations: 1 },
|
|
1192
|
+
'Cross-client repository association',
|
|
1193
|
+
);
|
|
1194
|
+
|
|
1195
|
+
await environment.admin.revokeCubeGrant(principalA, cubeA);
|
|
1196
|
+
const beforeHiddenResolve = await environment.admin.observeAuthorityState();
|
|
1197
|
+
const hiddenResolve = await environment.operations.resolveRepositoryCube(
|
|
1198
|
+
credentialA,
|
|
1199
|
+
createProtocolEnvelope('repository-resolve-inaccessible-binding', resolveRequest),
|
|
1200
|
+
);
|
|
1201
|
+
expectStatus(hiddenResolve, 200, 'Inaccessible repository binding resolution');
|
|
1202
|
+
invariant(
|
|
1203
|
+
same(decodeResolveRepositoryCubeResponseEnvelope(hiddenResolve.body).payload, { result: 'none' }),
|
|
1204
|
+
'Inaccessible repository binding was exposed by read-only resolution.',
|
|
1205
|
+
);
|
|
1206
|
+
assertStateDelta(
|
|
1207
|
+
beforeHiddenResolve,
|
|
1208
|
+
await environment.admin.observeAuthorityState(),
|
|
1209
|
+
{},
|
|
1210
|
+
'Inaccessible repository binding resolution',
|
|
1211
|
+
);
|
|
1212
|
+
const beforeHiddenAssociation = await environment.admin.observeAuthorityState();
|
|
1213
|
+
expectSecretFreeError(
|
|
1214
|
+
await environment.operations.associateRepositoryCube(
|
|
1215
|
+
credentialA,
|
|
1216
|
+
createProtocolEnvelope('repository-associate-inaccessible-binding', {
|
|
1217
|
+
...associationRequest,
|
|
1218
|
+
cube_id: cubeC.id,
|
|
1219
|
+
}),
|
|
1220
|
+
),
|
|
1221
|
+
403,
|
|
1222
|
+
ErrorCode.ACCESS_DENIED,
|
|
1223
|
+
'Inaccessible existing repository binding',
|
|
1224
|
+
[cubeA.id, cubeC.id, repository.value],
|
|
1225
|
+
);
|
|
1226
|
+
assertStateDelta(
|
|
1227
|
+
beforeHiddenAssociation,
|
|
1228
|
+
await environment.admin.observeAuthorityState(),
|
|
1229
|
+
{},
|
|
1230
|
+
'Inaccessible existing repository binding',
|
|
1231
|
+
);
|
|
1232
|
+
await environment.admin.grantCube(principalA, cubeA);
|
|
1233
|
+
return {
|
|
1234
|
+
none: true,
|
|
1235
|
+
resolved: true,
|
|
1236
|
+
idempotent: true,
|
|
1237
|
+
repository_conflict: ErrorCode.REPOSITORY_ALREADY_ASSOCIATED,
|
|
1238
|
+
cube_conflict: ErrorCode.CUBE_ALREADY_ASSOCIATED,
|
|
1239
|
+
inaccessible: ErrorCode.ACCESS_DENIED,
|
|
1240
|
+
inaccessible_binding_hidden: true,
|
|
1241
|
+
cross_client_binding_hidden: true,
|
|
1242
|
+
};
|
|
1243
|
+
});
|
|
1244
|
+
|
|
984
1245
|
await record('security.adapter-boundary-injection', async () => {
|
|
985
1246
|
const injectedMessage = "'); DROP TABLE log_entries; --\r\ndata: forged-sse-frame";
|
|
986
1247
|
const injectedBody = JSON.stringify(
|