@lloyal-labs/rig 3.0.2 → 3.1.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/LICENSE-FAQ.md +2 -2
- package/dist/bundle.d.ts +23 -0
- package/dist/bundle.d.ts.map +1 -1
- package/dist/bundle.js.map +1 -1
- package/dist/protocol.d.ts +2 -3
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +2 -3
- package/dist/protocol.js.map +1 -1
- package/dist/registry.d.ts +22 -31
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +48 -27
- package/dist/registry.js.map +1 -1
- package/package.json +1 -1
package/LICENSE-FAQ.md
CHANGED
|
@@ -17,8 +17,8 @@ of this page is illustration.
|
|
|
17
17
|
|
|
18
18
|
HDK 3.0 runtime packages — `liblloyal`, `lloyal-node`, and the lloyal-sdk
|
|
19
19
|
packages (`agents`, `sdk`, `rig`, `apps/corpus`, `apps/web`) — are
|
|
20
|
-
|
|
21
|
-
Apache 2.0 future grant).
|
|
20
|
+
**[Fair Source](https://fair.io)** under **FSL-1.1-Apache-2.0** (the Functional
|
|
21
|
+
Source License, Apache 2.0 future grant).
|
|
22
22
|
|
|
23
23
|
Each version converts to Apache 2.0 two years after its release. The
|
|
24
24
|
restriction during those two years is narrow: **you cannot offer a competing
|
package/dist/bundle.d.ts
CHANGED
|
@@ -109,6 +109,27 @@ export interface CatalogVersion {
|
|
|
109
109
|
*/
|
|
110
110
|
importName: string;
|
|
111
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* Optional signed display/disclosure block on a catalog entry. Produced by the
|
|
114
|
+
* publish worker and rendered by the storefront; the rig runtime does not read
|
|
115
|
+
* it. Typed here for parity with the worker's `CatalogEntry` so the one signed
|
|
116
|
+
* shape stays in sync. `schemaVersion` is `number` (not a literal) so a future
|
|
117
|
+
* bump is tolerated rather than a type error.
|
|
118
|
+
*/
|
|
119
|
+
export interface CatalogEntryMetadata {
|
|
120
|
+
/** Block schema revision; consumers ignore an unknown future version. */
|
|
121
|
+
schemaVersion: number;
|
|
122
|
+
/** Storefront display title. */
|
|
123
|
+
title: string;
|
|
124
|
+
/** One-line storefront description. */
|
|
125
|
+
shortDesc: string;
|
|
126
|
+
/** Display category (from the storefront taxonomy). */
|
|
127
|
+
category: string;
|
|
128
|
+
/** Optional content-addressed icon URL. */
|
|
129
|
+
iconUrl?: string;
|
|
130
|
+
/** Disclosure entitlement keys — display-only (no runtime enforcement). */
|
|
131
|
+
entitlements: readonly string[];
|
|
132
|
+
}
|
|
112
133
|
/**
|
|
113
134
|
* One app's entry in the catalog.
|
|
114
135
|
*/
|
|
@@ -117,6 +138,8 @@ export interface CatalogEntry {
|
|
|
117
138
|
name: string;
|
|
118
139
|
/** Published versions, unordered. */
|
|
119
140
|
versions: readonly CatalogVersion[];
|
|
141
|
+
/** Optional signed display/disclosure block; absent until a publisher submits metadata. */
|
|
142
|
+
metadata?: CatalogEntryMetadata;
|
|
120
143
|
}
|
|
121
144
|
/**
|
|
122
145
|
* The full signed catalog served at {@link CHANNEL_CATALOG_URL}.
|
package/dist/bundle.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAK3C;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;OAQG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;;OAOG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;OAOG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,QAAQ,EAAE,SAAS,cAAc,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"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"}
|
package/dist/bundle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;;;
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../src/bundle.ts"],"names":[],"mappings":"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"}
|
package/dist/protocol.d.ts
CHANGED
|
@@ -104,9 +104,8 @@ export declare const VALIDATED_MODELS_3_0: readonly ValidatedModelFamily[];
|
|
|
104
104
|
/**
|
|
105
105
|
* The App protocol version this build of `@lloyal-labs/rig` ships.
|
|
106
106
|
*
|
|
107
|
-
* Apps declare `appProtocolVersion` in `app.json`; `defineApp` and
|
|
108
|
-
* registry
|
|
109
|
-
* enable apps whose declared version is not in
|
|
107
|
+
* Apps declare `appProtocolVersion` in `app.json`; `defineApp` and
|
|
108
|
+
* `registry.enable` refuse to enable apps whose declared version is not in
|
|
110
109
|
* {@link SUPPORTED_APP_PROTOCOL_VERSIONS}.
|
|
111
110
|
*/
|
|
112
111
|
export declare const APP_PROTOCOL_VERSION = "3.0";
|
package/dist/protocol.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,MACR,CAAC;AAExC;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,QAImC,CAAC;AAEhE;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,QAM0C,CAAC;AAE3E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,EACZ,OAAO,SAAS,MAAM,EAAE,EACxB,SAAS,MAAM,KACd,MAC+D,CAAC;AAInE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,oBAAoB,EAM/D,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,MACR,CAAC;AAExC;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,QAImC,CAAC;AAEhE;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,QAM0C,CAAC;AAE3E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,EACZ,OAAO,SAAS,MAAM,EAAE,EACxB,SAAS,MAAM,KACd,MAC+D,CAAC;AAInE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,oBAAoB,EAM/D,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,QAAQ,CAAC;AAE1C;;;;;;;GAOG;AACH,eAAO,MAAM,+BAA+B,EAAE,SAAS,MAAM,EAAY,CAAC;AAI1E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,mBAAmB,2CACU,CAAC;AAuB3C;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAI/D,CAAC"}
|
package/dist/protocol.js
CHANGED
|
@@ -110,9 +110,8 @@ exports.VALIDATED_MODELS_3_0 = [
|
|
|
110
110
|
/**
|
|
111
111
|
* The App protocol version this build of `@lloyal-labs/rig` ships.
|
|
112
112
|
*
|
|
113
|
-
* Apps declare `appProtocolVersion` in `app.json`; `defineApp` and
|
|
114
|
-
* registry
|
|
115
|
-
* enable apps whose declared version is not in
|
|
113
|
+
* Apps declare `appProtocolVersion` in `app.json`; `defineApp` and
|
|
114
|
+
* `registry.enable` refuse to enable apps whose declared version is not in
|
|
116
115
|
* {@link SUPPORTED_APP_PROTOCOL_VERSIONS}.
|
|
117
116
|
*/
|
|
118
117
|
exports.APP_PROTOCOL_VERSION = '3.0';
|
package/dist/protocol.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH;;;;;;;;;;;;GAYG;AACI,MAAM,eAAe,GAAG,CAAC,IAAY,EAAU,EAAE,CACtD,eAAe,IAAI,kBAAkB,CAAC;AAD3B,QAAA,eAAe,mBACY;AAExC;;;;;;;GAOG;AACU,QAAA,eAAe,GAC1B,kEAAkE;IAClE,2DAA2D;IAC3D,0EAA0E;IAC1E,6DAA6D,CAAC;AAEhE;;;;;;;;;GASG;AACU,QAAA,mBAAmB,GAC9B,2BAA2B;IAC3B,kEAAkE;IAClE,kCAAkC;IAClC,4EAA4E;IAC5E,2BAA2B;IAC3B,wEAAwE,CAAC;AAE3E;;;;;;;;;;;;;;;GAeG;AACI,MAAM,aAAa,GAAG,CAC3B,IAAY,EACZ,KAAwB,EACxB,OAAe,EACP,EAAE,CACV,MAAM,IAAI,YAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,OAAO,IAAI,CAAC;AALtD,QAAA,aAAa,iBAKyC;AAkBnE;;;;;;;;;;;;;;;GAeG;AACU,QAAA,oBAAoB,GAAoC;IACnE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;IACrC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;IACvC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;IACvC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;IACvC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;CACxC,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH;;;;;;;;;;;;GAYG;AACI,MAAM,eAAe,GAAG,CAAC,IAAY,EAAU,EAAE,CACtD,eAAe,IAAI,kBAAkB,CAAC;AAD3B,QAAA,eAAe,mBACY;AAExC;;;;;;;GAOG;AACU,QAAA,eAAe,GAC1B,kEAAkE;IAClE,2DAA2D;IAC3D,0EAA0E;IAC1E,6DAA6D,CAAC;AAEhE;;;;;;;;;GASG;AACU,QAAA,mBAAmB,GAC9B,2BAA2B;IAC3B,kEAAkE;IAClE,kCAAkC;IAClC,4EAA4E;IAC5E,2BAA2B;IAC3B,wEAAwE,CAAC;AAE3E;;;;;;;;;;;;;;;GAeG;AACI,MAAM,aAAa,GAAG,CAC3B,IAAY,EACZ,KAAwB,EACxB,OAAe,EACP,EAAE,CACV,MAAM,IAAI,YAAY,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,OAAO,IAAI,CAAC;AALtD,QAAA,aAAa,iBAKyC;AAkBnE;;;;;;;;;;;;;;;GAeG;AACU,QAAA,oBAAoB,GAAoC;IACnE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;IACrC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;IACvC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;IACvC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;IACvC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE;CACxC,CAAC;AAEF;;;;;;GAMG;AACU,QAAA,oBAAoB,GAAG,KAAK,CAAC;AAE1C;;;;;;;GAOG;AACU,QAAA,+BAA+B,GAAsB,CAAC,KAAK,CAAC,CAAC;AAE1E,4DAA4D;AAE5D;;;;;;;;;;;;;;;GAeG;AACU,QAAA,mBAAmB,GAC9B,wCAAwC,CAAC;AAE3C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,2BAA2B,GAAe,IAAI,UAAU,CAAC;IAC7D,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;IACrE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;CAC1E,CAAC,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACU,QAAA,mBAAmB,GAAoC,MAAM,CAAC,MAAM,CAC/E,IAAI,GAAG,CAAqB;IAC1B,CAAC,yBAAyB,EAAE,2BAA2B,CAAC;CACzD,CAAC,CACH,CAAC"}
|
package/dist/registry.d.ts
CHANGED
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `createAppRegistry` — harness-wide app registry with
|
|
3
|
-
*
|
|
2
|
+
* `createAppRegistry` — harness-wide app registry with structured,
|
|
3
|
+
* **isolated** per-app lifecycle.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* `createAppRegistry({ configStore, grantStore? })` returns an **empty**
|
|
6
|
+
* registry; `registry.enable(factory)` is the single way to enable an app —
|
|
7
|
+
* creation is never enablement, so the two paths can't collide.
|
|
6
8
|
*
|
|
7
|
-
* - `
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
9
|
+
* - `registry.enable(factory)` runs the factory in its own **detached**
|
|
10
|
+
* Effection scope, seeded with the app-facing framework contexts
|
|
11
|
+
* (`AppConfigStoreCtx`, `RerankerCtx`) so the factory reads config +
|
|
12
|
+
* reranker. The factory body is setup; a `resource()` factory's
|
|
13
|
+
* `ensure(...)` is teardown. Every enabled app's scope is torn down on the
|
|
14
|
+
* registry's own scope exit, reverse enable-order, **best-effort** — a
|
|
15
|
+
* throwing teardown is logged but never strands a sibling, and never
|
|
14
16
|
* crashes the harness. The harness does **not** call a per-app register
|
|
15
|
-
* verb at boot.
|
|
16
|
-
* - `registry.
|
|
17
|
-
* genuine dynamic case (mid-session enable/disable). `enable` →
|
|
17
|
+
* verb at boot; it just calls `enable` for each boot app.
|
|
18
|
+
* - `registry.disable(name)` handles mid-session removal. `enable` →
|
|
18
19
|
* `'enabled'`, `disable` → `'disabled'` (matching {@link AppState}).
|
|
19
20
|
* `disable` swallows + logs a throwing teardown, so a mid-session
|
|
20
21
|
* uninstall can't crash the session — possible only because each app
|
|
@@ -30,7 +31,7 @@
|
|
|
30
31
|
* @category Protocol
|
|
31
32
|
*/
|
|
32
33
|
import type { Operation } from 'effection';
|
|
33
|
-
import type {
|
|
34
|
+
import type { AppRegistry, AppConfigStore, GrantStore } from '@lloyal-labs/lloyal-agents';
|
|
34
35
|
/**
|
|
35
36
|
* Options for {@link createAppRegistry}.
|
|
36
37
|
*/
|
|
@@ -50,35 +51,25 @@ export interface CreateAppRegistryOpts {
|
|
|
50
51
|
* authGuard fails closed (every protected tool denied).
|
|
51
52
|
*/
|
|
52
53
|
grantStore?: GrantStore;
|
|
53
|
-
/**
|
|
54
|
-
* App factories to enable at construction (the boot set). Each runs in
|
|
55
|
-
* its own detached scope and is torn down on registry scope exit. The
|
|
56
|
-
* harness assembles this list from static imports of installed apps
|
|
57
|
-
* (`import { createXxxApp } from '@lloyal-labs/<name>-app'`).
|
|
58
|
-
* **Set `RerankerCtx` before calling** if any factory reads the
|
|
59
|
-
* shared reranker.
|
|
60
|
-
*/
|
|
61
|
-
apps?: readonly AppFactory[];
|
|
62
54
|
}
|
|
63
55
|
/**
|
|
64
56
|
* Create the harness-wide app registry.
|
|
65
57
|
*
|
|
66
58
|
* Sets `AppRegistryCtx` and `AppConfigStoreCtx` in the caller's scope (the
|
|
67
|
-
* `initAgents` pattern)
|
|
68
|
-
*
|
|
69
|
-
* order, best-effort).
|
|
59
|
+
* `initAgents` pattern). Returns an empty registry — enable the boot set with
|
|
60
|
+
* explicit `registry.enable(factory)` calls. Every enabled app's scope is torn
|
|
61
|
+
* down on the caller's scope exit (reverse order, best-effort). Creation is not
|
|
62
|
+
* enablement: there is one way to enable an app, so the two paths can't collide.
|
|
70
63
|
*
|
|
71
64
|
* @example
|
|
72
65
|
* ```ts
|
|
73
66
|
* import { createWebApp } from '@lloyal-labs/web-app';
|
|
74
67
|
* import { createCorpusApp } from '@lloyal-labs/corpus-app';
|
|
75
|
-
* import { createJiraApp } from '@lloyal-labs/jira-app';
|
|
76
68
|
*
|
|
77
69
|
* yield* RerankerCtx.set(reranker); // before, if factories read it
|
|
78
|
-
* const registry = yield* createAppRegistry({
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
* });
|
|
70
|
+
* const registry = yield* createAppRegistry({ configStore });
|
|
71
|
+
* yield* registry.enable(createWebApp);
|
|
72
|
+
* yield* registry.enable(createCorpusApp);
|
|
82
73
|
* // ... pool dispatch ...
|
|
83
74
|
* // registry scope exit tears down every app (factory ensures fire)
|
|
84
75
|
* ```
|
package/dist/registry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAO3C,OAAO,KAAK,EAGV,WAAW,EACX,cAAc,EACd,UAAU,EAEX,MAAM,4BAA4B,CAAC;AAGpC;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,WAAW,EAAE,cAAc,CAAC;IAC5B;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAQD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAiB,iBAAiB,CAChC,IAAI,EAAE,qBAAqB,GAC1B,SAAS,CAAC,WAAW,CAAC,CA2KxB"}
|
package/dist/registry.js
CHANGED
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* `createAppRegistry` — harness-wide app registry with
|
|
4
|
-
*
|
|
3
|
+
* `createAppRegistry` — harness-wide app registry with structured,
|
|
4
|
+
* **isolated** per-app lifecycle.
|
|
5
5
|
*
|
|
6
|
-
*
|
|
6
|
+
* `createAppRegistry({ configStore, grantStore? })` returns an **empty**
|
|
7
|
+
* registry; `registry.enable(factory)` is the single way to enable an app —
|
|
8
|
+
* creation is never enablement, so the two paths can't collide.
|
|
7
9
|
*
|
|
8
|
-
* - `
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
10
|
+
* - `registry.enable(factory)` runs the factory in its own **detached**
|
|
11
|
+
* Effection scope, seeded with the app-facing framework contexts
|
|
12
|
+
* (`AppConfigStoreCtx`, `RerankerCtx`) so the factory reads config +
|
|
13
|
+
* reranker. The factory body is setup; a `resource()` factory's
|
|
14
|
+
* `ensure(...)` is teardown. Every enabled app's scope is torn down on the
|
|
15
|
+
* registry's own scope exit, reverse enable-order, **best-effort** — a
|
|
16
|
+
* throwing teardown is logged but never strands a sibling, and never
|
|
15
17
|
* crashes the harness. The harness does **not** call a per-app register
|
|
16
|
-
* verb at boot.
|
|
17
|
-
* - `registry.
|
|
18
|
-
* genuine dynamic case (mid-session enable/disable). `enable` →
|
|
18
|
+
* verb at boot; it just calls `enable` for each boot app.
|
|
19
|
+
* - `registry.disable(name)` handles mid-session removal. `enable` →
|
|
19
20
|
* `'enabled'`, `disable` → `'disabled'` (matching {@link AppState}).
|
|
20
21
|
* `disable` swallows + logs a throwing teardown, so a mid-session
|
|
21
22
|
* uninstall can't crash the session — possible only because each app
|
|
@@ -39,27 +40,26 @@ const protocol_1 = require("./protocol");
|
|
|
39
40
|
* Create the harness-wide app registry.
|
|
40
41
|
*
|
|
41
42
|
* Sets `AppRegistryCtx` and `AppConfigStoreCtx` in the caller's scope (the
|
|
42
|
-
* `initAgents` pattern)
|
|
43
|
-
*
|
|
44
|
-
* order, best-effort).
|
|
43
|
+
* `initAgents` pattern). Returns an empty registry — enable the boot set with
|
|
44
|
+
* explicit `registry.enable(factory)` calls. Every enabled app's scope is torn
|
|
45
|
+
* down on the caller's scope exit (reverse order, best-effort). Creation is not
|
|
46
|
+
* enablement: there is one way to enable an app, so the two paths can't collide.
|
|
45
47
|
*
|
|
46
48
|
* @example
|
|
47
49
|
* ```ts
|
|
48
50
|
* import { createWebApp } from '@lloyal-labs/web-app';
|
|
49
51
|
* import { createCorpusApp } from '@lloyal-labs/corpus-app';
|
|
50
|
-
* import { createJiraApp } from '@lloyal-labs/jira-app';
|
|
51
52
|
*
|
|
52
53
|
* yield* RerankerCtx.set(reranker); // before, if factories read it
|
|
53
|
-
* const registry = yield* createAppRegistry({
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
* });
|
|
54
|
+
* const registry = yield* createAppRegistry({ configStore });
|
|
55
|
+
* yield* registry.enable(createWebApp);
|
|
56
|
+
* yield* registry.enable(createCorpusApp);
|
|
57
57
|
* // ... pool dispatch ...
|
|
58
58
|
* // registry scope exit tears down every app (factory ensures fire)
|
|
59
59
|
* ```
|
|
60
60
|
*/
|
|
61
61
|
function* createAppRegistry(opts) {
|
|
62
|
-
const { configStore, grantStore
|
|
62
|
+
const { configStore, grantStore } = opts;
|
|
63
63
|
const entries = new Map();
|
|
64
64
|
const order = [];
|
|
65
65
|
const registry = {
|
|
@@ -123,6 +123,32 @@ function* createAppRegistry(opts) {
|
|
|
123
123
|
throw new Error(`App "${app.manifest.name}" is already enabled. ` +
|
|
124
124
|
`Call registry.disable("${app.manifest.name}") first to replace it.`);
|
|
125
125
|
}
|
|
126
|
+
// Namespace-collision guard. The catalog scopes apps by handle
|
|
127
|
+
// (`acme/web` vs `lloyal/web`), but the runtime/model surface is
|
|
128
|
+
// UNSCOPED — `manifest.name` keys this registry, and `protocol.name` +
|
|
129
|
+
// each tool name address the app in the shared spine the model reads.
|
|
130
|
+
// Two same-short-named apps from different publishers therefore collide
|
|
131
|
+
// here. The `manifest.name` check above catches one face; this catches
|
|
132
|
+
// the model-facing faces (otherwise spine-render emits two CATALOG_ENTRY
|
|
133
|
+
// blocks with the same protocol/tool names — silent routing ambiguity +
|
|
134
|
+
// a collided BOUNDARY_MARKER). Fail loud, naming both apps, so the
|
|
135
|
+
// integrator knows it's a cross-publisher clash — not their bug.
|
|
136
|
+
const incomingProtocol = app.manifest.protocol.name;
|
|
137
|
+
const incomingTools = app.manifest.protocol.tools;
|
|
138
|
+
for (const { app: existing } of entries.values()) {
|
|
139
|
+
if (existing.manifest.protocol.name === incomingProtocol) {
|
|
140
|
+
throw new Error(`Cannot enable "${app.manifest.name}": its protocol "${incomingProtocol}" ` +
|
|
141
|
+
`collides with already-enabled "${existing.manifest.name}". Two AgentApps ` +
|
|
142
|
+
`can't share a model-facing protocol name in one harness — disable one, or ` +
|
|
143
|
+
`use apps with distinct protocol names.`);
|
|
144
|
+
}
|
|
145
|
+
const clashTool = incomingTools.find((t) => existing.manifest.protocol.tools.includes(t));
|
|
146
|
+
if (clashTool !== undefined) {
|
|
147
|
+
throw new Error(`Cannot enable "${app.manifest.name}": its tool "${clashTool}" collides with ` +
|
|
148
|
+
`already-enabled "${existing.manifest.name}". Two AgentApps can't share a ` +
|
|
149
|
+
`tool name in one harness — disable one, or use apps with distinct tool names.`);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
126
152
|
entries.set(app.manifest.name, { app, destroy });
|
|
127
153
|
order.push(app.manifest.name);
|
|
128
154
|
added = true;
|
|
@@ -184,11 +210,6 @@ function* createAppRegistry(opts) {
|
|
|
184
210
|
entries.clear();
|
|
185
211
|
order.length = 0;
|
|
186
212
|
});
|
|
187
|
-
if (apps) {
|
|
188
|
-
for (const factory of apps) {
|
|
189
|
-
yield* registry.enable(factory);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
213
|
return registry;
|
|
193
214
|
}
|
|
194
215
|
// ── Helpers ───────────────────────────────────────────────────────
|
package/dist/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|