@ttctl/core 0.1.0-rc.7 → 0.1.0-rc.8
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/dist/__generated__/gateway.d.ts +9 -9
- package/dist/__generated__/gateway.d.ts.map +1 -1
- package/dist/__generated__/zod-schemas.d.ts +9 -9
- package/dist/__generated__/zod-schemas.d.ts.map +1 -1
- package/dist/__generated__/zod-schemas.js +9 -9
- package/dist/__generated__/zod-schemas.js.map +1 -1
- package/dist/__tests__/fixtures/profile/builders.d.ts.map +1 -1
- package/dist/__tests__/fixtures/profile/builders.js +1 -0
- package/dist/__tests__/fixtures/profile/builders.js.map +1 -1
- package/dist/__tests__/fixtures/profile/data.d.ts.map +1 -1
- package/dist/__tests__/fixtures/profile/data.js +2 -0
- package/dist/__tests__/fixtures/profile/data.js.map +1 -1
- package/dist/consent.d.ts +236 -0
- package/dist/consent.d.ts.map +1 -0
- package/dist/consent.js +225 -0
- package/dist/consent.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/services/applications/index.d.ts +917 -13
- package/dist/services/applications/index.d.ts.map +1 -1
- package/dist/services/applications/index.js +1284 -6
- package/dist/services/applications/index.js.map +1 -1
- package/dist/services/jobs/index.d.ts.map +1 -1
- package/dist/services/jobs/index.js.map +1 -1
- package/dist/services/payments/index.d.ts +66 -0
- package/dist/services/payments/index.d.ts.map +1 -1
- package/dist/services/payments/index.js +120 -0
- package/dist/services/payments/index.js.map +1 -1
- package/dist/services/profile/employment/index.d.ts +50 -4
- package/dist/services/profile/employment/index.d.ts.map +1 -1
- package/dist/services/profile/employment/index.js +73 -16
- package/dist/services/profile/employment/index.js.map +1 -1
- package/dist/services/profile/reviews/index.d.ts +31 -1
- package/dist/services/profile/reviews/index.d.ts.map +1 -1
- package/dist/services/profile/reviews/index.js +19 -1
- package/dist/services/profile/reviews/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builders.js","sourceRoot":"","sources":["../../../../src/__tests__/fixtures/profile/builders.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"builders.js","sourceRoot":"","sources":["../../../../src/__tests__/fixtures/profile/builders.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/fixtures/profile/data.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,UAAU,EACV,eAAe,EACf,aAAa,EACb,eAAe,EACf,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;GAqBG;AAWH,eAAO,MAAM,gBAAgB,EAAE,eAQ9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,eAQ5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,eAQ9B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,eAQ3B,CAAC;AAMF,eAAO,MAAM,4BAA4B,EAAE,aAoB1C,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,aAmBnC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,aAmBrC,CAAC;AAMF,eAAO,MAAM,6BAA6B,EAAE,
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/fixtures/profile/data.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,UAAU,EACV,eAAe,EACf,aAAa,EACb,eAAe,EACf,UAAU,EACX,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;;GAqBG;AAWH,eAAO,MAAM,gBAAgB,EAAE,eAQ9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,eAQ5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,eAQ9B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,eAQ3B,CAAC;AAMF,eAAO,MAAM,4BAA4B,EAAE,aAoB1C,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,aAmBnC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,aAmBrC,CAAC;AAMF,eAAO,MAAM,6BAA6B,EAAE,UAuB3C,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,UAsBxC,CAAC;AAMF,eAAO,MAAM,qBAAqB,EAAE,SAUnC,CAAC;AAMF,eAAO,MAAM,YAAY,EAAE,aAW1B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,aAWvB,CAAC;AAMF,eAAO,MAAM,gBAAgB,EAAE,eAK9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,eAKjC,CAAC;AAMF,eAAO,MAAM,OAAO,EAAE,UAMrB,CAAC"}
|
|
@@ -150,6 +150,7 @@ export const EMPLOYMENT_PRINCIPAL_ENGINEER = {
|
|
|
150
150
|
primaryGeography: { id: "geo_test_us", code: "US", name: "United States" },
|
|
151
151
|
employerId: "V1-Employer-test-001",
|
|
152
152
|
skills: [{ id: "sk_test_typescript", name: "TypeScript" }],
|
|
153
|
+
managementExperience: null,
|
|
153
154
|
};
|
|
154
155
|
export const EMPLOYMENT_SENIOR_ENGINEER = {
|
|
155
156
|
id: "emp_test_002",
|
|
@@ -172,6 +173,7 @@ export const EMPLOYMENT_SENIOR_ENGINEER = {
|
|
|
172
173
|
primaryGeography: { id: "geo_test_us", code: "US", name: "United States" },
|
|
173
174
|
employerId: "V1-Employer-test-002",
|
|
174
175
|
skills: [{ id: "sk_test_typescript", name: "TypeScript" }],
|
|
176
|
+
managementExperience: null,
|
|
175
177
|
};
|
|
176
178
|
// -----------------------------------------------------------------------
|
|
177
179
|
// Education
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../../../src/__tests__/fixtures/profile/data.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAYpC;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,0EAA0E;AAC1E,SAAS;AACT,0EAA0E;AAE1E,yEAAyE;AACzE,kEAAkE;AAClE,sEAAsE;AACtE,8DAA8D;AAE9D,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,EAAE,EAAE,aAAa;IACjB,UAAU,EAAE,EAAE,EAAE,UAAU;IAC1B,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,EAAE;IACjD,gBAAgB,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC7C,EAAE,EAAE,aAAa;IACjB,UAAU,EAAE,EAAE,EAAE,UAAU;IAC1B,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,EAAE;IACjD,gBAAgB,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,EAAE,EAAE,aAAa;IACjB,UAAU,EAAE,EAAE,EAAE,UAAU;IAC1B,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,YAAY,EAAE;IAClD,gBAAgB,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAoB;IAC5C,EAAE,EAAE,aAAa;IACjB,UAAU,EAAE,EAAE,EAAE,UAAU;IAC1B,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE;IAC/C,gBAAgB,EAAE,CAAC;CACpB,CAAC;AAEF,0EAA0E;AAC1E,wEAAwE;AACxE,0EAA0E;AAE1E,MAAM,CAAC,MAAM,4BAA4B,GAAkB;IACzD,EAAE,EAAE,eAAe;IACnB,KAAK,EAAE,gCAAgC;IACvC,WAAW,EACT,4GAA4G;QAC5G,2GAA2G;QAC3G,sFAAsF;IACxF,IAAI,EAAE,yCAAyC;IAC/C,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,uCAAuC;IACnD,cAAc,EACZ,8GAA8G;IAChH,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,gBAAgB;IACrC,UAAU,EAAE,0BAA0B;IACtC,aAAa,EAAE,IAAI;IACnB,aAAa,EAAE,IAAI;IACnB,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAC1D,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;CACrE,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAkB;IAClD,EAAE,EAAE,eAAe;IACnB,KAAK,EAAE,4BAA4B;IACnC,WAAW,EACT,uGAAuG;QACvG,0GAA0G;QAC1G,iEAAiE;IACnE,IAAI,EAAE,+CAA+C;IACrD,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,qGAAqG;IACrH,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,gBAAgB;IACrC,UAAU,EAAE,6BAA6B;IACzC,aAAa,EAAE,KAAK;IACpB,aAAa,EAAE,IAAI;IACnB,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAC1D,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;CACzE,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAkB;IACpD,EAAE,EAAE,eAAe;IACnB,KAAK,EAAE,iCAAiC;IACxC,WAAW,EACT,8GAA8G;QAC9G,sGAAsG;QACtG,uBAAuB;IACzB,IAAI,EAAE,gDAAgD;IACtD,SAAS,EAAE,KAAK;IAChB,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,qGAAqG;IACrH,iBAAiB,EAAE,IAAI;IACvB,mBAAmB,EAAE,mBAAmB;IACxC,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,KAAK;IACpB,aAAa,EAAE,KAAK;IACpB,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAC1D,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;CAC5D,CAAC;AAEF,0EAA0E;AAC1E,iDAAiD;AACjD,0EAA0E;AAE1E,MAAM,CAAC,MAAM,6BAA6B,GAAe;IACvD,EAAE,EAAE,cAAc;IAClB,OAAO,EAAE,gBAAgB;IACzB,QAAQ,EAAE,oBAAoB;IAC9B,cAAc,EAAE,0BAA0B;IAC1C,SAAS,EAAE,KAAK;IAChB,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI,EAAE,eAAe;IAC9B,eAAe,EAAE;QACf,+GAA+G;QAC/G,4HAA4H;QAC5H,sGAAsG;KACvG;IACD,SAAS,EAAE,IAAI;IACf,aAAa,EAAE,IAAI;IACnB,aAAa,EAAE,KAAK;IACpB,iBAAiB,EAAE,IAAI;IACvB,WAAW,EAAE,mBAAmB;IAChC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC3D,gBAAgB,EAAE,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE;IAC1E,UAAU,EAAE,sBAAsB;IAClC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../../../src/__tests__/fixtures/profile/data.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-domain consent gate for INFERRED-destructive mutations.
|
|
3
|
+
*
|
|
4
|
+
* Implements [ADR-009 (ttctl)](../../../hq/engineering/adr/ADR-009-per-domain-consent-vocabulary.md):
|
|
5
|
+
* "Per-Domain Consent Vocabulary for INFERRED-Destructive Mutations". The
|
|
6
|
+
* gate is a TTCtl-layer defense — orthogonal to wire-level consent fields
|
|
7
|
+
* such as `JobApply.consentIssued: Boolean!` (ADR-008's apply-funnel
|
|
8
|
+
* compliance signal). The TTCtl-layer gate sits at the Zod input boundary
|
|
9
|
+
* of services that trigger irreversible platform-side state changes and
|
|
10
|
+
* forces the caller (CLI flag, MCP input, agent loop) to explicitly opt in
|
|
11
|
+
* before any wire call is issued.
|
|
12
|
+
*
|
|
13
|
+
* ## Four domains, four field names
|
|
14
|
+
*
|
|
15
|
+
* Per ADR-009 § Decision Part 1, each operational domain has a distinct
|
|
16
|
+
* consent-field name so the consent ceremony is forensically distinct in
|
|
17
|
+
* agent behaviour models, MCP tool descriptions, CLI `--help` text, and
|
|
18
|
+
* audit logs:
|
|
19
|
+
*
|
|
20
|
+
* | Domain | Consent field | CLI flag |
|
|
21
|
+
* | ---------------------- | ----------------------------------- | ------------------------------ |
|
|
22
|
+
* | `interview-action` | `interviewActionConsentIssued` | `--consent-interview-action` |
|
|
23
|
+
* | `payment-routing` | `paymentRoutingConsentIssued` | `--consent-payment-routing` |
|
|
24
|
+
* | `profile-capability` | `profileCapabilityConsentIssued` | `--consent-profile-capability` |
|
|
25
|
+
* | `timesheet-billing` | `timesheetBillingConsentIssued` | `--consent-timesheet-billing` |
|
|
26
|
+
*
|
|
27
|
+
* The Zod primitive is `z.literal(true)` across all domains (preserved
|
|
28
|
+
* from ADR-008's precedent). What varies is the FIELD NAME — which is
|
|
29
|
+
* what the agent's behaviour model and the audit log key off.
|
|
30
|
+
*
|
|
31
|
+
* ## Payment-routing CREATE_* — supplementary factors
|
|
32
|
+
*
|
|
33
|
+
* Per ADR-009 § Decision Part 2, payment-routing CREATE_* mutations (e.g.
|
|
34
|
+
* `CREATE_PAYONEER_PAYMENT_OPTION`, `CREATE_TOPTAL_PAYMENT_ACCOUNT`)
|
|
35
|
+
* create external account bindings that TTCtl cannot rescind from its
|
|
36
|
+
* side once committed. `z.literal(true)` alone is insufficient. The gate
|
|
37
|
+
* additionally requires:
|
|
38
|
+
*
|
|
39
|
+
* 1. `idempotencyKey: string` of length >= {@link IDEMPOTENCY_KEY_MIN_LENGTH}
|
|
40
|
+
* — operator-supplied UUID-or-similar. Collision = the same
|
|
41
|
+
* operation, idempotent.
|
|
42
|
+
* 2. `accountIdentifierEcho: string` of length >= {@link ACCOUNT_ECHO_MIN_LENGTH}
|
|
43
|
+
* — operator re-states the account ID/email/handle. The gate
|
|
44
|
+
* compares the echo against the caller-supplied
|
|
45
|
+
* {@link PaymentRoutingCreateContext.expectedAccountIdentifier} —
|
|
46
|
+
* mismatch raises a `ConsentRequiredError` BEFORE any wire call.
|
|
47
|
+
*
|
|
48
|
+
* The caller (the payment-routing CREATE service function in #453 /
|
|
49
|
+
* #454) supplies the `expectedAccountIdentifier` from its canonical
|
|
50
|
+
* input field (e.g. the Payoneer email, the Toptal account ID).
|
|
51
|
+
*
|
|
52
|
+
* ## Env-var bypass for non-interactive contexts
|
|
53
|
+
*
|
|
54
|
+
* Setting `TTCTL_ALLOW_INFERRED_DESTRUCTIVE=1` ({@link CONSENT_ENV_VAR})
|
|
55
|
+
* bypasses the consent-LITERAL check for all four domains. This is for
|
|
56
|
+
* non-interactive CI / test contexts where the human-in-the-loop
|
|
57
|
+
* ceremony is inappropriate. The bypass does NOT cover the
|
|
58
|
+
* `idempotencyKey` + `accountIdentifierEcho` factors for payment-routing
|
|
59
|
+
* CREATEs — those gates protect against bugs in any caller (agent or
|
|
60
|
+
* human) regardless of interactivity, per ADR-009 § Decision Part 4.
|
|
61
|
+
*
|
|
62
|
+
* ## Why this is NOT integrated with `JobApply.consentIssued`
|
|
63
|
+
*
|
|
64
|
+
* `JobApply.consentIssued: Boolean!` (ADR-008) is a WIRE-level field
|
|
65
|
+
* passed through to Toptal's mutation as a legal-compliance signal
|
|
66
|
+
* (apply-terms acceptance). It is a passthrough constant, not a
|
|
67
|
+
* TTCtl-layer gate field. The two are orthogonal:
|
|
68
|
+
*
|
|
69
|
+
* - ADR-008's `consentIssued` (wire-level): `Boolean!` on `JobApply`.
|
|
70
|
+
* Stays as-is.
|
|
71
|
+
* - ADR-009's tokens (TTCtl-layer): per-domain Zod literals. Do not
|
|
72
|
+
* appear on the wire.
|
|
73
|
+
*
|
|
74
|
+
* ## Coexistence with `applications.apply()`'s inline gate
|
|
75
|
+
*
|
|
76
|
+
* `applications.apply()` (the ADR-008 site) keeps its own inline
|
|
77
|
+
* literal-true check that throws
|
|
78
|
+
* `ApplicationsError("CONSENT_REQUIRED")` — NOT
|
|
79
|
+
* `ConsentRequiredError`. Two intentional differences from ADR-009:
|
|
80
|
+
*
|
|
81
|
+
* 1. **Error class**: `ApplicationsError` is the applications domain's
|
|
82
|
+
* taxonomy (extends `Error`); `ConsentRequiredError` is the
|
|
83
|
+
* cross-cutting consent taxonomy (extends `TtctlError`). The two
|
|
84
|
+
* error classes coexist by design — `apply()`'s gate predates the
|
|
85
|
+
* cross-cutting abstraction and is not refactored because the
|
|
86
|
+
* apply-funnel's `consentIssued` field name is also the wire field
|
|
87
|
+
* name (ADR-008), tying the gate's identity to the applications
|
|
88
|
+
* domain.
|
|
89
|
+
* 2. **Gate location**: `apply()` keeps an inline check;
|
|
90
|
+
* `submitForReview()` and future ADR-009 consumers delegate to
|
|
91
|
+
* {@link ensureDestructiveConsent}. The error code
|
|
92
|
+
* (`CONSENT_REQUIRED`) is the same; the constructor wrapping it
|
|
93
|
+
* differs.
|
|
94
|
+
*
|
|
95
|
+
* Future ADR-009 consumers (the 17 mutations enumerated in ADR-009
|
|
96
|
+
* § Context) all use this utility; the inline pattern in `apply()` is
|
|
97
|
+
* not the canonical form going forward — it is the historical form
|
|
98
|
+
* preserved for the apply-funnel only.
|
|
99
|
+
*/
|
|
100
|
+
import { TtctlError } from "./auth/errors.js";
|
|
101
|
+
/**
|
|
102
|
+
* Operational domains for per-domain consent ceremonies, per
|
|
103
|
+
* ADR-009 § Decision Part 1.
|
|
104
|
+
*
|
|
105
|
+
* The kebab-case form is what callers pass as `domain` to
|
|
106
|
+
* {@link ensureDestructiveConsent}; it is also the CLI-flag suffix
|
|
107
|
+
* (e.g. `--consent-profile-capability`). The corresponding Zod field
|
|
108
|
+
* name (camelCase + `ConsentIssued`) is in {@link CONSENT_FIELD}.
|
|
109
|
+
*/
|
|
110
|
+
export type ConsentDomain = "interview-action" | "payment-routing" | "profile-capability" | "timesheet-billing";
|
|
111
|
+
/**
|
|
112
|
+
* Per-domain Zod field name (camelCase). Maps {@link ConsentDomain} to
|
|
113
|
+
* the input-field key the caller must set to `true` to satisfy the
|
|
114
|
+
* gate. Per ADR-009 § Decision Part 1.
|
|
115
|
+
*/
|
|
116
|
+
export declare const CONSENT_FIELD: Readonly<Record<ConsentDomain, string>>;
|
|
117
|
+
/**
|
|
118
|
+
* Environment-variable bypass for the consent-LITERAL check in
|
|
119
|
+
* non-interactive contexts. Does NOT bypass the
|
|
120
|
+
* `idempotencyKey` / `accountIdentifierEcho` factors for payment-routing
|
|
121
|
+
* CREATEs — see ADR-009 § Decision Part 4.
|
|
122
|
+
*
|
|
123
|
+
* Set to the literal string `"1"` to enable. Any other value
|
|
124
|
+
* (including empty string, `"0"`, `"true"`, unset) keeps the gate
|
|
125
|
+
* enforced.
|
|
126
|
+
*/
|
|
127
|
+
export declare const CONSENT_ENV_VAR = "TTCTL_ALLOW_INFERRED_DESTRUCTIVE";
|
|
128
|
+
/**
|
|
129
|
+
* Minimum length of the `idempotencyKey` field required for
|
|
130
|
+
* payment-routing CREATE_* mutations. 16 chars accommodates a 128-bit
|
|
131
|
+
* UUID v4 in canonical form (32 hex chars + 4 hyphens = 36 chars) and
|
|
132
|
+
* a wide range of shorter operator-supplied tokens.
|
|
133
|
+
*/
|
|
134
|
+
export declare const IDEMPOTENCY_KEY_MIN_LENGTH = 16;
|
|
135
|
+
/**
|
|
136
|
+
* Minimum length of the `accountIdentifierEcho` field required for
|
|
137
|
+
* payment-routing CREATE_* mutations. Defensive minimum — most
|
|
138
|
+
* canonical account identifiers (emails, account IDs, handles) are
|
|
139
|
+
* comfortably above 4 chars.
|
|
140
|
+
*/
|
|
141
|
+
export declare const ACCOUNT_ECHO_MIN_LENGTH = 4;
|
|
142
|
+
/**
|
|
143
|
+
* Cross-domain error class for consent-gate failures. Extends
|
|
144
|
+
* {@link TtctlError} so it flows through CLI / MCP error handlers
|
|
145
|
+
* uniformly (the CLI surfaces `code` + `message` + `recovery`; the MCP
|
|
146
|
+
* tool wrapper surfaces a structured tool-error response).
|
|
147
|
+
*
|
|
148
|
+
* Carries:
|
|
149
|
+
* - `code: "CONSENT_REQUIRED"` — stable machine-readable identifier.
|
|
150
|
+
* - `domain: ConsentDomain` — programmatic discriminator for the
|
|
151
|
+
* specific consent ceremony that failed.
|
|
152
|
+
* - `opName: string` — the failing operation's wire name (e.g.
|
|
153
|
+
* `submitForReview`, `CREATE_PAYONEER_PAYMENT_OPTION`).
|
|
154
|
+
* - `recovery: string` — actionable user-facing guidance derived from
|
|
155
|
+
* the domain (mentions the CLI flag and the wire-level field name).
|
|
156
|
+
*/
|
|
157
|
+
export declare class ConsentRequiredError extends TtctlError {
|
|
158
|
+
readonly name = "ConsentRequiredError";
|
|
159
|
+
readonly code = "CONSENT_REQUIRED";
|
|
160
|
+
readonly recovery: string;
|
|
161
|
+
readonly opName: string;
|
|
162
|
+
readonly domain: ConsentDomain;
|
|
163
|
+
constructor(opName: string, domain: ConsentDomain, message: string, options?: {
|
|
164
|
+
cause?: unknown;
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Caller-supplied context required when invoking the gate for a
|
|
169
|
+
* payment-routing CREATE_* mutation. Per ADR-009 § Decision Part 2,
|
|
170
|
+
* the service that owns the CREATE operation passes its canonical
|
|
171
|
+
* account-identifier input here; the gate uses it to verify the
|
|
172
|
+
* `accountIdentifierEcho` field actually matches the intended account.
|
|
173
|
+
*/
|
|
174
|
+
export interface PaymentRoutingCreateContext {
|
|
175
|
+
/**
|
|
176
|
+
* The canonical account identifier (e.g. Payoneer email, Toptal
|
|
177
|
+
* account ID, banking handle) the operator intends to bind. The gate
|
|
178
|
+
* compares this against the `accountIdentifierEcho` field in
|
|
179
|
+
* `input`; mismatch raises {@link ConsentRequiredError} BEFORE any
|
|
180
|
+
* wire call.
|
|
181
|
+
*/
|
|
182
|
+
expectedAccountIdentifier: string;
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Optional context for the gate. Currently only used by payment-routing
|
|
186
|
+
* CREATEs (see {@link PaymentRoutingCreateContext}); reserved for
|
|
187
|
+
* future per-domain extensions.
|
|
188
|
+
*/
|
|
189
|
+
export interface ConsentGateOptions {
|
|
190
|
+
/**
|
|
191
|
+
* Supplying this signals the gate is running for a payment-routing
|
|
192
|
+
* CREATE_* mutation; the gate then enforces the supplementary
|
|
193
|
+
* `idempotencyKey` + `accountIdentifierEcho` factors per ADR-009
|
|
194
|
+
* § Decision Part 2.
|
|
195
|
+
*
|
|
196
|
+
* Omit (or pass `undefined`) for non-CREATE payment-routing
|
|
197
|
+
* mutations (e.g. UPDATE_* / DELETE_*) — those get only the
|
|
198
|
+
* consent-literal gate.
|
|
199
|
+
*/
|
|
200
|
+
paymentRoutingCreate?: PaymentRoutingCreateContext;
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Verify the caller supplied the per-domain consent ceremony required
|
|
204
|
+
* to invoke an INFERRED-destructive mutation. Throws
|
|
205
|
+
* {@link ConsentRequiredError} BEFORE any wire call when the ceremony
|
|
206
|
+
* is incomplete.
|
|
207
|
+
*
|
|
208
|
+
* Per ADR-009 (ttctl) § Decision:
|
|
209
|
+
*
|
|
210
|
+
* - Part 1: the `input` object must carry the per-domain consent
|
|
211
|
+
* field (see {@link CONSENT_FIELD}) set to the literal `true`.
|
|
212
|
+
* The {@link CONSENT_ENV_VAR} env-var bypasses this for
|
|
213
|
+
* non-interactive contexts.
|
|
214
|
+
* - Part 2: payment-routing CREATEs (`options.paymentRoutingCreate`
|
|
215
|
+
* supplied) additionally require `idempotencyKey` (string, length
|
|
216
|
+
* >= {@link IDEMPOTENCY_KEY_MIN_LENGTH}) and
|
|
217
|
+
* `accountIdentifierEcho` (string, length >=
|
|
218
|
+
* {@link ACCOUNT_ECHO_MIN_LENGTH}) — and the echo MUST equal
|
|
219
|
+
* {@link PaymentRoutingCreateContext.expectedAccountIdentifier}.
|
|
220
|
+
* These factors are NOT env-var-bypassable.
|
|
221
|
+
*
|
|
222
|
+
* @param opName — the wire operation name (e.g. `submitForReview`).
|
|
223
|
+
* Used in the error message and in `ConsentRequiredError.opName` for
|
|
224
|
+
* auditing.
|
|
225
|
+
* @param domain — the operational domain that determines the
|
|
226
|
+
* consent-field name.
|
|
227
|
+
* @param input — the caller-supplied input object. The gate reads
|
|
228
|
+
* `input[CONSENT_FIELD[domain]]` (and, for payment-routing CREATEs,
|
|
229
|
+
* `input.idempotencyKey` + `input.accountIdentifierEcho`).
|
|
230
|
+
* @param options — optional context. Currently only
|
|
231
|
+
* `paymentRoutingCreate` is used.
|
|
232
|
+
*/
|
|
233
|
+
export declare function ensureDestructiveConsent(opName: string, domain: ConsentDomain, input: {
|
|
234
|
+
readonly [key: string]: unknown;
|
|
235
|
+
}, options?: ConsentGateOptions): void;
|
|
236
|
+
//# sourceMappingURL=consent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consent.d.ts","sourceRoot":"","sources":["../src/consent.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,oBAAoB,GAAG,mBAAmB,CAAC;AAEhH;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAKhE,CAAC;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,qCAAqC,CAAC;AAElE;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC;;;;;;;;;;;;;;GAcG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;IAClD,SAAkB,IAAI,0BAA0B;IAChD,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;gBAEnB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAMlG;AAED;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;;OAMG;IACH,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;;;;;OASG;IACH,oBAAoB,CAAC,EAAE,2BAA2B,CAAC;CACpD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EAC1C,OAAO,GAAE,kBAAuB,GAC/B,IAAI,CA4CN"}
|
package/dist/consent.js
ADDED
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
2
|
+
// Copyright (C) 2026 Oleksii PELYKH
|
|
3
|
+
/**
|
|
4
|
+
* Per-domain consent gate for INFERRED-destructive mutations.
|
|
5
|
+
*
|
|
6
|
+
* Implements [ADR-009 (ttctl)](../../../hq/engineering/adr/ADR-009-per-domain-consent-vocabulary.md):
|
|
7
|
+
* "Per-Domain Consent Vocabulary for INFERRED-Destructive Mutations". The
|
|
8
|
+
* gate is a TTCtl-layer defense — orthogonal to wire-level consent fields
|
|
9
|
+
* such as `JobApply.consentIssued: Boolean!` (ADR-008's apply-funnel
|
|
10
|
+
* compliance signal). The TTCtl-layer gate sits at the Zod input boundary
|
|
11
|
+
* of services that trigger irreversible platform-side state changes and
|
|
12
|
+
* forces the caller (CLI flag, MCP input, agent loop) to explicitly opt in
|
|
13
|
+
* before any wire call is issued.
|
|
14
|
+
*
|
|
15
|
+
* ## Four domains, four field names
|
|
16
|
+
*
|
|
17
|
+
* Per ADR-009 § Decision Part 1, each operational domain has a distinct
|
|
18
|
+
* consent-field name so the consent ceremony is forensically distinct in
|
|
19
|
+
* agent behaviour models, MCP tool descriptions, CLI `--help` text, and
|
|
20
|
+
* audit logs:
|
|
21
|
+
*
|
|
22
|
+
* | Domain | Consent field | CLI flag |
|
|
23
|
+
* | ---------------------- | ----------------------------------- | ------------------------------ |
|
|
24
|
+
* | `interview-action` | `interviewActionConsentIssued` | `--consent-interview-action` |
|
|
25
|
+
* | `payment-routing` | `paymentRoutingConsentIssued` | `--consent-payment-routing` |
|
|
26
|
+
* | `profile-capability` | `profileCapabilityConsentIssued` | `--consent-profile-capability` |
|
|
27
|
+
* | `timesheet-billing` | `timesheetBillingConsentIssued` | `--consent-timesheet-billing` |
|
|
28
|
+
*
|
|
29
|
+
* The Zod primitive is `z.literal(true)` across all domains (preserved
|
|
30
|
+
* from ADR-008's precedent). What varies is the FIELD NAME — which is
|
|
31
|
+
* what the agent's behaviour model and the audit log key off.
|
|
32
|
+
*
|
|
33
|
+
* ## Payment-routing CREATE_* — supplementary factors
|
|
34
|
+
*
|
|
35
|
+
* Per ADR-009 § Decision Part 2, payment-routing CREATE_* mutations (e.g.
|
|
36
|
+
* `CREATE_PAYONEER_PAYMENT_OPTION`, `CREATE_TOPTAL_PAYMENT_ACCOUNT`)
|
|
37
|
+
* create external account bindings that TTCtl cannot rescind from its
|
|
38
|
+
* side once committed. `z.literal(true)` alone is insufficient. The gate
|
|
39
|
+
* additionally requires:
|
|
40
|
+
*
|
|
41
|
+
* 1. `idempotencyKey: string` of length >= {@link IDEMPOTENCY_KEY_MIN_LENGTH}
|
|
42
|
+
* — operator-supplied UUID-or-similar. Collision = the same
|
|
43
|
+
* operation, idempotent.
|
|
44
|
+
* 2. `accountIdentifierEcho: string` of length >= {@link ACCOUNT_ECHO_MIN_LENGTH}
|
|
45
|
+
* — operator re-states the account ID/email/handle. The gate
|
|
46
|
+
* compares the echo against the caller-supplied
|
|
47
|
+
* {@link PaymentRoutingCreateContext.expectedAccountIdentifier} —
|
|
48
|
+
* mismatch raises a `ConsentRequiredError` BEFORE any wire call.
|
|
49
|
+
*
|
|
50
|
+
* The caller (the payment-routing CREATE service function in #453 /
|
|
51
|
+
* #454) supplies the `expectedAccountIdentifier` from its canonical
|
|
52
|
+
* input field (e.g. the Payoneer email, the Toptal account ID).
|
|
53
|
+
*
|
|
54
|
+
* ## Env-var bypass for non-interactive contexts
|
|
55
|
+
*
|
|
56
|
+
* Setting `TTCTL_ALLOW_INFERRED_DESTRUCTIVE=1` ({@link CONSENT_ENV_VAR})
|
|
57
|
+
* bypasses the consent-LITERAL check for all four domains. This is for
|
|
58
|
+
* non-interactive CI / test contexts where the human-in-the-loop
|
|
59
|
+
* ceremony is inappropriate. The bypass does NOT cover the
|
|
60
|
+
* `idempotencyKey` + `accountIdentifierEcho` factors for payment-routing
|
|
61
|
+
* CREATEs — those gates protect against bugs in any caller (agent or
|
|
62
|
+
* human) regardless of interactivity, per ADR-009 § Decision Part 4.
|
|
63
|
+
*
|
|
64
|
+
* ## Why this is NOT integrated with `JobApply.consentIssued`
|
|
65
|
+
*
|
|
66
|
+
* `JobApply.consentIssued: Boolean!` (ADR-008) is a WIRE-level field
|
|
67
|
+
* passed through to Toptal's mutation as a legal-compliance signal
|
|
68
|
+
* (apply-terms acceptance). It is a passthrough constant, not a
|
|
69
|
+
* TTCtl-layer gate field. The two are orthogonal:
|
|
70
|
+
*
|
|
71
|
+
* - ADR-008's `consentIssued` (wire-level): `Boolean!` on `JobApply`.
|
|
72
|
+
* Stays as-is.
|
|
73
|
+
* - ADR-009's tokens (TTCtl-layer): per-domain Zod literals. Do not
|
|
74
|
+
* appear on the wire.
|
|
75
|
+
*
|
|
76
|
+
* ## Coexistence with `applications.apply()`'s inline gate
|
|
77
|
+
*
|
|
78
|
+
* `applications.apply()` (the ADR-008 site) keeps its own inline
|
|
79
|
+
* literal-true check that throws
|
|
80
|
+
* `ApplicationsError("CONSENT_REQUIRED")` — NOT
|
|
81
|
+
* `ConsentRequiredError`. Two intentional differences from ADR-009:
|
|
82
|
+
*
|
|
83
|
+
* 1. **Error class**: `ApplicationsError` is the applications domain's
|
|
84
|
+
* taxonomy (extends `Error`); `ConsentRequiredError` is the
|
|
85
|
+
* cross-cutting consent taxonomy (extends `TtctlError`). The two
|
|
86
|
+
* error classes coexist by design — `apply()`'s gate predates the
|
|
87
|
+
* cross-cutting abstraction and is not refactored because the
|
|
88
|
+
* apply-funnel's `consentIssued` field name is also the wire field
|
|
89
|
+
* name (ADR-008), tying the gate's identity to the applications
|
|
90
|
+
* domain.
|
|
91
|
+
* 2. **Gate location**: `apply()` keeps an inline check;
|
|
92
|
+
* `submitForReview()` and future ADR-009 consumers delegate to
|
|
93
|
+
* {@link ensureDestructiveConsent}. The error code
|
|
94
|
+
* (`CONSENT_REQUIRED`) is the same; the constructor wrapping it
|
|
95
|
+
* differs.
|
|
96
|
+
*
|
|
97
|
+
* Future ADR-009 consumers (the 17 mutations enumerated in ADR-009
|
|
98
|
+
* § Context) all use this utility; the inline pattern in `apply()` is
|
|
99
|
+
* not the canonical form going forward — it is the historical form
|
|
100
|
+
* preserved for the apply-funnel only.
|
|
101
|
+
*/
|
|
102
|
+
import { TtctlError } from "./auth/errors.js";
|
|
103
|
+
/**
|
|
104
|
+
* Per-domain Zod field name (camelCase). Maps {@link ConsentDomain} to
|
|
105
|
+
* the input-field key the caller must set to `true` to satisfy the
|
|
106
|
+
* gate. Per ADR-009 § Decision Part 1.
|
|
107
|
+
*/
|
|
108
|
+
export const CONSENT_FIELD = Object.freeze({
|
|
109
|
+
"interview-action": "interviewActionConsentIssued",
|
|
110
|
+
"payment-routing": "paymentRoutingConsentIssued",
|
|
111
|
+
"profile-capability": "profileCapabilityConsentIssued",
|
|
112
|
+
"timesheet-billing": "timesheetBillingConsentIssued",
|
|
113
|
+
});
|
|
114
|
+
/**
|
|
115
|
+
* Environment-variable bypass for the consent-LITERAL check in
|
|
116
|
+
* non-interactive contexts. Does NOT bypass the
|
|
117
|
+
* `idempotencyKey` / `accountIdentifierEcho` factors for payment-routing
|
|
118
|
+
* CREATEs — see ADR-009 § Decision Part 4.
|
|
119
|
+
*
|
|
120
|
+
* Set to the literal string `"1"` to enable. Any other value
|
|
121
|
+
* (including empty string, `"0"`, `"true"`, unset) keeps the gate
|
|
122
|
+
* enforced.
|
|
123
|
+
*/
|
|
124
|
+
export const CONSENT_ENV_VAR = "TTCTL_ALLOW_INFERRED_DESTRUCTIVE";
|
|
125
|
+
/**
|
|
126
|
+
* Minimum length of the `idempotencyKey` field required for
|
|
127
|
+
* payment-routing CREATE_* mutations. 16 chars accommodates a 128-bit
|
|
128
|
+
* UUID v4 in canonical form (32 hex chars + 4 hyphens = 36 chars) and
|
|
129
|
+
* a wide range of shorter operator-supplied tokens.
|
|
130
|
+
*/
|
|
131
|
+
export const IDEMPOTENCY_KEY_MIN_LENGTH = 16;
|
|
132
|
+
/**
|
|
133
|
+
* Minimum length of the `accountIdentifierEcho` field required for
|
|
134
|
+
* payment-routing CREATE_* mutations. Defensive minimum — most
|
|
135
|
+
* canonical account identifiers (emails, account IDs, handles) are
|
|
136
|
+
* comfortably above 4 chars.
|
|
137
|
+
*/
|
|
138
|
+
export const ACCOUNT_ECHO_MIN_LENGTH = 4;
|
|
139
|
+
/**
|
|
140
|
+
* Cross-domain error class for consent-gate failures. Extends
|
|
141
|
+
* {@link TtctlError} so it flows through CLI / MCP error handlers
|
|
142
|
+
* uniformly (the CLI surfaces `code` + `message` + `recovery`; the MCP
|
|
143
|
+
* tool wrapper surfaces a structured tool-error response).
|
|
144
|
+
*
|
|
145
|
+
* Carries:
|
|
146
|
+
* - `code: "CONSENT_REQUIRED"` — stable machine-readable identifier.
|
|
147
|
+
* - `domain: ConsentDomain` — programmatic discriminator for the
|
|
148
|
+
* specific consent ceremony that failed.
|
|
149
|
+
* - `opName: string` — the failing operation's wire name (e.g.
|
|
150
|
+
* `submitForReview`, `CREATE_PAYONEER_PAYMENT_OPTION`).
|
|
151
|
+
* - `recovery: string` — actionable user-facing guidance derived from
|
|
152
|
+
* the domain (mentions the CLI flag and the wire-level field name).
|
|
153
|
+
*/
|
|
154
|
+
export class ConsentRequiredError extends TtctlError {
|
|
155
|
+
name = "ConsentRequiredError";
|
|
156
|
+
code = "CONSENT_REQUIRED";
|
|
157
|
+
recovery;
|
|
158
|
+
opName;
|
|
159
|
+
domain;
|
|
160
|
+
constructor(opName, domain, message, options) {
|
|
161
|
+
super(message, options);
|
|
162
|
+
this.opName = opName;
|
|
163
|
+
this.domain = domain;
|
|
164
|
+
this.recovery = `Pass the consent flag — \`--consent-${domain}\` on the CLI, or \`${CONSENT_FIELD[domain]}: true\` via MCP/API. See ADR-009 (ttctl) for the per-domain consent vocabulary.`;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Verify the caller supplied the per-domain consent ceremony required
|
|
169
|
+
* to invoke an INFERRED-destructive mutation. Throws
|
|
170
|
+
* {@link ConsentRequiredError} BEFORE any wire call when the ceremony
|
|
171
|
+
* is incomplete.
|
|
172
|
+
*
|
|
173
|
+
* Per ADR-009 (ttctl) § Decision:
|
|
174
|
+
*
|
|
175
|
+
* - Part 1: the `input` object must carry the per-domain consent
|
|
176
|
+
* field (see {@link CONSENT_FIELD}) set to the literal `true`.
|
|
177
|
+
* The {@link CONSENT_ENV_VAR} env-var bypasses this for
|
|
178
|
+
* non-interactive contexts.
|
|
179
|
+
* - Part 2: payment-routing CREATEs (`options.paymentRoutingCreate`
|
|
180
|
+
* supplied) additionally require `idempotencyKey` (string, length
|
|
181
|
+
* >= {@link IDEMPOTENCY_KEY_MIN_LENGTH}) and
|
|
182
|
+
* `accountIdentifierEcho` (string, length >=
|
|
183
|
+
* {@link ACCOUNT_ECHO_MIN_LENGTH}) — and the echo MUST equal
|
|
184
|
+
* {@link PaymentRoutingCreateContext.expectedAccountIdentifier}.
|
|
185
|
+
* These factors are NOT env-var-bypassable.
|
|
186
|
+
*
|
|
187
|
+
* @param opName — the wire operation name (e.g. `submitForReview`).
|
|
188
|
+
* Used in the error message and in `ConsentRequiredError.opName` for
|
|
189
|
+
* auditing.
|
|
190
|
+
* @param domain — the operational domain that determines the
|
|
191
|
+
* consent-field name.
|
|
192
|
+
* @param input — the caller-supplied input object. The gate reads
|
|
193
|
+
* `input[CONSENT_FIELD[domain]]` (and, for payment-routing CREATEs,
|
|
194
|
+
* `input.idempotencyKey` + `input.accountIdentifierEcho`).
|
|
195
|
+
* @param options — optional context. Currently only
|
|
196
|
+
* `paymentRoutingCreate` is used.
|
|
197
|
+
*/
|
|
198
|
+
export function ensureDestructiveConsent(opName, domain, input, options = {}) {
|
|
199
|
+
const fieldName = CONSENT_FIELD[domain];
|
|
200
|
+
const envBypass = readEnvBypass();
|
|
201
|
+
// Consent-literal check. Env-var bypass applies here ONLY — the
|
|
202
|
+
// payment-routing CREATE_* factors below are NOT bypassable.
|
|
203
|
+
if (!envBypass && input[fieldName] !== true) {
|
|
204
|
+
throw new ConsentRequiredError(opName, domain, `${opName} requires explicit consent: \`${fieldName}: true\` is mandatory before any wire call. See ADR-009 (ttctl) for the per-domain consent vocabulary.`);
|
|
205
|
+
}
|
|
206
|
+
// Payment-routing CREATE_* supplementary factors per ADR-009 § Part 2.
|
|
207
|
+
if (domain === "payment-routing" && options.paymentRoutingCreate !== undefined) {
|
|
208
|
+
const ctx = options.paymentRoutingCreate;
|
|
209
|
+
const idemKey = input["idempotencyKey"];
|
|
210
|
+
if (typeof idemKey !== "string" || idemKey.length < IDEMPOTENCY_KEY_MIN_LENGTH) {
|
|
211
|
+
throw new ConsentRequiredError(opName, domain, `${opName} (payment-routing CREATE) requires \`idempotencyKey: string\` of length >= ${IDEMPOTENCY_KEY_MIN_LENGTH.toString()}. See ADR-009 (ttctl) § Decision Part 2.`);
|
|
212
|
+
}
|
|
213
|
+
const echo = input["accountIdentifierEcho"];
|
|
214
|
+
if (typeof echo !== "string" || echo.length < ACCOUNT_ECHO_MIN_LENGTH) {
|
|
215
|
+
throw new ConsentRequiredError(opName, domain, `${opName} (payment-routing CREATE) requires \`accountIdentifierEcho: string\` of length >= ${ACCOUNT_ECHO_MIN_LENGTH.toString()}. See ADR-009 (ttctl) § Decision Part 2.`);
|
|
216
|
+
}
|
|
217
|
+
if (echo !== ctx.expectedAccountIdentifier) {
|
|
218
|
+
throw new ConsentRequiredError(opName, domain, `${opName} (payment-routing CREATE): \`accountIdentifierEcho\` does not match the intended account identifier — possible misbinding. Re-confirm the account ID/email/handle and pass the matching echo. See ADR-009 (ttctl) § Decision Part 2.`);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
function readEnvBypass() {
|
|
223
|
+
return process.env[CONSENT_ENV_VAR] === "1";
|
|
224
|
+
}
|
|
225
|
+
//# sourceMappingURL=consent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consent.js","sourceRoot":"","sources":["../src/consent.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,8 @@ export { OnePasswordError, resolveOnePasswordReference } from "./onepassword.js"
|
|
|
7
7
|
export { getAuthStatus, resolveCredentials, signIn, signOut, SignInError } from "./auth.js";
|
|
8
8
|
export type { AuthInvalidReason, AuthStatusResult, SignInErrorCode, SignOutInvalidReason, SignOutResult, SignOutUnreachableReason, } from "./auth.js";
|
|
9
9
|
export { AuthRevokedError, TtctlError } from "./auth/errors.js";
|
|
10
|
+
export { ACCOUNT_ECHO_MIN_LENGTH, CONSENT_ENV_VAR, CONSENT_FIELD, ConsentRequiredError, IDEMPOTENCY_KEY_MIN_LENGTH, ensureDestructiveConsent, } from "./consent.js";
|
|
11
|
+
export type { ConsentDomain, ConsentGateOptions, PaymentRoutingCreateContext } from "./consent.js";
|
|
10
12
|
export { Cf403Error, Cf403PersistentError, DRY_RUN_REDACTED_AUTHORIZATION, IMPERSONATE_PROFILE, RedirectError, SchedulerBearerExpired, buildDryRunPreview, buildGraphQLMultipart, callSurface, impersonatedMultipartTransport, impersonatedTransport, stockTransport, } from "./transport.js";
|
|
11
13
|
export type { DryRunPreview, MultipartFile, MultipartTransportRequest, TransportRequest, TransportResponse, } from "./transport.js";
|
|
12
14
|
export { TransportError, readTransportConfig, resetTransportConfigCache } from "./transport-resilience.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,6 +6,7 @@ export { acquireConfigLock } from "./configLock.js";
|
|
|
6
6
|
export { OnePasswordError, resolveOnePasswordReference } from "./onepassword.js";
|
|
7
7
|
export { getAuthStatus, resolveCredentials, signIn, signOut, SignInError } from "./auth.js";
|
|
8
8
|
export { AuthRevokedError, TtctlError } from "./auth/errors.js";
|
|
9
|
+
export { ACCOUNT_ECHO_MIN_LENGTH, CONSENT_ENV_VAR, CONSENT_FIELD, ConsentRequiredError, IDEMPOTENCY_KEY_MIN_LENGTH, ensureDestructiveConsent, } from "./consent.js";
|
|
9
10
|
export { Cf403Error, Cf403PersistentError, DRY_RUN_REDACTED_AUTHORIZATION, IMPERSONATE_PROFILE, RedirectError, SchedulerBearerExpired, buildDryRunPreview, buildGraphQLMultipart, callSurface, impersonatedMultipartTransport, impersonatedTransport, stockTransport, } from "./transport.js";
|
|
10
11
|
export { TransportError, readTransportConfig, resetTransportConfigCache } from "./transport-resilience.js";
|
|
11
12
|
export { SURFACES_REQUIRING_IMPERSONATION, SURFACE_ENDPOINTS } from "./types.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EACL,qBAAqB,EACrB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,GACd,MAAM,aAAa,CAAC;AAWrB,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE5G,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAEjF,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAU5F,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EACL,UAAU,EACV,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,8BAA8B,EAC9B,qBAAqB,EACrB,cAAc,GACf,MAAM,gBAAgB,CAAC;AASxB,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAG3G,OAAO,EAAE,gCAAgC,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGjF,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAC;AACvD,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,WAAW,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,IAAI,MAAM,0BAA0B,CAAC;AACjD,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAIlH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,uCAAuC,EACvC,8BAA8B,EAC9B,wBAAwB,EACxB,4BAA4B,EAC5B,cAAc,GACf,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,QAAQ,EACR,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,YAAY,GACb,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,oCAAoC;AAEpC,OAAO,EACL,qBAAqB,EACrB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,aAAa,GACd,MAAM,aAAa,CAAC;AAWrB,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE5G,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAEjF,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAU5F,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEhE,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,UAAU,EACV,oBAAoB,EACpB,8BAA8B,EAC9B,mBAAmB,EACnB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,8BAA8B,EAC9B,qBAAqB,EACrB,cAAc,GACf,MAAM,gBAAgB,CAAC;AASxB,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAG3G,OAAO,EAAE,gCAAgC,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGjF,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAC;AACvD,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,WAAW,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,IAAI,MAAM,0BAA0B,CAAC;AACjD,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAIlH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,uCAAuC,EACvC,8BAA8B,EAC9B,wBAAwB,EACxB,4BAA4B,EAC5B,cAAc,GACf,MAAM,kBAAkB,CAAC;AAS1B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,QAAQ,EACR,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,aAAa,EACb,YAAY,GACb,MAAM,iBAAiB,CAAC"}
|