@aldus-runtime/release 0.2.0-next.20 → 0.2.0-next.21

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.
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -14,11 +14,11 @@
14
14
  *
15
15
  * @packageDocumentation
16
16
  */
17
- export { AdapterRegistry, RecordingReleaseAdapter, type AdapterOutcome, type RecordingAdapterOptions, type ReleaseAdapter, type ReleaseRequest, type RemoteState, } from "./adapter.js";
17
+ export { AdapterRegistry, RecordingReleaseAdapter, cannotEstablish, isCannotEstablish, type AdapterOutcome, type CannotEstablish, type RecordingAdapterOptions, type ReleaseAdapter, type ReleaseRequest, type RemoteState, } from "./adapter.js";
18
18
  export { gateEngineAuthorizer, permitAllAuthorizer, type AuthorityVerdict, type ReleaseAuthorizer, } from "./authorization.js";
19
19
  export { assertBundleValid, deriveIdempotencyKey, operationsOf, type ReleaseBundle, } from "./bundle.js";
20
20
  export { ReleaseErrorCodes, releaseError, type ReleaseErrorCode } from "./errors.js";
21
21
  export { OPERATION_STATES, ReleaseExecutor, type BundleStatus, type ExecuteOptions, type OperationState, type OperationStatus, type ReconciliationFinding, type ReconciliationReport, type ReleaseExecutorOptions, type ReleaseOutcome, } from "./executor.js";
22
- export { bestEffortOperation, requiredOperation, type BestEffortOperation, type OperationCriticality, type ReleaseOperation, type ReleaseOperationBase, type RequiredOperation, } from "./operation.js";
22
+ export { bestEffortOperation, repeatable, requiredOperation, type RepeatableDeclaration, type BestEffortOperation, type OperationCriticality, type ReleaseOperation, type ReleaseOperationBase, type RequiredOperation, } from "./operation.js";
23
23
  export { MemoryReleaseEventSink, MemoryReleaseReceiptStore, eventStoreSink, latestByKey, runStoreReceipts, type ReleaseEventSink, type ReleaseReceiptStore, } from "./ports.js";
24
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,KAAK,aAAa,GACnB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAErF,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,GACpB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,GACvB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,KAAK,aAAa,GACnB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAErF,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,GACpB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,iBAAiB,EACjB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,GACvB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -14,11 +14,11 @@
14
14
  *
15
15
  * @packageDocumentation
16
16
  */
17
- export { AdapterRegistry, RecordingReleaseAdapter, } from "./adapter.js";
17
+ export { AdapterRegistry, RecordingReleaseAdapter, cannotEstablish, isCannotEstablish, } from "./adapter.js";
18
18
  export { gateEngineAuthorizer, permitAllAuthorizer, } from "./authorization.js";
19
19
  export { assertBundleValid, deriveIdempotencyKey, operationsOf, } from "./bundle.js";
20
20
  export { ReleaseErrorCodes, releaseError } from "./errors.js";
21
21
  export { OPERATION_STATES, ReleaseExecutor, } from "./executor.js";
22
- export { bestEffortOperation, requiredOperation, } from "./operation.js";
22
+ export { bestEffortOperation, repeatable, requiredOperation, } from "./operation.js";
23
23
  export { MemoryReleaseEventSink, MemoryReleaseReceiptStore, eventStoreSink, latestByKey, runStoreReceipts, } from "./ports.js";
24
24
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACL,eAAe,EACf,uBAAuB,GAMxB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GAGpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,GAEb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAyB,MAAM,aAAa,CAAC;AAErF,OAAO,EACL,gBAAgB,EAChB,eAAe,GAShB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAMlB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,cAAc,EACd,WAAW,EACX,gBAAgB,GAGjB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,eAAe,EACf,iBAAiB,GAOlB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GAGpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,GAEb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAyB,MAAM,aAAa,CAAC;AAErF,OAAO,EACL,gBAAgB,EAChB,eAAe,GAShB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,iBAAiB,GAOlB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,cAAc,EACd,WAAW,EACX,gBAAgB,GAGjB,MAAM,YAAY,CAAC"}
@@ -12,14 +12,38 @@
12
12
  * release that reports success. Requiring the caller to *place* the operation in one list or the
13
13
  * other makes the mistake a type error rather than a typo.
14
14
  */
15
+ declare const CRITICALITY: unique symbol;
16
+ /** @see RepeatableDeclaration */
17
+ declare const REPEATABILITY: unique symbol;
15
18
  /**
16
- * Brand distinguishing the two operation categories at the type level.
19
+ * A statement that an operation's effect may be performed more than once (§17, §19.1; #169).
20
+ *
21
+ * Minted by {@link repeatable} and not writable as an object literal, for the same reason
22
+ * `RequiredOperation` is not: this licenses re-performing a real external effect, and a shape a
23
+ * caller can assemble is a shape that gets assembled from configuration by someone who has not
24
+ * thought about it.
17
25
  *
18
- * Declared but never exported as a value, so an operation of either kind can only come from the
19
- * constructor below. A caller cannot hand-write an object literal that satisfies
20
- * {@link RequiredOperation}.
26
+ * The reason is **required**. An operation that may be repeated is one an approver is being asked
27
+ * to accept the repetition of, and "safe to repeat" with no account of why is not something anyone
28
+ * can approve or audit.
21
29
  */
22
- declare const CRITICALITY: unique symbol;
30
+ export interface RepeatableDeclaration {
31
+ readonly [REPEATABILITY]: "repeatable";
32
+ /**
33
+ * Why repeating this effect is safe, for the approver and for the operator.
34
+ *
35
+ * Shown in the reconciliation finding that records the operation was not queried, so a reader
36
+ * sees the justification rather than only the outcome.
37
+ */
38
+ readonly reason: string;
39
+ }
40
+ /**
41
+ * Declare that repeating this operation's effect is safe (§17, §19.1; #169).
42
+ *
43
+ * @throws {AldusError} when the reason is empty. A declaration that licenses repetition and says
44
+ * nothing about why is the thing this exists to prevent.
45
+ */
46
+ export declare function repeatable(reason: string): RepeatableDeclaration;
23
47
  /** Fields shared by both categories. */
24
48
  export interface ReleaseOperationBase {
25
49
  /**
@@ -63,6 +87,23 @@ export interface ReleaseOperationBase {
63
87
  * The gate engine decides whether the authority is held; this package never re-decides it.
64
88
  */
65
89
  requiresAuthority?: string;
90
+ /**
91
+ * Declares that repeating this operation's effect is safe (§17, §19.1; #169).
92
+ *
93
+ * **Absent means one-shot**, which is the conservative reading and the behaviour every existing
94
+ * bundle already has. Repetition is licensed only by saying so.
95
+ *
96
+ * In the **bundle**, not on the adapter and not in `RemoteState`. §13.4 binds a release approval
97
+ * to the bundle, so a fact that licenses re-performing an effect has to be visible in the
98
+ * artifact an approver approved — an adapter-side flag would let an adapter license repeating an
99
+ * operation the approver believed happened once.
100
+ *
101
+ * Not inferable from {@link ReleaseOperationBase} either. `deriveIdempotencyKey` documents its
102
+ * result as the key that makes re-running safe, and that holds only where the destination
103
+ * honours the key; plenty do not. A key's presence is a request, not a guarantee, so
104
+ * repeatability has to be stated.
105
+ */
106
+ repeatable?: RepeatableDeclaration;
66
107
  /** Opaque parameters passed through to the adapter. Never inspected here. */
67
108
  parameters?: Readonly<Record<string, unknown>>;
68
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../src/operation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;;;;;GAMG;AACH,OAAO,CAAC,MAAM,WAAW,EAAE,OAAO,MAAM,CAAC;AAEzC,wCAAwC;AACxC,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;;;OAQG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,6EAA6E;IAC7E,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAkB,SAAQ,oBAAoB;IAC7D,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;CACpC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAoB,SAAQ,oBAAoB;IAC/D,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC;CACvC;AAED,4DAA4D;AAC5D,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,mBAAmB,CAAC;AAEvE,2EAA2E;AAC3E,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,oBAAoB,GAAG,iBAAiB,CAEpF;AAED,mFAAmF;AACnF,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,GAAG,mBAAmB,CAExF;AAED;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"operation.d.ts","sourceRoot":"","sources":["../src/operation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAWH,OAAO,CAAC,MAAM,WAAW,EAAE,OAAO,MAAM,CAAC;AAEzC,iCAAiC;AACjC,OAAO,CAAC,MAAM,aAAa,EAAE,OAAO,MAAM,CAAC;AAE3C;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,qBAAqB,CAWhE;AAED,wCAAwC;AACxC,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;;;OAQG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,6EAA6E;IAC7E,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAkB,SAAQ,oBAAoB;IAC7D,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;CACpC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAoB,SAAQ,oBAAoB;IAC/D,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,aAAa,CAAC;CACvC;AAED,4DAA4D;AAC5D,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,mBAAmB,CAAC;AAEvE,2EAA2E;AAC3E,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,oBAAoB,GAAG,iBAAiB,CAEpF;AAED,mFAAmF;AACnF,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,GAAG,mBAAmB,CAExF;AAED;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,aAAa,CAAC"}
package/dist/operation.js CHANGED
@@ -12,6 +12,28 @@
12
12
  * release that reports success. Requiring the caller to *place* the operation in one list or the
13
13
  * other makes the mistake a type error rather than a typo.
14
14
  */
15
+ /**
16
+ * Brand distinguishing the two operation categories at the type level.
17
+ *
18
+ * Declared but never exported as a value, so an operation of either kind can only come from the
19
+ * constructor below. A caller cannot hand-write an object literal that satisfies
20
+ * {@link RequiredOperation}.
21
+ */
22
+ import { ReleaseErrorCodes, releaseError } from "./errors.js";
23
+ /**
24
+ * Declare that repeating this operation's effect is safe (§17, §19.1; #169).
25
+ *
26
+ * @throws {AldusError} when the reason is empty. A declaration that licenses repetition and says
27
+ * nothing about why is the thing this exists to prevent.
28
+ */
29
+ export function repeatable(reason) {
30
+ if (reason.trim().length === 0) {
31
+ throw releaseError(ReleaseErrorCodes.OPERATION_INVALID, "A repeatable declaration must say why repeating the effect is safe. It licenses performing " +
32
+ "an external effect more than once, and an approver cannot accept that from a bare flag " +
33
+ "(contract §13.4, §17).", { category: "validation", retryable: false, details: {} });
34
+ }
35
+ return { reason };
36
+ }
15
37
  /** Declare an operation whose failure fails the release (contract §17). */
16
38
  export function requiredOperation(operation) {
17
39
  return { ...operation };
@@ -1 +1 @@
1
- {"version":3,"file":"operation.js","sourceRoot":"","sources":["../src/operation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAkFH,2EAA2E;AAC3E,MAAM,UAAU,iBAAiB,CAAC,SAA+B;IAC/D,OAAO,EAAE,GAAG,SAAS,EAAuB,CAAC;AAC/C,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,mBAAmB,CAAC,SAA+B;IACjE,OAAO,EAAE,GAAG,SAAS,EAAyB,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"operation.js","sourceRoot":"","sources":["../src/operation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;;;;;GAMG;AACH,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA8B9D;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,YAAY,CAChB,iBAAiB,CAAC,iBAAiB,EACnC,6FAA6F;YAC3F,yFAAyF;YACzF,wBAAwB,EAC1B,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAC1D,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAA2B,CAAC;AAC7C,CAAC;AA0FD,2EAA2E;AAC3E,MAAM,UAAU,iBAAiB,CAAC,SAA+B;IAC/D,OAAO,EAAE,GAAG,SAAS,EAAuB,CAAC;AAC/C,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,mBAAmB,CAAC,SAA+B;IACjE,OAAO,EAAE,GAAG,SAAS,EAAyB,CAAC;AACjD,CAAC"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@aldus-runtime/release",
3
- "version": "0.2.0-next.20",
3
+ "version": "0.2.0-next.21",
4
4
  "type": "module",
5
- "description": "Aldus Release \u2014 release bundles, resumable idempotent operations, adapter contracts, and external-state reconciliation.",
5
+ "description": "Aldus Release release bundles, resumable idempotent operations, adapter contracts, and external-state reconciliation.",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
8
8
  "type": "git",
@@ -33,12 +33,12 @@
33
33
  "typecheck:test": "tsc -p tsconfig.test.json"
34
34
  },
35
35
  "dependencies": {
36
- "@aldus-runtime/core": "0.2.0-next.20",
37
- "@aldus-runtime/file-store": "0.2.0-next.20",
38
- "@aldus-runtime/gate-engine": "0.2.0-next.20"
36
+ "@aldus-runtime/core": "0.2.0-next.21",
37
+ "@aldus-runtime/file-store": "0.2.0-next.21",
38
+ "@aldus-runtime/gate-engine": "0.2.0-next.21"
39
39
  },
40
40
  "devDependencies": {
41
- "@aldus-runtime/testkit": "0.2.0-next.20",
41
+ "@aldus-runtime/testkit": "0.2.0-next.21",
42
42
  "@types/node": "^26.2.0",
43
43
  "typescript": "^7.0.2",
44
44
  "vitest": "^4.1.10"
package/src/adapter.ts CHANGED
@@ -40,6 +40,21 @@ export type AdapterOutcome =
40
40
  remoteId?: string;
41
41
  /** Address of the released item, where one is meaningful. */
42
42
  remoteUrl?: string;
43
+ /**
44
+ * Something an operator needs to know about a success (§20; #169 item 4).
45
+ *
46
+ * `failed` has `message` and `pending` has `message?`; `succeeded` had nowhere to put a
47
+ * sentence at all. An adapter that removed a marker from one video of several, or that found
48
+ * no marker and therefore removed nothing, succeeded — and had to discard the only part an
49
+ * operator would have wanted.
50
+ *
51
+ * **Not a channel for a qualified absence.** An adapter that cannot establish remote state
52
+ * returns {@link cannotEstablish} from `lookup`; using this to footnote a fabricated
53
+ * `exists: false` would be the same false record with better documentation (#169 item 3).
54
+ *
55
+ * Already redacted by the adapter (§19.2), like every other adapter-supplied string.
56
+ */
57
+ note?: string;
43
58
  }
44
59
  | {
45
60
  status: "failed";
@@ -61,14 +76,83 @@ export type AdapterOutcome =
61
76
  message?: string;
62
77
  };
63
78
 
64
- /** What reconciliation found at the destination. */
65
- export interface RemoteState {
66
- /** Whether the destination holds the result of this operation. */
67
- exists: boolean;
68
- remoteId?: string;
69
- remoteUrl?: string;
79
+ /** @see CannotEstablish */
80
+ declare const CANNOT_ESTABLISH: unique symbol;
81
+
82
+ /**
83
+ * Authorities this process minted. A cast cannot manufacture membership.
84
+ *
85
+ * The same runtime proof `SynthesisPermit` uses, and for the same reason: the brand above is a
86
+ * phantom, absent at runtime, so a `RemoteState` narrowing that trusted it would trust a type
87
+ * assertion. #170 has the longer version of this argument — a check that assumes the type it is
88
+ * checking is not a check.
89
+ */
90
+ const ISSUED_CANNOT_ESTABLISH = new WeakSet<object>();
91
+
92
+ /**
93
+ * The destination could not be queried, so whether it holds the operation is unknown (#169).
94
+ *
95
+ * Distinct from `exists: false` in the way that matters: **`exists: false` is the answer only a
96
+ * completed search can give.** Before this, an adapter that could not establish the answer had two
97
+ * options — return `false` and assert a search nobody performed, or throw and abort the whole
98
+ * reconciliation pass before a single operation executed. Both were forced, and adopters took the
99
+ * first.
100
+ *
101
+ * Minted by {@link cannotEstablish} and not assemblable, because a state that suppresses a
102
+ * publish-safety check must not be reachable by writing an object literal.
103
+ */
104
+ export interface CannotEstablish {
105
+ readonly [CANNOT_ESTABLISH]: "cannot_establish";
106
+ /**
107
+ * Why the answer could not be established, for the operator (§20).
108
+ *
109
+ * **Required.** An adapter that cannot establish something and cannot say why has produced a
110
+ * finding nobody can act on — a rate limit, a permission, and a destination that does not retain
111
+ * what would identify the operation are three different problems with three different responses.
112
+ */
113
+ readonly reason: string;
70
114
  }
71
115
 
116
+ /**
117
+ * Declare that the destination could not be queried (§17, §19.1; #169).
118
+ *
119
+ * @throws {AldusError} when the reason is empty.
120
+ */
121
+ export function cannotEstablish(reason: string): CannotEstablish {
122
+ if (typeof reason !== "string" || reason.trim().length === 0) {
123
+ throw releaseError(
124
+ ReleaseErrorCodes.OPERATION_INVALID,
125
+ "An unestablished remote state must say why. A rate limit, a permission problem and a " +
126
+ "destination that does not retain what identifies the operation call for three different " +
127
+ "responses, and an operator cannot tell them apart from the absence of an answer (§17).",
128
+ { category: "validation", retryable: false, details: {} },
129
+ );
130
+ }
131
+ const state = { reason } as CannotEstablish;
132
+ ISSUED_CANNOT_ESTABLISH.add(state);
133
+ return state;
134
+ }
135
+
136
+ /** Whether a remote state is an issued {@link CannotEstablish}. Membership, not shape. */
137
+ export function isCannotEstablish(state: RemoteState): state is CannotEstablish {
138
+ return typeof state === "object" && state !== null && ISSUED_CANNOT_ESTABLISH.has(state);
139
+ }
140
+
141
+ /** What reconciliation found at the destination. */
142
+ export type RemoteState =
143
+ | {
144
+ /**
145
+ * Whether the destination holds the result of this operation.
146
+ *
147
+ * `false` asserts a **completed search**. An adapter that did not or could not search
148
+ * returns {@link cannotEstablish} instead.
149
+ */
150
+ exists: boolean;
151
+ remoteId?: string;
152
+ remoteUrl?: string;
153
+ }
154
+ | CannotEstablish;
155
+
72
156
  /**
73
157
  * An adopter's implementation for one destination.
74
158
  *
@@ -129,13 +213,52 @@ export class AdapterRegistry {
129
213
  }
130
214
 
131
215
  /** Scripted behaviour for {@link RecordingReleaseAdapter}. */
216
+ /**
217
+ * Build the remote-state map from either accepted shape, and refuse anything else.
218
+ *
219
+ * Refusing rather than tolerating, because the failure this replaces was silence: a mis-seeded
220
+ * harness answered every lookup as a completed search finding nothing, and a test written against
221
+ * it would assert the wrong behaviour and pass. A double that lies quietly is worse than one that
222
+ * will not start.
223
+ */
224
+ function seedRemote(remote: RecordingAdapterOptions["remote"]): Map<string, RemoteState> {
225
+ if (remote === undefined) return new Map();
226
+ if (remote instanceof Map) return new Map(remote);
227
+ if (typeof remote === "object" && remote !== null && !Array.isArray(remote)) {
228
+ return new Map(Object.entries(remote));
229
+ }
230
+ throw releaseError(
231
+ ReleaseErrorCodes.OPERATION_INVALID,
232
+ "A recording adapter's `remote` seed must be a plain object or a Map keyed by idempotency " +
233
+ "key. Anything else seeds nothing, and every lookup then answers as a completed search " +
234
+ "that found nothing — which is the defect this double is used to test for.",
235
+ { category: "validation", retryable: false, details: {} },
236
+ );
237
+ }
238
+
132
239
  export interface RecordingAdapterOptions {
133
240
  /** Outcome per `operationId`. Anything unlisted succeeds. */
134
241
  outcomes?: Readonly<Record<string, AdapterOutcome>>;
135
- /** Remote state per idempotency key, as reconciliation would find it. */
136
- remote?: Readonly<Record<string, RemoteState>>;
242
+ /**
243
+ * Remote state per idempotency key, as reconciliation would find it.
244
+ *
245
+ * A plain object or a `Map`, because the field it becomes is a `Map` and seeding it with one is
246
+ * the natural mistake. `Object.entries(aMap)` is `[]`, so a `Map` used to seed **nothing**, with
247
+ * no error — and every lookup then fell through to `{ exists: false }`, which reads as a
248
+ * completed search finding nothing. The same trap as an adapter returning `{ present: false }`:
249
+ * an input accepted quietly and answered as though nothing was there.
250
+ */
251
+ remote?: Readonly<Record<string, RemoteState>> | ReadonlyMap<string, RemoteState>;
137
252
  /** Omit `lookup` entirely, modelling a destination that cannot be queried. */
138
253
  withoutLookup?: boolean;
254
+ /**
255
+ * Make `lookup` throw for these `operationId`s, modelling an unanticipated query failure.
256
+ *
257
+ * Distinct from returning {@link cannotEstablish}: an adapter that knows it cannot answer says
258
+ * so, and this is the adapter that does not know — a quota error, a dropped connection. The
259
+ * executor has to survive both (#169).
260
+ */
261
+ lookupThrowsFor?: readonly string[];
139
262
  }
140
263
 
141
264
  /**
@@ -169,10 +292,13 @@ export class RecordingReleaseAdapter implements ReleaseAdapter {
169
292
  constructor(destination: string, options: RecordingAdapterOptions = {}) {
170
293
  this.destination = destination;
171
294
  this.#options = options;
172
- this.remote = new Map(Object.entries(options.remote ?? {}));
295
+ this.remote = seedRemote(options.remote);
173
296
  if (options.withoutLookup !== true) {
174
297
  this.lookup = (request: ReleaseRequest): Promise<RemoteState> => {
175
298
  this.lookedUp.push(request);
299
+ if (options.lookupThrowsFor?.includes(request.operation.operationId) === true) {
300
+ return Promise.reject(new Error("destination query failed"));
301
+ }
176
302
  return Promise.resolve(this.remote.get(request.idempotencyKey) ?? { exists: false });
177
303
  };
178
304
  }
package/src/bundle.ts CHANGED
@@ -74,6 +74,44 @@ export function assertBundleValid(bundle: ReleaseBundle): void {
74
74
  );
75
75
  }
76
76
  seen.add(operation.operationId);
77
+
78
+ // Checked at runtime, because the type is not the enforcement. `repeatable()` refuses an empty
79
+ // reason and nothing stops a caller writing `{ reason: "" } as RepeatableDeclaration` — and
80
+ // the code that will assemble operations from configuration is exactly the code that does
81
+ // that. Without this the operation was treated as repeatable and the warning ended in a bare
82
+ // colon where the justification should be.
83
+ //
84
+ // Higher stakes than the usual version of this argument: the declaration licenses performing
85
+ // an external effect more than once, and §13.4 binds a release approval to the bundle, so a
86
+ // blank reason is an approval of nothing.
87
+ //
88
+ // The **shape** as well as the emptiness. The first version read `repeatable.reason.trim()`,
89
+ // which assumes `reason` is a string — the assumption this check exists because it cannot
90
+ // make. `repeatable: true` is the single most likely thing someone writes in a config file
91
+ // when they mean this, and it threw a bare `TypeError` with no code, no bundle or operation
92
+ // id, and no sentence saying what was wrong. Fail-closed, so nothing unsafe happened; what was
93
+ // lost was the refusal, arriving from exactly the source the paragraph above names.
94
+ const declaration: unknown = (operation as { repeatable?: unknown }).repeatable;
95
+ if (declaration !== undefined) {
96
+ const reason =
97
+ typeof declaration === "object" && declaration !== null
98
+ ? (declaration as { reason?: unknown }).reason
99
+ : undefined;
100
+ if (typeof reason !== "string" || reason.trim().length === 0) {
101
+ throw releaseError(
102
+ ReleaseErrorCodes.OPERATION_INVALID,
103
+ `Release bundle "${bundle.bundleId}" declares "${operation.operationId}" safe to ` +
104
+ "repeat without a usable reason. Repeating an external effect is something an " +
105
+ "approver accepts, and neither a blank justification nor a value that is not a " +
106
+ "declaration is something anyone can approve. Build it with `repeatable(reason)` " +
107
+ "(contract §13.4, §17).",
108
+ {
109
+ category: "validation",
110
+ details: { bundleId: bundle.bundleId, operationId: operation.operationId },
111
+ },
112
+ );
113
+ }
114
+ }
77
115
  }
78
116
  }
79
117
 
package/src/errors.ts CHANGED
@@ -26,6 +26,13 @@ export const ReleaseErrorCodes = {
26
26
  DUPLICATE_OPERATION: "ALDUS_RELEASE_DUPLICATE_OPERATION",
27
27
  /** A bundle was constructed with no operations at all. */
28
28
  EMPTY_BUNDLE: "ALDUS_RELEASE_EMPTY_BUNDLE",
29
+ /**
30
+ * An operation declaration is not usable as written (#169).
31
+ *
32
+ * Today: a repeatable declaration with no reason. It licenses performing an external effect more
33
+ * than once, and an approver cannot accept that from a bare flag (§13.4, §17).
34
+ */
35
+ OPERATION_INVALID: "ALDUS_RELEASE_OPERATION_INVALID",
29
36
  /**
30
37
  * A required operation failed, so the release did not complete.
31
38
  *