@cat-factory/server 0.112.10 → 0.113.1
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/agents/ContainerEnvConfigRepairer.d.ts.map +1 -1
- package/dist/agents/ContainerEnvConfigRepairer.js +20 -11
- package/dist/agents/ContainerEnvConfigRepairer.js.map +1 -1
- package/dist/agents/ContainerRepoBootstrapper.d.ts.map +1 -1
- package/dist/agents/ContainerRepoBootstrapper.js +9 -28
- package/dist/agents/ContainerRepoBootstrapper.js.map +1 -1
- package/dist/agents/repoFiles.d.ts.map +1 -1
- package/dist/agents/repoFiles.js +1 -0
- package/dist/agents/repoFiles.js.map +1 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +7 -0
- package/dist/app.js.map +1 -1
- package/dist/events/FanOutEventPublisher.d.ts +2 -1
- package/dist/events/FanOutEventPublisher.d.ts.map +1 -1
- package/dist/events/FanOutEventPublisher.js +4 -0
- package/dist/events/FanOutEventPublisher.js.map +1 -1
- package/dist/github/DelegatedAppTokenSource.d.ts +38 -0
- package/dist/github/DelegatedAppTokenSource.d.ts.map +1 -0
- package/dist/github/DelegatedAppTokenSource.js +79 -0
- package/dist/github/DelegatedAppTokenSource.js.map +1 -0
- package/dist/github/GitHubAppAuth.d.ts +1 -0
- package/dist/github/GitHubAppAuth.d.ts.map +1 -1
- package/dist/github/GitHubAppAuth.js +18 -3
- package/dist/github/GitHubAppAuth.js.map +1 -1
- package/dist/github/GitHubAppRegistry.d.ts +7 -1
- package/dist/github/GitHubAppRegistry.d.ts.map +1 -1
- package/dist/github/GitHubAppRegistry.js +6 -1
- package/dist/github/GitHubAppRegistry.js.map +1 -1
- package/dist/http/env.d.ts +21 -0
- package/dist/http/env.d.ts.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/modules/environments/EnvironmentController.d.ts.map +1 -1
- package/dist/modules/environments/EnvironmentController.js +36 -1
- package/dist/modules/environments/EnvironmentController.js.map +1 -1
- package/dist/modules/persistence/GitHubDelegationController.d.ts +53 -0
- package/dist/modules/persistence/GitHubDelegationController.d.ts.map +1 -0
- package/dist/modules/persistence/GitHubDelegationController.js +126 -0
- package/dist/modules/persistence/GitHubDelegationController.js.map +1 -0
- package/dist/modules/workspaces/WorkspaceController.d.ts.map +1 -1
- package/dist/modules/workspaces/WorkspaceController.js +5 -0
- package/dist/modules/workspaces/WorkspaceController.js.map +1 -1
- package/dist/persistence/rpc.d.ts.map +1 -1
- package/dist/persistence/rpc.js +19 -0
- package/dist/persistence/rpc.js.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitHubAppAuth.js","sourceRoot":"","sources":["../../src/github/GitHubAppAuth.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACxE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAEhE,kFAAkF;AAClF,gFAAgF;AAChF,qDAAqD;AACrD,iFAAiF;AACjF,sCAAsC;AACtC,0EAA0E;AAC1E,0EAA0E;AAC1E,EAAE;AACF,+EAA+E;AAC/E,gFAAgF;AAChF,mEAAmE;AAEnE,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AACnC,MAAM,UAAU,GAAG,aAAa,CAAA;AAChC,MAAM,WAAW,GAAG,YAAY,CAAA;AAEhC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mCAAmC,CACjD,cAAsB,EACtB,MAAc;IAEd,MAAM,IAAI,GAAG,yCAAyC,cAAc,UAAU,MAAM,GAAG,CAAA;IACvF,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,OAAO,CACL,GAAG,IAAI,uFAAuF;YAC9F,0FAA0F;YAC1F,6DAA6D,oBAAoB,CAAC,aAAa,IAAI;YACnG,OAAO,YAAY,CAAC,gBAAgB,GAAG,CACxC,CAAA;IACH,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACrC,OAAO,CACL,GAAG,IAAI,yBAAyB,cAAc,yCAAyC;YACvF,wFAAwF;YACxF,uFAAuF;YACvF,oBAAoB,oBAAoB,CAAC,aAAa,SAAS,YAAY,CAAC,iBAAiB,GAAG,CACjG,CAAA;IACH,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,OAAO,CACL,GAAG,IAAI,uFAAuF;YAC9F,4FAA4F;YAC5F,sBAAsB,YAAY,CAAC,gBAAgB,GAAG,CACvD,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,GAAG,IAAI,GAAG,EAGvB,CAAA;AAkBH,MAAM,OAAO,aAAa;IAGK,IAAI;IAFzB,UAAU,CAAqB;IAEvC,YAA6B,IAA+B;oBAA/B,IAAI;IAA8B,CAAC;IAEhE,yDAAyD;IACzD,KAAK,CAAC,MAAM;QACV,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;QACvD,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;QAC3C,6EAA6E;QAC7E,MAAM,OAAO,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;QAChF,MAAM,YAAY,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAA;QACjG,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CACxC,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAC7B,GAAG,EACH,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CACvC,CAAA;QACD,OAAO,GAAG,YAAY,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAA;IAClD,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,iBAAiB,CACrB,cAAsB,EACtB,
|
|
1
|
+
{"version":3,"file":"GitHubAppAuth.js","sourceRoot":"","sources":["../../src/github/GitHubAppAuth.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,9 +57,15 @@ export declare class GitHubAppRegistry {
|
|
|
57
57
|
apps(): RegisteredApp[];
|
|
58
58
|
/** The auth for an appId, falling back to the default App for null/legacy/unknown ids. */
|
|
59
59
|
authForApp(appId: string | null | undefined): GitHubAppAuth;
|
|
60
|
-
/**
|
|
60
|
+
/**
|
|
61
|
+
* An installation token, minted by the App that owns the installation.
|
|
62
|
+
* `repositoryIds` narrows the mint to those repos (the mothership GitHub-delegation
|
|
63
|
+
* path — see `GitHubAppAuth.installationToken`); the engine's own calls pass none
|
|
64
|
+
* and stay installation-wide.
|
|
65
|
+
*/
|
|
61
66
|
installationToken(installationId: number, opts?: {
|
|
62
67
|
forceRefresh?: boolean;
|
|
68
|
+
repositoryIds?: number[];
|
|
63
69
|
}): Promise<string>;
|
|
64
70
|
/** The installation's granted permissions, via its owning App. */
|
|
65
71
|
installationPermissions(installationId: number): Promise<InstallationPermissions>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitHubAppRegistry.d.ts","sourceRoot":"","sources":["../../src/github/GitHubAppRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAevD,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,aAAa,CAAA;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,qEAAqE;IACrE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,2EAA2E;IAC3E,IAAI,IAAI,SAAS;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACpC,8CAA8C;IAC9C,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG;QAAE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;KAAE,CAAA;IAC3E;;;;;OAKG;IACH,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7F;;;;;;OAMG;IACH,uBAAuB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;CAClF;AAED,MAAM,WAAW,6BAA6B;IAC5C,gFAAgF;IAChF,OAAO,EAAE,aAAa,CAAA;IACtB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,aAAa,CAAA;IAC1B,0EAA0E;IAC1E,sBAAsB,EAAE,4BAA4B,CAAA;CACrD;AAOD,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,6BAA6B,EAAI;IAEpE,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,8EAA8E;IAC9E,IAAI,IAAI,aAAa,EAAE,CAEtB;IAED,0FAA0F;IAC1F,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,aAAa,CAK1D;IAED
|
|
1
|
+
{"version":3,"file":"GitHubAppRegistry.d.ts","sourceRoot":"","sources":["../../src/github/GitHubAppRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAevD,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,aAAa,CAAA;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,qEAAqE;IACrE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,2EAA2E;IAC3E,IAAI,IAAI,SAAS;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACpC,8CAA8C;IAC9C,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG;QAAE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;KAAE,CAAA;IAC3E;;;;;OAKG;IACH,iBAAiB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7F;;;;;;OAMG;IACH,uBAAuB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;CAClF;AAED,MAAM,WAAW,6BAA6B;IAC5C,gFAAgF;IAChF,OAAO,EAAE,aAAa,CAAA;IACtB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,aAAa,CAAA;IAC1B,0EAA0E;IAC1E,sBAAsB,EAAE,4BAA4B,CAAA;CACrD;AAOD,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,6BAA6B,EAAI;IAEpE,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,8EAA8E;IAC9E,IAAI,IAAI,aAAa,EAAE,CAEtB;IAED,0FAA0F;IAC1F,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,aAAa,CAK1D;IAED;;;;;OAKG;IACG,iBAAiB,CACrB,cAAc,EAAE,MAAM,EACtB,IAAI,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAC1D,OAAO,CAAC,MAAM,CAAC,CAEjB;IAED,kEAAkE;IAC5D,uBAAuB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAEtF;IAED;;;;OAIG;IACH,cAAc,CAAC,YAAY,EAAE,kBAAkB,GAAG,OAAO,CAGxD;YAEa,SAAS;CASxB"}
|
|
@@ -21,7 +21,12 @@ export class GitHubAppRegistry {
|
|
|
21
21
|
}
|
|
22
22
|
return this.deps.default.auth;
|
|
23
23
|
}
|
|
24
|
-
/**
|
|
24
|
+
/**
|
|
25
|
+
* An installation token, minted by the App that owns the installation.
|
|
26
|
+
* `repositoryIds` narrows the mint to those repos (the mothership GitHub-delegation
|
|
27
|
+
* path — see `GitHubAppAuth.installationToken`); the engine's own calls pass none
|
|
28
|
+
* and stay installation-wide.
|
|
29
|
+
*/
|
|
25
30
|
async installationToken(installationId, opts) {
|
|
26
31
|
return (await this.ownerAuth(installationId)).installationToken(installationId, opts);
|
|
27
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitHubAppRegistry.js","sourceRoot":"","sources":["../../src/github/GitHubAppRegistry.ts"],"names":[],"mappings":"AAkEA,wEAAwE;AACxE,+EAA+E;AAC/E,4CAA4C;AAC5C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAA;AAE/C,MAAM,OAAO,iBAAiB;IACC,IAAI;IAAjC,YAA6B,IAAmC;oBAAnC,IAAI;IAAkC,CAAC;IAEpE,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAA;IAChC,CAAC;IAED,8EAA8E;IAC9E,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC/F,CAAC;IAED,0FAA0F;IAC1F,UAAU,CAAC,KAAgC;QACzC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YAC1E,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAA;QAClC,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA;IAC/B,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"GitHubAppRegistry.js","sourceRoot":"","sources":["../../src/github/GitHubAppRegistry.ts"],"names":[],"mappings":"AAkEA,wEAAwE;AACxE,+EAA+E;AAC/E,4CAA4C;AAC5C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAA;AAE/C,MAAM,OAAO,iBAAiB;IACC,IAAI;IAAjC,YAA6B,IAAmC;oBAAnC,IAAI;IAAkC,CAAC;IAEpE,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAA;IAChC,CAAC;IAED,8EAA8E;IAC9E,IAAI;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC/F,CAAC;IAED,0FAA0F;IAC1F,UAAU,CAAC,KAAgC;QACzC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YAC1E,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAA;QAClC,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA;IAC/B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CACrB,cAAsB,EACtB,IAA2D;QAE3D,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;IACvF,CAAC;IAED,kEAAkE;IAClE,KAAK,CAAC,uBAAuB,CAAC,cAAsB;QAClD,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAA;IACvF,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,YAAgC;QAC7C,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAA;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAA;IACnF,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,cAAsB;QAC5C,IAAI,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;YACzF,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC,YAAY,CAAA;YAC1C,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC;CACF"}
|
package/dist/http/env.d.ts
CHANGED
|
@@ -209,6 +209,15 @@ export interface ServerContainer extends Core {
|
|
|
209
209
|
* is not a mothership ⇒ the persistence endpoint 503s. See `../persistence/rpc.ts`.
|
|
210
210
|
*/
|
|
211
211
|
repositories?: PersistenceRegistry;
|
|
212
|
+
/**
|
|
213
|
+
* Mothership-side GitHub token delegation: mints a short-lived GitHub App INSTALLATION
|
|
214
|
+
* token for a machine-authed mothership-mode node (`POST /internal/github/installation-token`),
|
|
215
|
+
* so the laptop's agent containers, gates, and RepoFiles ops reach GitHub while the App
|
|
216
|
+
* private key never leaves the mothership. Wired by a facade whose GitHub App is configured
|
|
217
|
+
* (both Node + Cloudflare — the symmetric change); absent ⇒ the endpoint 503s. See
|
|
218
|
+
* docs/initiatives/mothership-mode.md.
|
|
219
|
+
*/
|
|
220
|
+
githubTokenDelegation?: GitHubTokenDelegation;
|
|
212
221
|
/**
|
|
213
222
|
* Local-mode mothership login seam: exchange a mothership SESSION token for a machine token
|
|
214
223
|
* and cache it locally, so the node can talk to the mothership without a pasted static token.
|
|
@@ -217,6 +226,18 @@ export interface ServerContainer extends Core {
|
|
|
217
226
|
*/
|
|
218
227
|
mothershipConnect?: MothershipConnector;
|
|
219
228
|
}
|
|
229
|
+
/**
|
|
230
|
+
* Mints a GitHub App installation token for a machine-authed mothership-mode node.
|
|
231
|
+
* `repositoryIds` narrows the mint to those repos (GitHub's `repository_ids` scoping) —
|
|
232
|
+
* the delegation controller always passes the in-scope projection's repo ids, so a
|
|
233
|
+
* delegated token never grants more than the mothership projects for that installation.
|
|
234
|
+
*/
|
|
235
|
+
export interface GitHubTokenDelegation {
|
|
236
|
+
installationToken(installationId: number, opts?: {
|
|
237
|
+
forceRefresh?: boolean;
|
|
238
|
+
repositoryIds?: number[];
|
|
239
|
+
}): Promise<string>;
|
|
240
|
+
}
|
|
220
241
|
/** Exchanges a mothership session for a cached machine token (local-mode mothership login). */
|
|
221
242
|
export interface MothershipConnector {
|
|
222
243
|
connect(session: string): Promise<{
|
package/dist/http/env.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/http/env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,EAC1B,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,cAAc,EACf,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EACV,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAQhF,MAAM,WAAW,eAAgB,SAAQ,IAAI;IAC3C,MAAM,EAAE,SAAS,CAAA;IACjB,8EAA8E;IAC9E,kBAAkB,EAAE,kBAAkB,CAAA;IACtC;;;;OAIG;IACH,mBAAmB,EAAE,mBAAmB,CAAA;IACxC;;;;OAIG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAA;IACvD,mFAAmF;IACnF,QAAQ,EAAE,eAAe,CAAA;IACzB;;;;;;;OAOG;IACH,wBAAwB,CAAC,EAAE,iBAAiB,CAAA;IAC5C;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC;;;;;OAKG;IACH,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C;;;;;OAKG;IACH,iBAAiB,EAAE,iBAAiB,CAAA;IACpC;;;;;;OAMG;IACH,wBAAwB,EAAE,wBAAwB,CAAA;IAClD;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;IAC7C;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC;;;OAGG;IACH,aAAa,CAAC,EAAE,2BAA2B,CAAA;IAC3C;;;;;OAKG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAA;IAChC;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,2BAA2B,CAAA;IACnD;;;;;OAKG;IACH,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAC5D;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,yBAAyB,CAAA;IAC/C;;;;OAIG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAA;IAC/B;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,wBAAwB,CAAA;IACzC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,wBAAwB,CAAA;IAC5C;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE;QAAE,OAAO,EAAE,oBAAoB,CAAA;KAAE,CAAA;IACjD;;;;;;;OAOG;IACH,0BAA0B,CAAC,EAAE,0BAA0B,CAAA;IACvD;;;;;;;OAOG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAA;IACzC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAA;IACjC;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,mBAAmB,CAAA;IAClC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,mBAAmB,CAAA;CACxC;AAED,+FAA+F;AAC/F,MAAM,WAAW,mBAAmB;IAClC,OAAO,CACL,OAAO,EAAE,MAAM,GACd,OAAO,CACN;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,GAClE;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CACjD,CAAA;CACF;AAED,4FAA4F;AAC5F,MAAM,MAAM,MAAM,GAAG;IACnB,SAAS,EAAE;QACT,SAAS,EAAE,eAAe,CAAA;QAC1B,yEAAyE;QACzE,IAAI,CAAC,EAAE,cAAc,CAAA;KACtB,CAAA;CACF,CAAA"}
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/http/env.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { logger, type Logger } from './observability/logger.js';
|
|
2
|
-
export { type AppEnv, type MothershipConnector, type ServerContainer } from './http/env.js';
|
|
2
|
+
export { type AppEnv, type GitHubTokenDelegation, type MothershipConnector, type ServerContainer, } from './http/env.js';
|
|
3
3
|
export { type GitHubBackfillScheduler, type GitHubWebhookIngest, type LlmInProcessRequest, type LlmTokenUsage, type LlmUpstream, type LlmUpstreamEndpoint, type RealtimeGateway, type RuntimeGateways, type WebSearchResponse, type WebSearchResult, type WebSearchUpstream, } from './runtime/gateways.js';
|
|
4
4
|
export { BraveWebSearchUpstream, SearxngWebSearchUpstream, createWebSearchUpstream, createDefaultWebSearchUpstream, DEFAULT_WEB_SEARCH_COUNT, } from './modules/webSearch/upstreams.js';
|
|
5
5
|
export { escalateStaleNotifications } from './runtime/escalateNotifications.js';
|
|
@@ -64,5 +64,6 @@ export * from './persistence/sandbox-mappers.js';
|
|
|
64
64
|
export * from './persistence/decode.js';
|
|
65
65
|
export { type PersistenceRpcRequest, type PersistenceRpcResponse, type PersistenceRpcError, type PersistenceErrorCode, type PersistenceRegistry, type PersistenceMethodTable, type MethodSpec, type ScopeRule, type DispatchOptions, type DispatchResult, REMOTE_PERSISTENCE_METHODS, dispatchPersistenceCall, persistenceErrorToThrowable, statusForPersistenceError, } from './persistence/rpc.js';
|
|
66
66
|
export { type PersistenceRpcClient, createRemoteRepositoryRegistry, HttpPersistenceRpcClient, } from './persistence/remoteRepositories.js';
|
|
67
|
+
export { DelegatedAppTokenSource, type GitHubDelegationClientOptions, } from './github/DelegatedAppTokenSource.js';
|
|
67
68
|
export { makeResolveBinaryArtifactStore, type MakeResolveBinaryArtifactStoreDeps, type BuildBlobBackend, type BuildBlobBackendOptions, type ContentStorageSettingsResolver, } from './persistence/binaryArtifactStore.js';
|
|
68
69
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -89,6 +89,11 @@ export * from './persistence/decode.js';
|
|
|
89
89
|
// `createRemoteRepositoryRegistry` instead of a database-backed repo set.
|
|
90
90
|
export { REMOTE_PERSISTENCE_METHODS, dispatchPersistenceCall, persistenceErrorToThrowable, statusForPersistenceError, } from './persistence/rpc.js';
|
|
91
91
|
export { createRemoteRepositoryRegistry, HttpPersistenceRpcClient, } from './persistence/remoteRepositories.js';
|
|
92
|
+
// Mothership-mode GitHub token delegation: the mothership mints short-lived installation
|
|
93
|
+
// tokens for a machine-authed node (`ServerContainer.githubTokenDelegation` serves it),
|
|
94
|
+
// and a mothership-mode local node consumes them through this AppTokenSource so the shared
|
|
95
|
+
// FetchGitHubClient (and the executor's push-token mint) run without a PAT or App key.
|
|
96
|
+
export { DelegatedAppTokenSource, } from './github/DelegatedAppTokenSource.js';
|
|
92
97
|
// Per-account binary-artifact store resolution (the blob backend is configured per-account
|
|
93
98
|
// in the UI; each facade supplies its own backend factory + default).
|
|
94
99
|
export { makeResolveBinaryArtifactStore, } from './persistence/binaryArtifactStore.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,gFAAgF;AAChF,8EAA8E;AAC9E,qEAAqE;AACrE,OAAO,EAAE,MAAM,EAAe,MAAM,2BAA2B,CAAA;AAC/D,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentController.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentController.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EnvironmentController.d.ts","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentController.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAiC/C;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAAC,MAAM,CAAC,CAmSpD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { bootstrapEnvironmentRepoContract, describeEnvironmentProviderContract, detectFrontendConfigContract, detectServiceProvisioningContract, getEnvironmentAccessContract, getEnvironmentConnectionContract, getEnvironmentContract, listEnvironmentHandlersContract, listEnvironmentsContract, provisionEnvironmentContract, provisionTypeSchema, registerEnvironmentHandlerContract, registerEnvironmentProviderContract, removeCustomManifestTypeContract, repairCustomManifestContract, teardownEnvironmentContract, testEnvironmentConnectionContract, testEnvironmentHandlerContract, unregisterEnvironmentHandlerContract, unregisterEnvironmentProviderContract, updateEnvironmentHandlerSecretsContract, updateEnvironmentSecretsContract, upsertCustomManifestTypeContract, validateEnvironmentRepoContract, } from '@cat-factory/contracts';
|
|
1
|
+
import { bootstrapEnvironmentRepoContract, describeEnvironmentProviderContract, detectFrontendConfigContract, detectServiceProvisioningContract, getEnvironmentAccessContract, getEnvironmentTestContract, startEnvironmentTestContract, stopEnvironmentTestContract, getEnvironmentConnectionContract, getEnvironmentContract, listEnvironmentHandlersContract, listEnvironmentsContract, provisionEnvironmentContract, provisionTypeSchema, registerEnvironmentHandlerContract, registerEnvironmentProviderContract, removeCustomManifestTypeContract, repairCustomManifestContract, teardownEnvironmentContract, testEnvironmentConnectionContract, testEnvironmentHandlerContract, unregisterEnvironmentHandlerContract, unregisterEnvironmentProviderContract, updateEnvironmentHandlerSecretsContract, updateEnvironmentSecretsContract, upsertCustomManifestTypeContract, validateEnvironmentRepoContract, } from '@cat-factory/contracts';
|
|
2
2
|
import { buildHonoRoute } from '@toad-contracts/hono';
|
|
3
3
|
import * as v from 'valibot';
|
|
4
4
|
import { Hono } from 'hono';
|
|
@@ -8,6 +8,16 @@ function requireEnvironments(c) {
|
|
|
8
8
|
return c.get('container').environments ?? null;
|
|
9
9
|
}
|
|
10
10
|
const unavailable = (c) => c.json({ error: { code: 'unavailable', message: 'Environment integration is not configured' } }, 503);
|
|
11
|
+
/** The self-test service, present only when its run store + a git provider are wired. */
|
|
12
|
+
function requireEnvironmentTest(c) {
|
|
13
|
+
return c.get('container').environments?.environmentTest ?? null;
|
|
14
|
+
}
|
|
15
|
+
const testUnavailable = (c) => c.json({
|
|
16
|
+
error: {
|
|
17
|
+
code: 'unavailable',
|
|
18
|
+
message: 'Ephemeral-environment self-testing is not configured for this deployment',
|
|
19
|
+
},
|
|
20
|
+
}, 503);
|
|
11
21
|
const notFound = (c) => c.json({ error: { code: 'not_found', message: 'Environment not found' } }, 404);
|
|
12
22
|
/**
|
|
13
23
|
* Workspace-scoped environment endpoints: provider registration (manifest +
|
|
@@ -210,6 +220,31 @@ export function environmentController() {
|
|
|
210
220
|
const handle = await env.teardownService.teardown(param(c, 'workspaceId'), c.req.valid('param').environmentId);
|
|
211
221
|
return c.json(handle, 200);
|
|
212
222
|
});
|
|
223
|
+
// ---- ephemeral-environment self-test (diagnostic) -----------------------
|
|
224
|
+
// Start a full create-branch → provision → teardown → delete-branch cycle against a
|
|
225
|
+
// service frame's provisioning config. Returns immediately with the `running` run; the
|
|
226
|
+
// durable driver advances it and pushes live `envTest` stage events.
|
|
227
|
+
buildHonoRoute(app, startEnvironmentTestContract, async (c) => {
|
|
228
|
+
const service = requireEnvironmentTest(c);
|
|
229
|
+
if (!service)
|
|
230
|
+
return testUnavailable(c);
|
|
231
|
+
const run = await service.startTest(param(c, 'workspaceId'), c.req.valid('param').blockId, c.get('user')?.id ?? null);
|
|
232
|
+
return c.json(run, 201);
|
|
233
|
+
});
|
|
234
|
+
buildHonoRoute(app, getEnvironmentTestContract, async (c) => {
|
|
235
|
+
const service = requireEnvironmentTest(c);
|
|
236
|
+
if (!service)
|
|
237
|
+
return testUnavailable(c);
|
|
238
|
+
const run = await service.getRun(param(c, 'workspaceId'), c.req.valid('param').id);
|
|
239
|
+
return c.json(run, 200);
|
|
240
|
+
});
|
|
241
|
+
buildHonoRoute(app, stopEnvironmentTestContract, async (c) => {
|
|
242
|
+
const service = requireEnvironmentTest(c);
|
|
243
|
+
if (!service)
|
|
244
|
+
return testUnavailable(c);
|
|
245
|
+
const run = await service.stop(param(c, 'workspaceId'), c.req.valid('param').id);
|
|
246
|
+
return c.json(run, 200);
|
|
247
|
+
});
|
|
213
248
|
return app;
|
|
214
249
|
}
|
|
215
250
|
//# sourceMappingURL=EnvironmentController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentController.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentController.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EnvironmentController.js","sourceRoot":"","sources":["../../../src/modules/environments/EnvironmentController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Hono } from 'hono';
|
|
2
|
+
import type { AppEnv } from '../../http/env.js';
|
|
3
|
+
/**
|
|
4
|
+
* The mothership-mode GitHub delegation API: `POST /internal/github/installation-token`.
|
|
5
|
+
*
|
|
6
|
+
* The mothership owns the GitHub App (its private key never reaches a laptop), but a
|
|
7
|
+
* mothership-mode local node runs the agent containers and gate probes that must reach
|
|
8
|
+
* GitHub — clone/push, CI check reads, merges, the RepoFiles branch ops. This endpoint
|
|
9
|
+
* closes that gap the same way GitHub Apps hand credentials to workers everywhere: the
|
|
10
|
+
* node presents its machine token and an installation id, and the mothership mints the
|
|
11
|
+
* short-lived (~1h) INSTALLATION token for it. No long-lived credential and no App key
|
|
12
|
+
* crosses the machine API — only a scoped short-lived token.
|
|
13
|
+
*
|
|
14
|
+
* Security mirrors `PersistenceController`, then goes further:
|
|
15
|
+
* - The machine-token audience pin runs FIRST (a user session / ws ticket / container
|
|
16
|
+
* token can never reach the mint), before even the availability probe.
|
|
17
|
+
* - A fixed-window rate limit keyed by the AUTHENTICATED node id brakes a compromised
|
|
18
|
+
* or runaway satellite before it can hammer GitHub's mint API.
|
|
19
|
+
* - The call is account-scoped server-side: the installation's own account binding
|
|
20
|
+
* (`GitHubInstallation.accountId` — an installation is bound to exactly one account)
|
|
21
|
+
* must be in the token's scope. An unknown, uninstalled, unbound, or out-of-scope
|
|
22
|
+
* installation is a uniform 404 (no existence leak).
|
|
23
|
+
* - The minted token is REPO-SCOPED (`repository_ids`), not installation-wide: it is
|
|
24
|
+
* narrowed to the live App-linked repos the mothership projects for the installation
|
|
25
|
+
* (`github_repos`), so a delegated token can never reach repos the platform doesn't
|
|
26
|
+
* even track. `user_pat`-linked rows are excluded (not reachable through the App
|
|
27
|
+
* installation). No linked repos ⇒ 404 — there is nothing in scope to grant.
|
|
28
|
+
* - Every mint (and every denial/failure) is audit-logged with the token's nodeId +
|
|
29
|
+
* userId; the client-facing 500 stays opaque.
|
|
30
|
+
*
|
|
31
|
+
* `forceRefresh` passes through so the client can defeat the mothership's in-memory
|
|
32
|
+
* token cache after a permission change on GitHub (repo-scoped mints bypass that cache
|
|
33
|
+
* anyway — see `GitHubAppAuth.installationToken`).
|
|
34
|
+
*
|
|
35
|
+
* Mounted on BOTH facades via the shared controller registration, so either a Node or
|
|
36
|
+
* a Cloudflare deployment can serve it. A deployment that is not a mothership (no
|
|
37
|
+
* `repositories` registry) or has no GitHub App (no `githubTokenDelegation` seam)
|
|
38
|
+
* serves a 503 — after the auth check, so the machine gate is asserted uniformly.
|
|
39
|
+
*/
|
|
40
|
+
/** Fixed-window rate limit for the delegation mint (per authenticated node). */
|
|
41
|
+
export interface GitHubDelegationRateLimit {
|
|
42
|
+
/** Max mints per node per window. */
|
|
43
|
+
limit: number;
|
|
44
|
+
windowMs: number;
|
|
45
|
+
}
|
|
46
|
+
export interface GitHubDelegationControllerOptions {
|
|
47
|
+
/** Override the default mint rate limit (tests inject a tight one). */
|
|
48
|
+
rateLimit?: GitHubDelegationRateLimit;
|
|
49
|
+
/** Injectable clock for the rate-limit window (tests). */
|
|
50
|
+
now?: () => number;
|
|
51
|
+
}
|
|
52
|
+
export declare function githubDelegationController(options?: GitHubDelegationControllerOptions): Hono<AppEnv>;
|
|
53
|
+
//# sourceMappingURL=GitHubDelegationController.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GitHubDelegationController.d.ts","sourceRoot":"","sources":["../../../src/modules/persistence/GitHubDelegationController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAG/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,gFAAgF;AAChF,MAAM,WAAW,yBAAyB;IACxC,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,iCAAiC;IAChD,uEAAuE;IACvE,SAAS,CAAC,EAAE,yBAAyB,CAAA;IACrC,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB;AAUD,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,iCAAsC,GAC9C,IAAI,CAAC,MAAM,CAAC,CA6Id"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { Hono } from 'hono';
|
|
2
|
+
import { signerFor, TOKEN_AUDIENCE } from '../../auth/signing.js';
|
|
3
|
+
import { logger } from '../../observability/logger.js';
|
|
4
|
+
/**
|
|
5
|
+
* Generous for a legitimate satellite: the client (`DelegatedAppTokenSource`) memoises a
|
|
6
|
+
* minted token for 60s per installation, so steady-state traffic is ~1 mint/min per
|
|
7
|
+
* installation the node works — 30/min leaves ample headroom for bursts (run start
|
|
8
|
+
* fan-out, forceRefresh after a grant change) while braking a runaway loop.
|
|
9
|
+
*/
|
|
10
|
+
const DEFAULT_RATE_LIMIT = { limit: 30, windowMs: 60_000 };
|
|
11
|
+
export function githubDelegationController(options = {}) {
|
|
12
|
+
const app = new Hono();
|
|
13
|
+
const { limit, windowMs } = options.rateLimit ?? DEFAULT_RATE_LIMIT;
|
|
14
|
+
const now = options.now ?? Date.now;
|
|
15
|
+
// Fixed-window counters, PER PROCESS/ISOLATE (one Worker isolate / one Node replica) —
|
|
16
|
+
// a coarse abuse brake on the GitHub mint API, not a distributed quota. Keyed by the
|
|
17
|
+
// AUTHENTICATED nodeId (signed into the machine token by the mothership's own mint),
|
|
18
|
+
// so cardinality is bounded by the nodes the mothership provisioned.
|
|
19
|
+
const mintWindows = new Map();
|
|
20
|
+
app.post('/internal/github/installation-token', async (c) => {
|
|
21
|
+
const container = c.get('container');
|
|
22
|
+
// Machine-token gate first: the endpoint's availability must not be probeable
|
|
23
|
+
// without a valid token, and the shared conformance suite asserts the 403 on
|
|
24
|
+
// facades that wire no GitHub App at all.
|
|
25
|
+
const secret = container.config.auth.sessionSecret;
|
|
26
|
+
const token = c.req.header('authorization')?.replace(/^Bearer\s+/i, '');
|
|
27
|
+
const payload = secret
|
|
28
|
+
? await signerFor(secret).verify(token, { aud: TOKEN_AUDIENCE.machine })
|
|
29
|
+
: null;
|
|
30
|
+
if (!payload) {
|
|
31
|
+
return c.json({ error: { code: 'forbidden', message: 'invalid machine token' } }, 403);
|
|
32
|
+
}
|
|
33
|
+
const log = logger.child({
|
|
34
|
+
scope: 'githubDelegation',
|
|
35
|
+
nodeId: payload.nodeId,
|
|
36
|
+
userId: payload.userId,
|
|
37
|
+
});
|
|
38
|
+
// Rate limit right after auth (the key is the authenticated nodeId), before any
|
|
39
|
+
// repository read or mint work.
|
|
40
|
+
const nowMs = now();
|
|
41
|
+
const bucket = mintWindows.get(payload.nodeId);
|
|
42
|
+
if (!bucket || nowMs - bucket.windowStart >= windowMs) {
|
|
43
|
+
mintWindows.set(payload.nodeId, { windowStart: nowMs, count: 1 });
|
|
44
|
+
}
|
|
45
|
+
else if (++bucket.count > limit) {
|
|
46
|
+
log.warn({ limit, windowMs }, 'github delegation: mint rate limit exceeded');
|
|
47
|
+
return c.json({ error: { code: 'rate_limited', message: 'too many token mints, retry shortly' } }, 429);
|
|
48
|
+
}
|
|
49
|
+
const registry = container.repositories;
|
|
50
|
+
const delegation = container.githubTokenDelegation;
|
|
51
|
+
if (!registry || !delegation) {
|
|
52
|
+
return c.json({
|
|
53
|
+
error: {
|
|
54
|
+
code: 'unavailable',
|
|
55
|
+
message: 'GitHub token delegation is not enabled on this deployment',
|
|
56
|
+
},
|
|
57
|
+
}, 503);
|
|
58
|
+
}
|
|
59
|
+
let body;
|
|
60
|
+
try {
|
|
61
|
+
body = (await c.req.json());
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return c.json({ error: { code: 'validation', message: 'invalid request body' } }, 422);
|
|
65
|
+
}
|
|
66
|
+
const installationId = body?.installationId;
|
|
67
|
+
if (typeof installationId !== 'number' || !Number.isInteger(installationId)) {
|
|
68
|
+
return c.json({ error: { code: 'validation', message: 'installationId (integer) is required' } }, 422);
|
|
69
|
+
}
|
|
70
|
+
// Scope binding: an installation is bound to exactly ONE account (migration 0017 —
|
|
71
|
+
// `GitHubInstallation.accountId`; `listWorkspacesForInstallation` fans out to that
|
|
72
|
+
// account's workspaces), so the check is a single point read of the installation row:
|
|
73
|
+
// it must exist, be live (not uninstalled/suspended), and its account must be in the
|
|
74
|
+
// token scope. A null accountId (the auth-disabled binding path — never a mothership,
|
|
75
|
+
// which always runs with auth) fails closed. Uniform 404 on every denial (no
|
|
76
|
+
// existence leak), including when the mothership's wiring lacks the resolver methods.
|
|
77
|
+
const denied = () => c.json({ error: { code: 'not_found', message: 'Not found' } }, 404);
|
|
78
|
+
const installations = registry.githubInstallationRepository;
|
|
79
|
+
const repoProjection = registry.repoProjectionRepository;
|
|
80
|
+
if (typeof installations?.getByInstallationId !== 'function' ||
|
|
81
|
+
typeof repoProjection?.listByInstallation !== 'function') {
|
|
82
|
+
return denied();
|
|
83
|
+
}
|
|
84
|
+
try {
|
|
85
|
+
const installation = (await installations.getByInstallationId(installationId));
|
|
86
|
+
const accountId = installation && !installation.deletedAt ? installation.accountId : null;
|
|
87
|
+
if (typeof accountId !== 'string' || !payload.scope.accountIds.includes(accountId)) {
|
|
88
|
+
log.warn({ installationId }, 'github delegation: installation out of scope, denied');
|
|
89
|
+
return denied();
|
|
90
|
+
}
|
|
91
|
+
// Token scope minimization: narrow the mint to the LIVE App-linked repos the
|
|
92
|
+
// mothership projects for this installation (one batched read across its
|
|
93
|
+
// workspaces), instead of handing out an installation-wide token. `user_pat` rows
|
|
94
|
+
// are excluded — they are reachable only through a member's personal token, never
|
|
95
|
+
// the App installation, and GitHub would reject their ids on the mint. The same
|
|
96
|
+
// repo linked by several workspaces projects one row each, so dedupe by githubId.
|
|
97
|
+
const repos = (await repoProjection.listByInstallation(installationId));
|
|
98
|
+
const repositoryIds = [
|
|
99
|
+
...new Set((repos ?? [])
|
|
100
|
+
.filter((repo) => (repo.linkedVia ?? 'app') !== 'user_pat')
|
|
101
|
+
.map((repo) => repo.githubId)),
|
|
102
|
+
];
|
|
103
|
+
if (repositoryIds.length === 0) {
|
|
104
|
+
// Nothing in scope to grant — same uniform denial as an out-of-scope installation.
|
|
105
|
+
log.warn({ installationId }, 'github delegation: no linked repos to scope, denied');
|
|
106
|
+
return denied();
|
|
107
|
+
}
|
|
108
|
+
const forceRefresh = body.forceRefresh === true;
|
|
109
|
+
const minted = await delegation.installationToken(installationId, {
|
|
110
|
+
forceRefresh,
|
|
111
|
+
repositoryIds,
|
|
112
|
+
});
|
|
113
|
+
// Audit trail: who minted what, scoped how wide. NEVER log the token itself.
|
|
114
|
+
log.info({ installationId, forceRefresh, repoCount: repositoryIds.length }, 'github delegation: minted repo-scoped installation token');
|
|
115
|
+
return c.json({ token: minted }, 200);
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
// Server-side diagnostics only — the client-facing 500 stays opaque so an internal
|
|
119
|
+
// error's message never leaks over the machine API.
|
|
120
|
+
log.error({ installationId, err: error instanceof Error ? error.message : String(error) }, 'github delegation: mint failed');
|
|
121
|
+
return c.json({ error: { code: 'internal', message: 'Internal error' } }, 500);
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
return app;
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=GitHubDelegationController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GitHubDelegationController.js","sourceRoot":"","sources":["../../../src/modules/persistence/GitHubDelegationController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceController.d.ts","sourceRoot":"","sources":["../../../src/modules/workspaces/WorkspaceController.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAIV,UAAU,EAIX,MAAM,wBAAwB,CAAA;AA8G/B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,wGAAwG;AACxG,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACvD;AAKD,wBAAsB,UAAU,CAC9B,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAC5B,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAC1E,OAAO,CAAC,gBAAgB,GAAG,aAAa,GAAG,YAAY,CAAC,CAwB1D;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE;QAAE,iBAAiB,EAAE;YAAE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,CAAA;IACrF,OAAO,CAAC,EAAE;QAAE,iBAAiB,EAAE;YAAE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,CAAA;IAChF;;;;;;;;OAQG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAA;IACzC,0BAA0B,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9D;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,iBAAiB,EAC5B,WAAW,EAAE,MAAM,EACnB,MAAM,GAAE,gBAA+B,GACtC,OAAO,CAAC,UAAU,CAAC,CAmBrB;AAcD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAU/C,+DAA+D;AAC/D,wBAAgB,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"WorkspaceController.d.ts","sourceRoot":"","sources":["../../../src/modules/workspaces/WorkspaceController.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,OAAO,KAAK,EAIV,UAAU,EAIX,MAAM,wBAAwB,CAAA;AA8G/B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,wGAAwG;AACxG,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACvD;AAKD,wBAAsB,UAAU,CAC9B,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAC5B,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAC1E,OAAO,CAAC,gBAAgB,GAAG,aAAa,GAAG,YAAY,CAAC,CAwB1D;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAChC,YAAY,CAAC,EAAE;QAAE,iBAAiB,EAAE;YAAE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,CAAA;IACrF,OAAO,CAAC,EAAE;QAAE,iBAAiB,EAAE;YAAE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,CAAA;IAChF;;;;;;;;OAQG;IACH,+BAA+B,CAAC,EAAE,OAAO,CAAA;IACzC,0BAA0B,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9D;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,iBAAiB,EAC5B,WAAW,EAAE,MAAM,EACnB,MAAM,GAAE,gBAA+B,GACtC,OAAO,CAAC,UAAU,CAAC,CAmBrB;AAcD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAU/C,+DAA+D;AAC/D,wBAAgB,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,CAmOlD"}
|
|
@@ -216,6 +216,9 @@ export function workspaceController() {
|
|
|
216
216
|
// Env-config-repair runs (the durable agent fallback for provider config), so the
|
|
217
217
|
// infrastructure-providers window renders a repair's live progress / outcome on load.
|
|
218
218
|
envConfigRepairJobs,
|
|
219
|
+
// In-flight ephemeral-environment self-test runs, so the service inspector re-attaches
|
|
220
|
+
// to a running test's live stage after a reconnect (see snapshot coherence note).
|
|
221
|
+
environmentTestRuns,
|
|
219
222
|
// Open notifications + merge-preset library, so the board renders the inbox,
|
|
220
223
|
// per-block badges and the task preset picker on load.
|
|
221
224
|
notifications, riskPolicies,
|
|
@@ -251,6 +254,7 @@ export function workspaceController() {
|
|
|
251
254
|
container.spendService.status(workspaceId),
|
|
252
255
|
container.bootstrap?.service.listJobs(workspaceId),
|
|
253
256
|
container.envConfigRepair?.service.listJobs(workspaceId),
|
|
257
|
+
container.environments?.environmentTest?.listRunning(workspaceId),
|
|
254
258
|
container.notifications?.service.listOpen(workspaceId),
|
|
255
259
|
container.riskPolicies?.service.list(workspaceId),
|
|
256
260
|
container.sharedStacks?.service.list(workspaceId),
|
|
@@ -304,6 +308,7 @@ export function workspaceController() {
|
|
|
304
308
|
...budgetTiers,
|
|
305
309
|
...(redacted.bootstrapJobs ? { bootstrapJobs: redacted.bootstrapJobs } : {}),
|
|
306
310
|
...(envConfigRepairJobs ? { envConfigRepairJobs } : {}),
|
|
311
|
+
...(environmentTestRuns ? { environmentTestRuns } : {}),
|
|
307
312
|
...(redacted.notifications ? { notifications: redacted.notifications } : {}),
|
|
308
313
|
...(riskPolicies ? { riskPolicies } : {}),
|
|
309
314
|
...(sharedStacks ? { sharedStacks } : {}),
|