@sensigo/realm-cli 0.13.0 → 0.14.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/agent/gate/slack-gate-notifier.d.ts +1 -1
- package/dist/agent/gate/slack-gate-notifier.d.ts.map +1 -1
- package/dist/agent/gate/slack-gate-notifier.js +1 -1
- package/dist/agent/gate/slack-gate-notifier.js.map +1 -1
- package/dist/agent/gate/slack-gate-server.d.ts +1 -1
- package/dist/agent/gate/slack-gate-server.d.ts.map +1 -1
- package/dist/agent/gate/slack-socket-client.d.ts +1 -1
- package/dist/agent/gate/slack-socket-client.d.ts.map +1 -1
- package/dist/agent/providers/agent-utils.d.ts +7 -2
- package/dist/agent/providers/agent-utils.d.ts.map +1 -1
- package/dist/agent/providers/agent-utils.js +20 -6
- package/dist/agent/providers/agent-utils.js.map +1 -1
- package/dist/agent/run-agent.d.ts +6 -0
- package/dist/agent/run-agent.d.ts.map +1 -1
- package/dist/agent/run-agent.js +5 -0
- package/dist/agent/run-agent.js.map +1 -1
- package/dist/agent/run-attach.d.ts +5 -6
- package/dist/agent/run-attach.d.ts.map +1 -1
- package/dist/agent/run-attach.js +7 -3
- package/dist/agent/run-attach.js.map +1 -1
- package/dist/commands/agent.d.ts +12 -11
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +64 -105
- package/dist/commands/agent.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +55 -29
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/inspect.js +11 -0
- package/dist/commands/inspect.js.map +1 -1
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +6 -2
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/register.d.ts.map +1 -1
- package/dist/commands/register.js +21 -6
- package/dist/commands/register.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +8 -2
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +3 -2
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/test.d.ts.map +1 -1
- package/dist/commands/test.js +15 -4
- package/dist/commands/test.js.map +1 -1
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +18 -5
- package/dist/commands/validate.js.map +1 -1
- package/dist/extensions/extension-identity.d.ts +19 -0
- package/dist/extensions/extension-identity.d.ts.map +1 -1
- package/dist/extensions/extension-identity.js +24 -0
- package/dist/extensions/extension-identity.js.map +1 -1
- package/dist/extensions/load-project-extensions.d.ts +53 -14
- package/dist/extensions/load-project-extensions.d.ts.map +1 -1
- package/dist/extensions/load-project-extensions.js +445 -80
- package/dist/extensions/load-project-extensions.js.map +1 -1
- package/dist/extensions/manifest-secrets.d.ts +36 -0
- package/dist/extensions/manifest-secrets.d.ts.map +1 -0
- package/dist/extensions/manifest-secrets.js +126 -0
- package/dist/extensions/manifest-secrets.js.map +1 -0
- package/dist/index.js +1 -1
- package/package.json +4 -4
- package/dist/agent/preflight.d.ts +0 -36
- package/dist/agent/preflight.d.ts.map +0 -1
- package/dist/agent/preflight.js +0 -81
- package/dist/agent/preflight.js.map +0 -1
package/dist/commands/run.js
CHANGED
|
@@ -7,7 +7,8 @@ import { loadProjectExtensions } from '../extensions/load-project-extensions.js'
|
|
|
7
7
|
export const runCommand = new Command('run')
|
|
8
8
|
.argument('<path>', 'Path to workflow directory or workflow.yaml file')
|
|
9
9
|
.option('--params <json>', 'Initial run parameters as JSON string', '{}')
|
|
10
|
-
.option('--extensions-module <path>', "
|
|
10
|
+
.option('--extensions-module <path>', "CODE override: module that REPLACES the workflow's declared 'extensions' modules (repair tool)")
|
|
11
|
+
.option('--project <dir>', 'CONFIG anchor: deployment root whose realm.yaml applies to definitions without a stored trust_root (default: current directory)')
|
|
11
12
|
.description('Run a workflow interactively (development mode)')
|
|
12
13
|
.action(async (inputPath, options) => {
|
|
13
14
|
const filePath = inputPath.endsWith('.yaml') || inputPath.endsWith('.yml')
|
|
@@ -25,7 +26,12 @@ export const runCommand = new Command('run')
|
|
|
25
26
|
// 1b. Load project extensions BEFORE run creation (fail-before-create).
|
|
26
27
|
let registry;
|
|
27
28
|
try {
|
|
28
|
-
({ registry } = await loadProjectExtensions(definition,
|
|
29
|
+
({ registry } = await loadProjectExtensions(definition, {
|
|
30
|
+
...(options.extensionsModule !== undefined
|
|
31
|
+
? { overrideModule: options.extensionsModule }
|
|
32
|
+
: {}),
|
|
33
|
+
projectDir: options.project ?? process.cwd(),
|
|
34
|
+
}));
|
|
29
35
|
}
|
|
30
36
|
catch (err) {
|
|
31
37
|
console.error(`Error loading extensions: ${err instanceof Error ? err.message : String(err)}`);
|
package/dist/commands/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;KACzC,QAAQ,CAAC,QAAQ,EAAE,kDAAkD,CAAC;KACtE,MAAM,CAAC,iBAAiB,EAAE,uCAAuC,EAAE,IAAI,CAAC;KACxE,MAAM,CACL,4BAA4B,EAC5B,gGAAgG,CACjG;KACA,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAO5E;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAO/F;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,6EAA6E;IAC7E,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACnF;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CA0FrF;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAO5E;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAO/F;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,6EAA6E;IAC7E,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACnF;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CA0FrF;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,SAkDrB,CAAC"}
|
package/dist/commands/serve.js
CHANGED
|
@@ -128,13 +128,14 @@ export const serveCommand = new Command('serve')
|
|
|
128
128
|
.option('--port <number>', 'Port to listen on', '3001')
|
|
129
129
|
.option('--host <address>', 'Bind address', '127.0.0.1')
|
|
130
130
|
.option('--dev', 'Disable authentication (for local development only)')
|
|
131
|
-
.option('--extensions-module <path>', "
|
|
131
|
+
.option('--extensions-module <path>', "CODE override: module that REPLACES every workflow's declared 'extensions' modules (repair tool)")
|
|
132
|
+
.option('--project <dir>', 'CONFIG anchor: deployment root whose realm.yaml applies to definitions without a stored trust_root (default: current directory — serve is operator-launched)')
|
|
132
133
|
.action(async (options) => {
|
|
133
134
|
const port = parseInt(options.port, 10);
|
|
134
135
|
const host = options.host;
|
|
135
136
|
const devMode = options.dev === true || process.env.REALM_DEV === '1';
|
|
136
137
|
const token = process.env.REALM_SERVE_TOKEN;
|
|
137
|
-
const registryProvider = makeRegistryProvider(options.extensionsModule);
|
|
138
|
+
const registryProvider = makeRegistryProvider(options.extensionsModule, options.project ?? process.cwd());
|
|
138
139
|
if (!devMode && !token) {
|
|
139
140
|
console.error('Error: REALM_SERVE_TOKEN is not set.\n' +
|
|
140
141
|
'Set it to a secret token, or use --dev / REALM_DEV=1 for local development only.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/commands/test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,OAAO,KAAK,EAAE,UAAU,EAA0B,MAAM,wBAAwB,CAAC;AAGjF;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAe9F;AAWD,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/commands/test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,OAAO,KAAK,EAAE,UAAU,EAA0B,MAAM,wBAAwB,CAAC;AAGjF;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAe9F;AAWD,eAAO,MAAM,WAAW,SA+DpB,CAAC"}
|
package/dist/commands/test.js
CHANGED
|
@@ -50,10 +50,21 @@ export const testCommand = new Command('test')
|
|
|
50
50
|
// fail-if-unmocked tripwires inside the fixture runner. Extension-free workflows
|
|
51
51
|
// (without an override) pass no `extensions` — current behavior byte-for-byte.
|
|
52
52
|
const definition = loadWorkflowFromFile(resolveWorkflowFilePath(workflowPath));
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
53
|
+
// Sentinel mode: fixtures never see real credentials — secret-bearing handlers are
|
|
54
|
+
// constructed with sentinels and FAIL the fixture on first execution (runner-side).
|
|
55
|
+
const loaded = await loadProjectExtensions(definition, {
|
|
56
|
+
...(opts.extensionsModule !== undefined ? { overrideModule: opts.extensionsModule } : {}),
|
|
57
|
+
secretMode: 'sentinel',
|
|
58
|
+
});
|
|
59
|
+
for (const warning of loaded.sentinelWarnings ?? [])
|
|
60
|
+
console.warn(`⚠ ${warning}`);
|
|
61
|
+
const hasExtensionContent = loaded.manifest.modules.length > 0 ||
|
|
62
|
+
loaded.manifest.adapters.length > 0 ||
|
|
63
|
+
loaded.manifest.handlers.length > 0 ||
|
|
64
|
+
loaded.manifest.processors.length > 0;
|
|
65
|
+
const extensions = hasExtensionContent
|
|
66
|
+
? { registry: loaded.registry, manifest: loaded.manifest }
|
|
67
|
+
: undefined;
|
|
57
68
|
results = await runFixtureTests({
|
|
58
69
|
workflowPath,
|
|
59
70
|
fixturesPath: opts.fixtures,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/commands/test.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAqB;IACrD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,KAAK,CAAC;YAClB,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,8FAA8F;AAC9F,SAAS,uBAAuB,CAAC,YAAoB;IACnD,OAAO,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;QACpE,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC;YACrC,CAAC,CAAC,YAAY,CAAC;AACrB,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;KAC3C,QAAQ,CAAC,iBAAiB,EAAE,kDAAkD,CAAC;KAC/E,cAAc,CAAC,sBAAsB,EAAE,yCAAyC,CAAC;KACjF,MAAM,CACL,4BAA4B,EAC5B,gGAAgG,CACjG;KACA,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,KAAK,EAAE,YAAoB,EAAE,IAAqD,EAAE,EAAE;IAC5F,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,6CAA6C,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,IAAI,OAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,iFAAiF;QACjF,iFAAiF;QACjF,+EAA+E;QAC/E,MAAM,UAAU,GAAG,oBAAoB,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC,CAAC;QAC/E,
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/commands/test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+BpC,eAAO,MAAM,eAAe,SAyExB,CAAC"}
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
// file-based loading so extension modules can be resolved, then a SECOND pass validates
|
|
7
7
|
// step `config` against each resolved adapter's `config_schema` (two-pass).
|
|
8
8
|
import { Command } from 'commander';
|
|
9
|
-
import { join } from 'node:path';
|
|
9
|
+
import { dirname, join, resolve } from 'node:path';
|
|
10
10
|
import { readFileSync } from 'node:fs';
|
|
11
11
|
import { load } from 'js-yaml';
|
|
12
|
-
import { loadWorkflowFromString, loadWorkflowFromFile, WorkflowError } from '@sensigo/realm';
|
|
13
|
-
import { loadProjectExtensions } from '../extensions/load-project-extensions.js';
|
|
12
|
+
import { loadWorkflowFromString, loadWorkflowFromFile, findTrustRoot, WorkflowError, } from '@sensigo/realm';
|
|
13
|
+
import { loadProjectExtensions, checkForOrphanedManifests, } from '../extensions/load-project-extensions.js';
|
|
14
14
|
/** Pre-scan: does the YAML carry a top-level `extensions` key? (Parse errors → false; the
|
|
15
15
|
* real loader below reports them with its existing error surface.) */
|
|
16
16
|
function hasTopLevelExtensions(content) {
|
|
@@ -44,9 +44,17 @@ export const validateCommand = new Command('validate')
|
|
|
44
44
|
return;
|
|
45
45
|
}
|
|
46
46
|
if (!hasTopLevelExtensions(content) && opts.extensionsModule === undefined) {
|
|
47
|
-
// Extension-free: the exact current from-string path — byte-identical behavior
|
|
47
|
+
// Extension-free: the exact current from-string path — byte-identical behavior,
|
|
48
|
+
// plus the orphaned-manifest guard (#123). The from-string loader stamps no
|
|
49
|
+
// source_dir/trust_root, so resolve the same trust root the file-based path would
|
|
50
|
+
// (findTrustRoot walks package.json/.git from the workflow dir) and run the guard
|
|
51
|
+
// structural-first — after the workflow parses, before the `Valid:` print. It throws
|
|
52
|
+
// WorkflowError, which the catch below renders as `Invalid:` + exit(1). resolve()
|
|
53
|
+
// before dirname so a relative `workflow.yaml` doesn't collapse the walk to '.'.
|
|
48
54
|
try {
|
|
49
55
|
const definition = loadWorkflowFromString(content);
|
|
56
|
+
const workflowDir = dirname(resolve(filePath));
|
|
57
|
+
checkForOrphanedManifests(workflowDir, findTrustRoot(workflowDir));
|
|
50
58
|
console.log(`Valid: ${definition.id} v${definition.version} (${Object.keys(definition.steps).length} steps)`);
|
|
51
59
|
}
|
|
52
60
|
catch (err) {
|
|
@@ -62,7 +70,12 @@ export const validateCommand = new Command('validate')
|
|
|
62
70
|
try {
|
|
63
71
|
// Pass 1: structural validation + extension resolution metadata (source_dir/trust_root).
|
|
64
72
|
const definition = loadWorkflowFromFile(filePath);
|
|
65
|
-
const { registry, manifest } = await loadProjectExtensions(definition,
|
|
73
|
+
const { registry, manifest, sentinelWarnings } = await loadProjectExtensions(definition, {
|
|
74
|
+
...(opts.extensionsModule !== undefined ? { overrideModule: opts.extensionsModule } : {}),
|
|
75
|
+
secretMode: 'sentinel',
|
|
76
|
+
});
|
|
77
|
+
for (const warning of sentinelWarnings ?? [])
|
|
78
|
+
console.warn(`⚠ ${warning}`);
|
|
66
79
|
// Pass 2: step config validated against each resolved adapter's config_schema.
|
|
67
80
|
loadWorkflowFromFile(filePath, registry);
|
|
68
81
|
console.log(`Valid: ${definition.id} v${definition.version} (${Object.keys(definition.steps).length} steps)`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,EAAE;AACF,yFAAyF;AACzF,qFAAqF;AACrF,uFAAuF;AACvF,wFAAwF;AACxF,4EAA4E;AAC5E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,16 @@ export interface ComputeIdentityOptions {
|
|
|
19
19
|
capturedAt?: string;
|
|
20
20
|
/** Injected for tests; defaults to `process.pid`. */
|
|
21
21
|
pid?: number;
|
|
22
|
+
/** Deployment-manifest identity (path + raw-bytes sha256) — recorded AND compared. */
|
|
23
|
+
manifest?: {
|
|
24
|
+
path: string;
|
|
25
|
+
content_hash: string;
|
|
26
|
+
};
|
|
27
|
+
/** Secret NAMES referenced by the manifest — recorded, never compared, never values. */
|
|
28
|
+
secretNames?: string[];
|
|
22
29
|
}
|
|
30
|
+
/** sha256 hex of raw bytes/text — exported for the loader's manifest content hash. */
|
|
31
|
+
export declare function sha256HexOf(data: Buffer | string): string;
|
|
23
32
|
/**
|
|
24
33
|
* Computes the dir_tree_v1 identity of a set of loaded extension modules: per-module
|
|
25
34
|
* sha256 entry hashes plus a deterministic directory-tree fingerprint over the deduped
|
|
@@ -45,6 +54,16 @@ export interface RecomputeResult {
|
|
|
45
54
|
current_hash: string;
|
|
46
55
|
current_truncated: boolean;
|
|
47
56
|
};
|
|
57
|
+
/**
|
|
58
|
+
* Deployment-manifest bytes-hash recompute (pure fs read of entry.manifest.path — no
|
|
59
|
+
* YAML parsing, no secret resolution). Absent when the entry recorded no manifest
|
|
60
|
+
* (older entries); current_hash undefined = manifest file missing/unreadable.
|
|
61
|
+
*/
|
|
62
|
+
manifest?: {
|
|
63
|
+
path: string;
|
|
64
|
+
recorded_hash: string;
|
|
65
|
+
current_hash?: string;
|
|
66
|
+
};
|
|
48
67
|
signals?: ExtensionIdentitySignals;
|
|
49
68
|
}
|
|
50
69
|
export interface RecomputeNotComparable {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-identity.d.ts","sourceRoot":"","sources":["../../src/extensions/extension-identity.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D;gGACgG;AAChG,eAAO,MAAM,iBAAiB,6KAC8I,CAAC;AAO7K,2FAA2F;AAC3F,OAAO,EAAE,wBAAwB,IAAI,eAAe,EAAE,CAAC;AAEvD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,sBAAsB;IACrC,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"extension-identity.d.ts","sourceRoot":"","sources":["../../src/extensions/extension-identity.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D;gGACgG;AAChG,eAAO,MAAM,iBAAiB,6KAC8I,CAAC;AAO7K,2FAA2F;AAC3F,OAAO,EAAE,wBAAwB,IAAI,eAAe,EAAE,CAAC;AAEvD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,sBAAsB;IACrC,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sFAAsF;IACtF,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,wFAAwF;IACxF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAEzD;AAyHD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,oBAAoB,EAAE,EAC/B,IAAI,GAAE,sBAA2B,GAChC,sBAAsB,CAyBxB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,IAAI,CAAC,sBAAsB,EAAE,YAAY,GAAG,KAAK,GAAG,gBAAgB,CAAM,GAC/E,sBAAsB,CAiBxB;AAED,wFAAwF;AACxF,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,IAAI,CAAC;IACjB,qFAAqF;IACrF,OAAO,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnF,IAAI,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,OAAO,CAAA;KAAE,CAAC;IAClF;;;;OAIG;IACH,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,OAAO,CAAC,EAAE,wBAAwB,CAAC;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,KAAK,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,sBAAsB,EAC7B,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GAChC,eAAe,GAAG,sBAAsB,CAmD1C"}
|
|
@@ -17,6 +17,10 @@ const MAX_FILES = 2000;
|
|
|
17
17
|
const MAX_TOTAL_BYTES = 50 * 1024 * 1024;
|
|
18
18
|
/** Compares two identity entries — tree_hash + per-module entry hashes + override flag. */
|
|
19
19
|
export { extensionIdentityDiffers as identityDiffers };
|
|
20
|
+
/** sha256 hex of raw bytes/text — exported for the loader's manifest content hash. */
|
|
21
|
+
export function sha256HexOf(data) {
|
|
22
|
+
return sha256Hex(data);
|
|
23
|
+
}
|
|
20
24
|
function sha256Hex(data) {
|
|
21
25
|
return createHash('sha256').update(data).digest('hex');
|
|
22
26
|
}
|
|
@@ -150,6 +154,10 @@ export function computeExtensionIdentity(modules, opts = {}) {
|
|
|
150
154
|
tree: { roots, rules: DIR_TREE_V1_RULES, ...tree },
|
|
151
155
|
...(signals !== undefined ? { signals } : {}),
|
|
152
156
|
coverage: 'dir_tree_v1',
|
|
157
|
+
...(opts.manifest !== undefined ? { manifest: opts.manifest } : {}),
|
|
158
|
+
...(opts.secretNames !== undefined && opts.secretNames.length > 0
|
|
159
|
+
? { secret_names: opts.secretNames }
|
|
160
|
+
: {}),
|
|
153
161
|
...(opts.overrideActive === true ? { override_active: true } : {}),
|
|
154
162
|
};
|
|
155
163
|
}
|
|
@@ -203,6 +211,21 @@ export function recomputeIdentity(entry, opts = {}) {
|
|
|
203
211
|
};
|
|
204
212
|
});
|
|
205
213
|
const tree = sweepTree(entry.tree.roots);
|
|
214
|
+
let manifestResult;
|
|
215
|
+
if (entry.manifest !== undefined) {
|
|
216
|
+
let currentHash;
|
|
217
|
+
try {
|
|
218
|
+
currentHash = sha256Hex(readFileSync(entry.manifest.path));
|
|
219
|
+
}
|
|
220
|
+
catch {
|
|
221
|
+
currentHash = undefined; // missing/unreadable — reported as MISSING by inspect
|
|
222
|
+
}
|
|
223
|
+
manifestResult = {
|
|
224
|
+
path: entry.manifest.path,
|
|
225
|
+
recorded_hash: entry.manifest.content_hash,
|
|
226
|
+
...(currentHash !== undefined ? { current_hash: currentHash } : {}),
|
|
227
|
+
};
|
|
228
|
+
}
|
|
206
229
|
const signals = collectSignals(opts.trustRoot);
|
|
207
230
|
return {
|
|
208
231
|
comparable: true,
|
|
@@ -212,6 +235,7 @@ export function recomputeIdentity(entry, opts = {}) {
|
|
|
212
235
|
current_hash: tree.tree_hash,
|
|
213
236
|
current_truncated: tree.truncated,
|
|
214
237
|
},
|
|
238
|
+
...(manifestResult !== undefined ? { manifest: manifestResult } : {}),
|
|
215
239
|
...(signals !== undefined ? { signals } : {}),
|
|
216
240
|
};
|
|
217
241
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-identity.js","sourceRoot":"","sources":["../../src/extensions/extension-identity.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,0FAA0F;AAC1F,wFAAwF;AACxF,sFAAsF;AACtF,0FAA0F;AAC1F,qEAAqE;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAMzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D;gGACgG;AAChG,MAAM,CAAC,MAAM,iBAAiB,GAC5B,0KAA0K,CAAC;AAE7K,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAC7F,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;AAC7D,MAAM,SAAS,GAAG,IAAI,CAAC;AACvB,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzC,2FAA2F;AAC3F,OAAO,EAAE,wBAAwB,IAAI,eAAe,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"extension-identity.js","sourceRoot":"","sources":["../../src/extensions/extension-identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +1,75 @@
|
|
|
1
1
|
import { ExtensionRegistry } from '@sensigo/realm';
|
|
2
|
-
import type { ExtensionManifest, WorkflowDefinition } from '@sensigo/realm';
|
|
2
|
+
import type { ExtensionManifest, SlackGateNotifierConfig, WorkflowDefinition } from '@sensigo/realm';
|
|
3
|
+
import { type SecretMode } from './manifest-secrets.js';
|
|
3
4
|
export interface LoadProjectExtensionsOptions {
|
|
4
5
|
/**
|
|
5
|
-
* Operator-typed module path that REPLACES the workflow's declared extension
|
|
6
|
-
* (repair/override tool). Containment does not apply to an operator-typed path.
|
|
6
|
+
* Operator-typed module path that REPLACES the workflow's declared extension CODE
|
|
7
|
+
* modules (repair/override tool). Containment does not apply to an operator-typed path.
|
|
8
|
+
* The deployment manifest (config) still loads — `--project` is the manifest override.
|
|
7
9
|
*/
|
|
8
10
|
overrideModule?: string;
|
|
11
|
+
/**
|
|
12
|
+
* The daemon's deployment root (`--project <dir>`), used for definitions WITHOUT
|
|
13
|
+
* trust_root. Absent → no manifest for such definitions (defaults only).
|
|
14
|
+
*/
|
|
15
|
+
projectDir?: string;
|
|
16
|
+
/**
|
|
17
|
+
* 'real' (default): secrets resolve from the declared sources — any miss is a loud
|
|
18
|
+
* aggregated error, construction failures are errors (fail-before-create).
|
|
19
|
+
* 'sentinel' (validate/test; register/watch degrade-with-WARN): `${secret:}` refs
|
|
20
|
+
* resolve to `<sentinel:NAME>` labels and construction failures downgrade to warnings.
|
|
21
|
+
*/
|
|
22
|
+
secretMode?: SecretMode;
|
|
9
23
|
}
|
|
10
24
|
export interface LoadedProjectExtensions {
|
|
11
25
|
registry: ExtensionRegistry;
|
|
12
26
|
manifest: ExtensionManifest;
|
|
27
|
+
/** Secret-resolved notifier configs from the deployment manifest, when declared. */
|
|
28
|
+
notifiers?: {
|
|
29
|
+
slack_gate?: SlackGateNotifierConfig['config'];
|
|
30
|
+
};
|
|
31
|
+
/** Sentinel-mode construction warnings (entries skipped, listed — never silent). */
|
|
32
|
+
sentinelWarnings?: string[];
|
|
33
|
+
/**
|
|
34
|
+
* REAL resolved manifest-secret VALUES (values only, frozen, never names→values;
|
|
35
|
+
* sentinel-mode values excluded; values < 4 chars excluded). Consumed by the agent
|
|
36
|
+
* redaction pass — must never ride any persisted or serialized structure.
|
|
37
|
+
*/
|
|
38
|
+
secretValues?: readonly string[];
|
|
13
39
|
}
|
|
14
40
|
/** @internal Test-only: clears the process-lifetime registry cache. */
|
|
15
41
|
export declare function clearProjectExtensionsCache(): void;
|
|
16
42
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
43
|
+
* Orphaned-manifest guard (#123): throws when a `realm.yaml` sits anywhere in the span
|
|
44
|
+
* `[sourceDir, trustRoot)` — from the workflow directory walking UP to, but NOT including,
|
|
45
|
+
* the trust root. Such a manifest is silently ignored by the strict-single-location loader,
|
|
46
|
+
* so surfacing it loudly turns a confusing downstream `adapter 'X' not registered` (or total
|
|
47
|
+
* silence under validate/sentinel/fixture paths) into an actionable placement error.
|
|
21
48
|
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
49
|
+
* Path-keyed (takes the two directories, NOT a definition) so callers that don't stamp a
|
|
50
|
+
* definition — `realm workflow validate` on an extension-free workflow — can reuse it with a
|
|
51
|
+
* `findTrustRoot(workflowDir)` result. Callers guarantee both paths are known: the loader
|
|
52
|
+
* calls it only when a definition carries both source_dir and trust_root (agent-origin /
|
|
53
|
+
* from-string definitions have no source_dir → never scanned). A workflow dir that is its
|
|
54
|
+
* own trust root has an empty span (no-op). Never scans at or above trust_root — a stray at
|
|
55
|
+
* trust_root IS the loaded manifest; Case C (above trust_root) is deliberately out of #123.
|
|
56
|
+
*/
|
|
57
|
+
export declare function checkForOrphanedManifests(sourceDir: string, trustRoot: string): void;
|
|
58
|
+
/**
|
|
59
|
+
* Loads the project extensions and deployment configuration for a definition:
|
|
60
|
+
* workflow-declared CODE modules + the deployment manifest's constructed instances,
|
|
61
|
+
* one registry, one namespace, one collision map. No extensions, no manifest → the
|
|
62
|
+
* process-stable filesystem-only default registry.
|
|
24
63
|
*
|
|
25
64
|
* CONTRACT: returned registries are shared process-lifetime cache entries. The only
|
|
26
|
-
* permitted mutation is `getOrCreateRateLimiter` (serve bucket persistence, by design)
|
|
27
|
-
* any tier composition on top requires `ExtensionRegistry.clone()`.
|
|
65
|
+
* permitted mutation is `getOrCreateRateLimiter` (serve bucket persistence, by design).
|
|
28
66
|
*/
|
|
29
67
|
export declare function loadProjectExtensions(definition: WorkflowDefinition, opts?: LoadProjectExtensionsOptions): Promise<LoadedProjectExtensions>;
|
|
30
68
|
/**
|
|
31
69
|
* Builds a `registryProvider` for the MCP server (serve / mcp stdio): resolves each
|
|
32
|
-
* definition
|
|
33
|
-
*
|
|
70
|
+
* definition through the process-lifetime project loader. `--extensions-module` overrides
|
|
71
|
+
* CODE modules; `projectDir` anchors the manifest for definitions without trust_root
|
|
72
|
+
* (`realm mcp` passes it ONLY when --project was given — no cwd default there).
|
|
34
73
|
*/
|
|
35
|
-
export declare function makeRegistryProvider(overrideModule?: string): (definition: WorkflowDefinition) => Promise<ExtensionRegistry>;
|
|
74
|
+
export declare function makeRegistryProvider(overrideModule?: string, projectDir?: string): (definition: WorkflowDefinition) => Promise<ExtensionRegistry>;
|
|
36
75
|
//# sourceMappingURL=load-project-extensions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-project-extensions.d.ts","sourceRoot":"","sources":["../../src/extensions/load-project-extensions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"load-project-extensions.d.ts","sourceRoot":"","sources":["../../src/extensions/load-project-extensions.ts"],"names":[],"mappings":"AAwBA,OAAO,EAEL,iBAAiB,EAiBlB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAGV,iBAAiB,EAGjB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AAMxB,OAAO,EAA8C,KAAK,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEpG,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,oFAAoF;IACpF,SAAS,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CAAA;KAAE,CAAC;IAC/D,oFAAoF;IACpF,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B;;;;OAIG;IACH,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC;AAmDD,uEAAuE;AACvE,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAuCD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAqCpF;AAgFD;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,kBAAkB,EAC9B,IAAI,CAAC,EAAE,4BAA4B,GAClC,OAAO,CAAC,uBAAuB,CAAC,CA6IlC;AAqiBD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,cAAc,CAAC,EAAE,MAAM,EACvB,UAAU,CAAC,EAAE,MAAM,GAClB,CAAC,UAAU,EAAE,kBAAkB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAQhE"}
|