@cat-factory/server 0.248.0 → 0.250.0
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/app.d.ts +30 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +36 -21
- package/dist/app.js.map +1 -1
- package/dist/config/types.d.ts +24 -12
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/vcsWebUrls.d.ts +21 -0
- package/dist/config/vcsWebUrls.d.ts.map +1 -0
- package/dist/config/vcsWebUrls.js +29 -0
- package/dist/config/vcsWebUrls.js.map +1 -0
- package/dist/github/state.d.ts +11 -0
- package/dist/github/state.d.ts.map +1 -1
- package/dist/github/state.js.map +1 -1
- package/dist/http/authGate.d.ts +1 -0
- package/dist/http/authGate.d.ts.map +1 -1
- package/dist/http/authGate.js +14 -1
- package/dist/http/authGate.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/modules/documents/DocumentSourceController.d.ts +15 -0
- package/dist/modules/documents/DocumentSourceController.d.ts.map +1 -1
- package/dist/modules/documents/DocumentSourceController.js +96 -7
- package/dist/modules/documents/DocumentSourceController.js.map +1 -1
- package/dist/modules/persistence/SecretDelegationController.d.ts.map +1 -1
- package/dist/modules/persistence/SecretDelegationController.js +1 -1
- package/dist/modules/persistence/SecretDelegationController.js.map +1 -1
- package/dist/modules/vcs/VcsConnectController.d.ts.map +1 -1
- package/dist/modules/vcs/VcsConnectController.js +9 -3
- package/dist/modules/vcs/VcsConnectController.js.map +1 -1
- package/dist/modules/vcs/VcsWebhookController.js +2 -2
- package/dist/modules/vcs/VcsWebhookController.js.map +1 -1
- package/dist/persistence/rpc-allowlist.d.ts.map +1 -1
- package/dist/persistence/rpc-allowlist.js +63 -7
- package/dist/persistence/rpc-allowlist.js.map +1 -1
- package/dist/persistence/secretDelegation.d.ts +6 -2
- package/dist/persistence/secretDelegation.d.ts.map +1 -1
- package/dist/persistence/secretDelegation.js.map +1 -1
- package/dist/secrets/sealedSecretSources.d.ts +14 -8
- package/dist/secrets/sealedSecretSources.d.ts.map +1 -1
- package/dist/secrets/sealedSecretSources.js +24 -7
- package/dist/secrets/sealedSecretSources.js.map +1 -1
- package/package.json +7 -7
|
@@ -3,8 +3,12 @@ import type { DelegatedSealRef, DelegatedSecretRef, OrgSecretSource, SecretDeleg
|
|
|
3
3
|
export interface DelegatedUnsealRequest {
|
|
4
4
|
source: OrgSecretSource;
|
|
5
5
|
workspaceId: string;
|
|
6
|
-
/**
|
|
7
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Trailing identifier args of the source's declared read, in declaration order. How many the
|
|
8
|
+
* source takes is kernel's `ORG_SECRET_KEY_ARITY`, which both halves read: the node builds this
|
|
9
|
+
* through `orgSecretRef` and the endpoint rejects a list that disagrees.
|
|
10
|
+
*/
|
|
11
|
+
key?: readonly (string | null)[];
|
|
8
12
|
}
|
|
9
13
|
export interface DelegatedUnsealResponse {
|
|
10
14
|
ok: true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretDelegation.d.ts","sourceRoot":"","sources":["../../src/persistence/secretDelegation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACf,MAAM,qBAAqB,CAAA;AAa5B,iFAAiF;AACjF,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,eAAe,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB
|
|
1
|
+
{"version":3,"file":"secretDelegation.d.ts","sourceRoot":"","sources":["../../src/persistence/secretDelegation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACf,MAAM,qBAAqB,CAAA;AAa5B,iFAAiF;AACjF,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,eAAe,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,GAAG,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAA;CACjC;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,IAAI,CAAA;IACR,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,kGAAkG;AAClG,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,eAAe,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,IAAI,CAAA;IACR,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,6FAA6F;IAC7F,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAA;IACrC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAID;;;;;;;GAOG;AACH,qBAAa,uCAAwC,SAAQ,KAAK;IAChE,YAAY,OAAO,SAA+D,EAGjF;CACF;AAED;;;;;;;;;GASG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,yBAAyB,EAAI;IAE1D,MAAM,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAWrD;IAEK,IAAI,CAAC,GAAG,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWpE;YAEa,IAAI;CAqBnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secretDelegation.js","sourceRoot":"","sources":["../../src/persistence/secretDelegation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"secretDelegation.js","sourceRoot":"","sources":["../../src/persistence/secretDelegation.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,13 +9,6 @@ export interface SealedSecretSourceSpec {
|
|
|
9
9
|
* caller a choice the scope check never saw.
|
|
10
10
|
*/
|
|
11
11
|
method: string;
|
|
12
|
-
/**
|
|
13
|
-
* How many trailing identifier args the read takes after `workspaceId`. The request's `key` must
|
|
14
|
-
* supply EXACTLY this many. Arity is part of the shape because the args are spread into the
|
|
15
|
-
* call, so a short list would read a different row than the caller named (and a long one would
|
|
16
|
-
* pass an argument the port never declared).
|
|
17
|
-
*/
|
|
18
|
-
keyArity: number;
|
|
19
12
|
/** The record field holding the sealed envelope. */
|
|
20
13
|
field: string;
|
|
21
14
|
/** The HKDF `info` domain-separation tag the envelope was sealed under. */
|
|
@@ -29,12 +22,25 @@ export interface SealedSecretSourceSpec {
|
|
|
29
22
|
* infrastructure, it probes the monitor), not merely the row.
|
|
30
23
|
*/
|
|
31
24
|
export declare const SEALED_SECRET_SOURCES: Record<OrgSecretSource, SealedSecretSourceSpec>;
|
|
25
|
+
/**
|
|
26
|
+
* A resolved binding: the mothership-side spec plus the source's own name and its declared key
|
|
27
|
+
* arity, READ from kernel's `ORG_SECRET_KEY_ARITY` rather than restated here.
|
|
28
|
+
*
|
|
29
|
+
* Arity belongs to the source, not to this table, and both halves of the delegation need it: the
|
|
30
|
+
* node to build a well-formed `key`, this endpoint to reject one that disagrees. Kept in one
|
|
31
|
+
* declaration so the check and the call site cannot drift into disagreeing about a row.
|
|
32
|
+
*/
|
|
33
|
+
export interface SealedSecretSourceBinding extends SealedSecretSourceSpec {
|
|
34
|
+
source: OrgSecretSource;
|
|
35
|
+
/** How many trailing args the read takes after `workspaceId`; the request's `key` must match. */
|
|
36
|
+
keyArity: number;
|
|
37
|
+
}
|
|
32
38
|
/**
|
|
33
39
|
* Look a source up by its wire value. OWN-PROPERTY only, exactly like the persistence allow-list:
|
|
34
40
|
* an attacker-supplied `__proto__` / `constructor` / `toString` must not reach a prototype member
|
|
35
41
|
* and be treated as a spec.
|
|
36
42
|
*/
|
|
37
|
-
export declare function sealedSecretSourceSpec(source: unknown):
|
|
43
|
+
export declare function sealedSecretSourceSpec(source: unknown): SealedSecretSourceBinding | undefined;
|
|
38
44
|
/** The declared vocabulary, for tests and for the boot-time completeness assertions. */
|
|
39
45
|
export declare const SEALED_SECRET_SOURCE_NAMES: readonly OrgSecretSource[];
|
|
40
46
|
//# sourceMappingURL=sealedSecretSources.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sealedSecretSources.d.ts","sourceRoot":"","sources":["../../src/secrets/sealedSecretSources.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"sealedSecretSources.d.ts","sourceRoot":"","sources":["../../src/secrets/sealedSecretSources.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAepG,iFAAiF;AACjF,MAAM,WAAW,sBAAsB;IACrC,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAA;IACZ;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAA;IACd,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAA;IACb,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAA;IACZ,oFAAoF;IACpF,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,eAAe,EAAE,sBAAsB,CAmEjF,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,yBAA0B,SAAQ,sBAAsB;IACvE,MAAM,EAAE,eAAe,CAAA;IACvB,iGAAiG;IACjG,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,yBAAyB,GAAG,SAAS,CAK7F;AAED,wFAAwF;AACxF,eAAO,MAAM,0BAA0B,EAAE,SAAS,eAAe,EAAuB,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ORG_SECRET_SOURCES } from '@cat-factory/kernel';
|
|
1
|
+
import { ORG_SECRET_KEY_ARITY, ORG_SECRET_SOURCES } from '@cat-factory/kernel';
|
|
2
2
|
/**
|
|
3
3
|
* Every source, bound. Each entry admits ONE org credential to a mothership-mode laptop, so the
|
|
4
4
|
* bar for adding one is that a run genuinely needs the PLAINTEXT on the node (it provisions the
|
|
@@ -10,7 +10,6 @@ export const SEALED_SECRET_SOURCES = {
|
|
|
10
10
|
environment_access: {
|
|
11
11
|
repo: 'environmentRegistryRepository',
|
|
12
12
|
method: 'get',
|
|
13
|
-
keyArity: 1,
|
|
14
13
|
field: 'accessCipher',
|
|
15
14
|
info: 'cat-factory:environments',
|
|
16
15
|
label: 'environment access handle',
|
|
@@ -20,7 +19,6 @@ export const SEALED_SECRET_SOURCES = {
|
|
|
20
19
|
environment_provision_fields: {
|
|
21
20
|
repo: 'environmentRegistryRepository',
|
|
22
21
|
method: 'get',
|
|
23
|
-
keyArity: 1,
|
|
24
22
|
field: 'provisionFieldsCipher',
|
|
25
23
|
info: 'cat-factory:environments',
|
|
26
24
|
label: 'environment provision fields',
|
|
@@ -30,7 +28,6 @@ export const SEALED_SECRET_SOURCES = {
|
|
|
30
28
|
environment_connection: {
|
|
31
29
|
repo: 'environmentConnectionRepository',
|
|
32
30
|
method: 'getByWorkspaceAndType',
|
|
33
|
-
keyArity: 2,
|
|
34
31
|
field: 'secretsCipher',
|
|
35
32
|
info: 'cat-factory:environments',
|
|
36
33
|
label: 'environment connection secrets',
|
|
@@ -40,7 +37,6 @@ export const SEALED_SECRET_SOURCES = {
|
|
|
40
37
|
observability_connection: {
|
|
41
38
|
repo: 'observabilityConnectionRepository',
|
|
42
39
|
method: 'get',
|
|
43
|
-
keyArity: 0,
|
|
44
40
|
field: 'credentials',
|
|
45
41
|
info: 'cat-factory:observability',
|
|
46
42
|
label: 'observability connection credentials',
|
|
@@ -50,11 +46,31 @@ export const SEALED_SECRET_SOURCES = {
|
|
|
50
46
|
incident_enrichment_connection: {
|
|
51
47
|
repo: 'incidentEnrichmentConnectionRepository',
|
|
52
48
|
method: 'get',
|
|
53
|
-
keyArity: 0,
|
|
54
49
|
field: 'credentials',
|
|
55
50
|
info: 'cat-factory:incident-enrichment',
|
|
56
51
|
label: 'incident enrichment credentials',
|
|
57
52
|
},
|
|
53
|
+
// A workspace's document-source credential bag (a Figma/Confluence/Notion token), keyed by
|
|
54
|
+
// `source`. The node needs the PLAINTEXT rather than the row: the dispatch-time freshness
|
|
55
|
+
// refresh authenticates against the source on the run path, and an import is the node's own
|
|
56
|
+
// outbound call. Until the row carried an envelope at all there was nothing here to name, which
|
|
57
|
+
// is why this integration was the last one parked off the persistence RPC.
|
|
58
|
+
document_source_connection: {
|
|
59
|
+
repo: 'documentConnectionRepository',
|
|
60
|
+
method: 'getByWorkspace',
|
|
61
|
+
field: 'credentialsCipher',
|
|
62
|
+
info: 'cat-factory:documents',
|
|
63
|
+
label: 'document source credentials',
|
|
64
|
+
},
|
|
65
|
+
// The tracker sibling, keyed the same way. Same argument: the `tracker` step files a real
|
|
66
|
+
// ticket from wherever the run runs.
|
|
67
|
+
task_source_connection: {
|
|
68
|
+
repo: 'taskConnectionRepository',
|
|
69
|
+
method: 'getByWorkspace',
|
|
70
|
+
field: 'credentialsCipher',
|
|
71
|
+
info: 'cat-factory:tasks',
|
|
72
|
+
label: 'task source credentials',
|
|
73
|
+
},
|
|
58
74
|
};
|
|
59
75
|
/**
|
|
60
76
|
* Look a source up by its wire value. OWN-PROPERTY only, exactly like the persistence allow-list:
|
|
@@ -66,7 +82,8 @@ export function sealedSecretSourceSpec(source) {
|
|
|
66
82
|
return undefined;
|
|
67
83
|
if (!Object.prototype.hasOwnProperty.call(SEALED_SECRET_SOURCES, source))
|
|
68
84
|
return undefined;
|
|
69
|
-
|
|
85
|
+
const name = source;
|
|
86
|
+
return { ...SEALED_SECRET_SOURCES[name], source: name, keyArity: ORG_SECRET_KEY_ARITY[name] };
|
|
70
87
|
}
|
|
71
88
|
/** The declared vocabulary, for tests and for the boot-time completeness assertions. */
|
|
72
89
|
export const SEALED_SECRET_SOURCE_NAMES = ORG_SECRET_SOURCES;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sealedSecretSources.js","sourceRoot":"","sources":["../../src/secrets/sealedSecretSources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAwB,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"sealedSecretSources.js","sourceRoot":"","sources":["../../src/secrets/sealedSecretSources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAwB,MAAM,qBAAqB,CAAA;AAiCpG;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAoD;IACpF,8FAA8F;IAC9F,oFAAoF;IACpF,kBAAkB,EAAE;QAClB,IAAI,EAAE,+BAA+B;QACrC,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,0BAA0B;QAChC,KAAK,EAAE,2BAA2B;KACnC;IACD,6FAA6F;IAC7F,0FAA0F;IAC1F,4BAA4B,EAAE;QAC5B,IAAI,EAAE,+BAA+B;QACrC,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,uBAAuB;QAC9B,IAAI,EAAE,0BAA0B;QAChC,KAAK,EAAE,8BAA8B;KACtC;IACD,yFAAyF;IACzF,+EAA+E;IAC/E,sBAAsB,EAAE;QACtB,IAAI,EAAE,iCAAiC;QACvC,MAAM,EAAE,uBAAuB;QAC/B,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,0BAA0B;QAChC,KAAK,EAAE,gCAAgC;KACxC;IACD,6FAA6F;IAC7F,sEAAsE;IACtE,wBAAwB,EAAE;QACxB,IAAI,EAAE,mCAAmC;QACzC,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,2BAA2B;QACjC,KAAK,EAAE,sCAAsC;KAC9C;IACD,4FAA4F;IAC5F,0CAA0C;IAC1C,8BAA8B,EAAE;QAC9B,IAAI,EAAE,wCAAwC;QAC9C,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,iCAAiC;QACvC,KAAK,EAAE,iCAAiC;KACzC;IACD,2FAA2F;IAC3F,0FAA0F;IAC1F,4FAA4F;IAC5F,gGAAgG;IAChG,2EAA2E;IAC3E,0BAA0B,EAAE;QAC1B,IAAI,EAAE,8BAA8B;QACpC,MAAM,EAAE,gBAAgB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,uBAAuB;QAC7B,KAAK,EAAE,6BAA6B;KACrC;IACD,0FAA0F;IAC1F,qCAAqC;IACrC,sBAAsB,EAAE;QACtB,IAAI,EAAE,0BAA0B;QAChC,MAAM,EAAE,gBAAgB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,yBAAyB;KACjC;CACF,CAAA;AAgBD;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAe;IACpD,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAA;IAChD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC;QAAE,OAAO,SAAS,CAAA;IAC1F,MAAM,IAAI,GAAG,MAAyB,CAAA;IACtC,OAAO,EAAE,GAAG,qBAAqB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAA;AAC/F,CAAC;AAED,wFAAwF;AACxF,MAAM,CAAC,MAAM,0BAA0B,GAA+B,kBAAkB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.250.0",
|
|
4
4
|
"description": "Runtime-neutral HTTP layer for the Agent Architecture Board: the Hono controllers, middleware (auth/authz/CORS/error), request helpers and the gateway seams shared by every deployment facade (Cloudflare Worker, Node service).",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -31,13 +31,13 @@
|
|
|
31
31
|
"jose": "^6.2.8",
|
|
32
32
|
"pino": "^10.3.1",
|
|
33
33
|
"valibot": "^1.4.2",
|
|
34
|
-
"@cat-factory/
|
|
35
|
-
"@cat-factory/
|
|
36
|
-
"@cat-factory/
|
|
34
|
+
"@cat-factory/agents": "0.117.10",
|
|
35
|
+
"@cat-factory/contracts": "0.272.0",
|
|
36
|
+
"@cat-factory/integrations": "0.148.0",
|
|
37
|
+
"@cat-factory/kernel": "0.270.0",
|
|
37
38
|
"@cat-factory/mcp-server": "0.22.0",
|
|
38
|
-
"@cat-factory/
|
|
39
|
-
"@cat-factory/
|
|
40
|
-
"@cat-factory/spend": "0.15.36"
|
|
39
|
+
"@cat-factory/orchestration": "0.238.0",
|
|
40
|
+
"@cat-factory/spend": "0.15.38"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@types/node": "^26.1.2",
|