local-serverless-stack 1.0.1 → 1.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/CHANGELOG.md +125 -3
- package/README.md +75 -26
- package/bin/cli.js +81 -15
- package/bin/i18n.js +30 -3
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/namespaces/services.d.ts +46 -0
- package/dist/client/namespaces/services.d.ts.map +1 -1
- package/dist/client/namespaces/services.js +1 -0
- package/dist/client/namespaces/services.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +17 -0
- package/dist/mcp/tools.js.map +1 -1
- package/dist/server/engine/backends/self-backend.d.ts +26 -1
- package/dist/server/engine/backends/self-backend.d.ts.map +1 -1
- package/dist/server/engine/backends/self-backend.js +104 -11
- package/dist/server/engine/backends/self-backend.js.map +1 -1
- package/dist/server/engine/emulators/dynamodb/expressions/parser.d.ts.map +1 -1
- package/dist/server/engine/emulators/dynamodb/expressions/parser.js +12 -1
- package/dist/server/engine/emulators/dynamodb/expressions/parser.js.map +1 -1
- package/dist/server/engine/emulators/dynamodb/expressions/reserved-words.d.ts +3 -0
- package/dist/server/engine/emulators/dynamodb/expressions/reserved-words.d.ts.map +1 -0
- package/dist/server/engine/emulators/dynamodb/expressions/reserved-words.js +78 -0
- package/dist/server/engine/emulators/dynamodb/expressions/reserved-words.js.map +1 -0
- package/dist/server/engine/emulators/dynamodb/index.d.ts +11 -0
- package/dist/server/engine/emulators/dynamodb/index.d.ts.map +1 -1
- package/dist/server/engine/emulators/dynamodb/index.js +101 -7
- package/dist/server/engine/emulators/dynamodb/index.js.map +1 -1
- package/dist/server/engine/emulators/dynamodb/query.d.ts +1 -0
- package/dist/server/engine/emulators/dynamodb/query.d.ts.map +1 -1
- package/dist/server/engine/emulators/dynamodb/query.js +34 -6
- package/dist/server/engine/emulators/dynamodb/query.js.map +1 -1
- package/dist/server/engine/emulators/s3/index.d.ts +10 -0
- package/dist/server/engine/emulators/s3/index.d.ts.map +1 -1
- package/dist/server/engine/emulators/s3/index.js +369 -25
- package/dist/server/engine/emulators/s3/index.js.map +1 -1
- package/dist/server/engine/emulators/sqs/index.d.ts +2 -0
- package/dist/server/engine/emulators/sqs/index.d.ts.map +1 -1
- package/dist/server/engine/emulators/sqs/index.js +70 -7
- package/dist/server/engine/emulators/sqs/index.js.map +1 -1
- package/dist/server/engine/emulators/sqs/queue.d.ts +2 -1
- package/dist/server/engine/emulators/sqs/queue.d.ts.map +1 -1
- package/dist/server/engine/emulators/sqs/queue.js +68 -35
- package/dist/server/engine/emulators/sqs/queue.js.map +1 -1
- package/dist/server/engine/emulators/ssm/index.d.ts +31 -0
- package/dist/server/engine/emulators/ssm/index.d.ts.map +1 -0
- package/dist/server/engine/emulators/ssm/index.js +670 -0
- package/dist/server/engine/emulators/ssm/index.js.map +1 -0
- package/dist/server/engine/http/errors.d.ts +1 -0
- package/dist/server/engine/http/errors.d.ts.map +1 -1
- package/dist/server/engine/http/errors.js +13 -5
- package/dist/server/engine/http/errors.js.map +1 -1
- package/dist/server/engine/http/is-aws-request.d.ts.map +1 -1
- package/dist/server/engine/http/is-aws-request.js +13 -3
- package/dist/server/engine/http/is-aws-request.js.map +1 -1
- package/dist/server/engine/http/protocols/aws-json.d.ts +1 -0
- package/dist/server/engine/http/protocols/aws-json.d.ts.map +1 -1
- package/dist/server/engine/http/protocols/aws-json.js +13 -0
- package/dist/server/engine/http/protocols/aws-json.js.map +1 -1
- package/dist/server/engine/http/reset.d.ts +4 -0
- package/dist/server/engine/http/reset.d.ts.map +1 -0
- package/dist/server/engine/http/reset.js +17 -0
- package/dist/server/engine/http/reset.js.map +1 -0
- package/dist/server/engine/http/router.d.ts +1 -0
- package/dist/server/engine/http/router.d.ts.map +1 -1
- package/dist/server/engine/http/router.js +185 -34
- package/dist/server/engine/http/router.js.map +1 -1
- package/dist/server/engine/types.d.ts +2 -1
- package/dist/server/engine/types.d.ts.map +1 -1
- package/dist/server/routes/apis.d.ts.map +1 -1
- package/dist/server/routes/apis.js +6 -0
- package/dist/server/routes/apis.js.map +1 -1
- package/dist/server/routes/config.d.ts.map +1 -1
- package/dist/server/routes/config.js +19 -1
- package/dist/server/routes/config.js.map +1 -1
- package/dist/server/routes/services.d.ts.map +1 -1
- package/dist/server/routes/services.js +49 -1
- package/dist/server/routes/services.js.map +1 -1
- package/dist/server/runtime/runtime-worker.js +33 -3
- package/dist/server/runtime/runtime-worker.js.map +1 -1
- package/dist/server/services/api-gateway-events.d.ts +14 -0
- package/dist/server/services/api-gateway-events.d.ts.map +1 -1
- package/dist/server/services/api-gateway-events.js +114 -8
- package/dist/server/services/api-gateway-events.js.map +1 -1
- package/dist/server/services/artifact-staleness.d.ts +20 -0
- package/dist/server/services/artifact-staleness.d.ts.map +1 -0
- package/dist/server/services/artifact-staleness.js +115 -0
- package/dist/server/services/artifact-staleness.js.map +1 -0
- package/dist/server/services/authorizer-service.d.ts +34 -5
- package/dist/server/services/authorizer-service.d.ts.map +1 -1
- package/dist/server/services/authorizer-service.js +0 -0
- package/dist/server/services/authorizer-service.js.map +1 -1
- package/dist/server/services/cfn-intrinsics.d.ts +63 -0
- package/dist/server/services/cfn-intrinsics.d.ts.map +1 -0
- package/dist/server/services/cfn-intrinsics.js +403 -0
- package/dist/server/services/cfn-intrinsics.js.map +1 -0
- package/dist/server/services/cfn-physical-values.d.ts +51 -0
- package/dist/server/services/cfn-physical-values.d.ts.map +1 -0
- package/dist/server/services/cfn-physical-values.js +186 -0
- package/dist/server/services/cfn-physical-values.js.map +1 -0
- package/dist/server/services/cloudformation-parser.d.ts +26 -3
- package/dist/server/services/cloudformation-parser.d.ts.map +1 -1
- package/dist/server/services/cloudformation-parser.js +76 -4
- package/dist/server/services/cloudformation-parser.js.map +1 -1
- package/dist/server/services/config-manager.d.ts +24 -2
- package/dist/server/services/config-manager.d.ts.map +1 -1
- package/dist/server/services/config-manager.js +60 -7
- package/dist/server/services/config-manager.js.map +1 -1
- package/dist/server/services/gateway-manager.d.ts.map +1 -1
- package/dist/server/services/gateway-manager.js +52 -20
- package/dist/server/services/gateway-manager.js.map +1 -1
- package/dist/server/services/lambda-runtime-manager.d.ts +1 -0
- package/dist/server/services/lambda-runtime-manager.d.ts.map +1 -1
- package/dist/server/services/lambda-runtime-manager.js +36 -14
- package/dist/server/services/lambda-runtime-manager.js.map +1 -1
- package/dist/server/services/raw-api-assembler.d.ts +1 -1
- package/dist/server/services/raw-api-assembler.d.ts.map +1 -1
- package/dist/server/services/raw-api-assembler.js +18 -8
- package/dist/server/services/raw-api-assembler.js.map +1 -1
- package/dist/server/services/resource-provisioner.d.ts +12 -0
- package/dist/server/services/resource-provisioner.d.ts.map +1 -1
- package/dist/server/services/resource-provisioner.js +128 -13
- package/dist/server/services/resource-provisioner.js.map +1 -1
- package/dist/server/services/serverless-state-parser.d.ts +45 -2
- package/dist/server/services/serverless-state-parser.d.ts.map +1 -1
- package/dist/server/services/serverless-state-parser.js +217 -29
- package/dist/server/services/serverless-state-parser.js.map +1 -1
- package/dist/server/services/service-graph.d.ts +76 -0
- package/dist/server/services/service-graph.d.ts.map +1 -0
- package/dist/server/services/service-graph.js +914 -0
- package/dist/server/services/service-graph.js.map +1 -0
- package/dist/server/services/service-registrar.d.ts +4 -0
- package/dist/server/services/service-registrar.d.ts.map +1 -1
- package/dist/server/services/service-registrar.js +129 -55
- package/dist/server/services/service-registrar.js.map +1 -1
- package/dist/server/services/source-watcher.d.ts +1 -0
- package/dist/server/services/source-watcher.d.ts.map +1 -1
- package/dist/server/services/source-watcher.js +19 -1
- package/dist/server/services/source-watcher.js.map +1 -1
- package/dist/server/services/worker-runtime.d.ts +82 -0
- package/dist/server/services/worker-runtime.d.ts.map +1 -0
- package/dist/server/services/worker-runtime.js +303 -0
- package/dist/server/services/worker-runtime.js.map +1 -0
- package/dist/ui/assets/{ApisPage-CTOcNna-.js → ApisPage-BkW-QZ0X.js} +1 -1
- package/dist/ui/assets/BucketDetailPage-CJwTQJh7.js +1 -0
- package/dist/ui/assets/BucketsPage-B1xPVhZC.js +1 -0
- package/dist/ui/assets/{DynamoPage-BnFFKnIU.js → DynamoPage-DvbpwZDc.js} +1 -1
- package/dist/ui/assets/DynamoTablePage-xn3Lq3so.js +3 -0
- package/dist/ui/assets/LambdaDetailPage-BhUyO77H.js +4 -0
- package/dist/ui/assets/{LambdasPage-Bg-MWFBb.js → LambdasPage-CUF_4rOH.js} +1 -1
- package/dist/ui/assets/OnboardingPage-U49THUzu.js +1 -0
- package/dist/ui/assets/OpenSearchCollectionPage-BJTVNCq4.js +1 -0
- package/dist/ui/assets/OpenSearchPage-4s-egkB9.js +1 -0
- package/dist/ui/assets/OverviewPage-DJeJQktG.js +1 -0
- package/dist/ui/assets/{OverviewPage-CSWY71vZ.css → OverviewPage-DjQETmb_.css} +1 -1
- package/dist/ui/assets/QueueDetailPage-DWsy5Yt8.js +1 -0
- package/dist/ui/assets/QueuesPage-BZJSqman.js +1 -0
- package/dist/ui/assets/SecretsPage-YC9ua54G.js +1 -0
- package/dist/ui/assets/ServiceDetailPage-Cum5frP4.js +2 -0
- package/dist/ui/assets/ServicesPage-IpaPDuqx.js +2 -0
- package/dist/ui/assets/SettingsPage-BiCRU8O6.js +1 -0
- package/dist/ui/assets/index-BDlrAJhi.css +1 -0
- package/dist/ui/assets/index-BouKSS43.js +38 -0
- package/dist/ui/assets/resourceIcons-DZs28nbs.js +1 -0
- package/dist/ui/index.html +5 -2
- package/package.json +1 -1
- package/dist/ui/assets/BucketDetailPage-BXW8-FrE.js +0 -1
- package/dist/ui/assets/BucketsPage-DY_ITepb.js +0 -1
- package/dist/ui/assets/DynamoTablePage-BLCuyJHU.js +0 -3
- package/dist/ui/assets/LambdaDetailPage-D4rZNLRT.js +0 -4
- package/dist/ui/assets/OnboardingPage-nnl313Fm.js +0 -1
- package/dist/ui/assets/OpenSearchCollectionPage-Dn15lH_F.js +0 -1
- package/dist/ui/assets/OpenSearchPage-CgD5isok.js +0 -1
- package/dist/ui/assets/OverviewPage-m5sUr8IN.js +0 -1
- package/dist/ui/assets/QueueDetailPage-Ch_FDDoN.js +0 -1
- package/dist/ui/assets/QueuesPage-C_yDuGDu.js +0 -1
- package/dist/ui/assets/SecretsPage-BSGMSoqy.js +0 -1
- package/dist/ui/assets/ServiceDetailPage-6KyohyjI.js +0 -2
- package/dist/ui/assets/ServicesPage-BbSetOMo.js +0 -2
- package/dist/ui/assets/SettingsPage-BgF1jFr6.js +0 -1
- package/dist/ui/assets/index-D627ZyYU.css +0 -1
- package/dist/ui/assets/index-DuSPnI19.js +0 -37
- package/dist/ui/assets/resourceIcons-baecADXA.js +0 -1
package/bin/cli.js
CHANGED
|
@@ -51,19 +51,25 @@ function runtimePaths() {
|
|
|
51
51
|
/**
|
|
52
52
|
* Load configuration. An explicit `--config <path>` (or LSS_CONFIG env) wins over
|
|
53
53
|
* the cwd/home search so an isolated instance can point at its own config file.
|
|
54
|
-
*
|
|
55
|
-
*
|
|
54
|
+
*
|
|
55
|
+
* A missing or unparseable explicit file is a hard error (exit 1), for every
|
|
56
|
+
* command. It used to warn and fall back to the cwd/home search — and that
|
|
57
|
+
* search resolves to whatever instance the default config describes, so a typo
|
|
58
|
+
* in `lss stop --config ./wrong.json` stopped a DIFFERENT running stack. Naming
|
|
59
|
+
* a file is a statement about which instance you mean; guessing another one is
|
|
60
|
+
* never the safe default.
|
|
56
61
|
*/
|
|
57
62
|
function loadConfig() {
|
|
58
63
|
if (EXPLICIT_CONFIG) {
|
|
59
|
-
if (fs.existsSync(EXPLICIT_CONFIG)) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
}
|
|
66
|
-
console.
|
|
64
|
+
if (!fs.existsSync(EXPLICIT_CONFIG)) {
|
|
65
|
+
console.error(t('config.explicitNotFound', { path: EXPLICIT_CONFIG }));
|
|
66
|
+
process.exit(1);
|
|
67
|
+
}
|
|
68
|
+
try {
|
|
69
|
+
return JSON.parse(fs.readFileSync(EXPLICIT_CONFIG, 'utf-8'));
|
|
70
|
+
} catch (error) {
|
|
71
|
+
console.error(t('config.explicitParseFailed', { path: EXPLICIT_CONFIG, error: formatError(error) }));
|
|
72
|
+
process.exit(1);
|
|
67
73
|
}
|
|
68
74
|
}
|
|
69
75
|
|
|
@@ -106,8 +112,9 @@ function envPort(name) {
|
|
|
106
112
|
* documented workflow (docs/CONFIGURATION.md), so it has to agree end to end.
|
|
107
113
|
*/
|
|
108
114
|
function getConfig(config) {
|
|
115
|
+
const serverPort = envPort('LSS_DASHBOARD_PORT') || envPort('PORT') || config.serverPort || DEFAULT_PORT;
|
|
109
116
|
return {
|
|
110
|
-
serverPort
|
|
117
|
+
serverPort,
|
|
111
118
|
enableDynamoProxy: process.env.LSS_ENABLE_DYNAMO_PROXY
|
|
112
119
|
? process.env.LSS_ENABLE_DYNAMO_PROXY === 'true' || process.env.LSS_ENABLE_DYNAMO_PROXY === '1'
|
|
113
120
|
: config.enableDynamoProxy || false,
|
|
@@ -115,7 +122,9 @@ function getConfig(config) {
|
|
|
115
122
|
mode: config.mode || 'managed',
|
|
116
123
|
stateDir: config.stateDir,
|
|
117
124
|
engine: config.engine,
|
|
118
|
-
|
|
125
|
+
// Follows serverPort unless set explicitly, exactly like the server
|
|
126
|
+
// (ConfigManager.getSelfEnginePort): one port for the whole stack.
|
|
127
|
+
selfEnginePort: envPort('LSS_ENGINE_PORT') || (config.selfEngine && config.selfEngine.port) || serverPort,
|
|
119
128
|
};
|
|
120
129
|
}
|
|
121
130
|
|
|
@@ -497,19 +506,23 @@ function buildHttpError(res, data) {
|
|
|
497
506
|
return new Error(snippet ? `HTTP ${statusText}: ${snippet}` : t('error.httpNoBody', { status: statusText }));
|
|
498
507
|
}
|
|
499
508
|
|
|
500
|
-
|
|
509
|
+
// `options.port` / `options.headers` address the engine's own listener when it
|
|
510
|
+
// is split from the orchestrator (`lss reset`); everything else talks to the
|
|
511
|
+
// orchestrator API on serverPort.
|
|
512
|
+
function postJson(path, body, options = {}) {
|
|
501
513
|
return new Promise((resolve, reject) => {
|
|
502
514
|
const http = require('http');
|
|
503
515
|
const payload = JSON.stringify(body || {});
|
|
504
516
|
const req = http.request(
|
|
505
517
|
{
|
|
506
518
|
hostname: 'localhost',
|
|
507
|
-
port: getServerPort(),
|
|
519
|
+
port: options.port || getServerPort(),
|
|
508
520
|
path,
|
|
509
521
|
method: 'POST',
|
|
510
522
|
headers: {
|
|
511
523
|
'Content-Type': 'application/json',
|
|
512
524
|
'Content-Length': Buffer.byteLength(payload),
|
|
525
|
+
...options.headers,
|
|
513
526
|
},
|
|
514
527
|
},
|
|
515
528
|
res => {
|
|
@@ -740,6 +753,47 @@ async function clearSeed(tableName) {
|
|
|
740
753
|
}
|
|
741
754
|
}
|
|
742
755
|
|
|
756
|
+
/**
|
|
757
|
+
* `lss reset` — wipe every emulator's state (tables, queues, buckets, topics,
|
|
758
|
+
* rules, secrets, collections…) in the running engine, without restarting it.
|
|
759
|
+
*
|
|
760
|
+
* Talks to the engine's own `POST /_lss/reset`, on selfEnginePort: that is the
|
|
761
|
+
* shared port by default, and the engine's separate listener when the two are
|
|
762
|
+
* split. Registered services stay registered — `lss register` re-provisions
|
|
763
|
+
* their resources. Asks for the same `confirmar` token as seed:clear.
|
|
764
|
+
*/
|
|
765
|
+
async function resetEngine() {
|
|
766
|
+
ensureRunningOrExit();
|
|
767
|
+
const cfg = getConfig(loadConfig());
|
|
768
|
+
const engineUrl = `http://localhost:${cfg.selfEnginePort}`;
|
|
769
|
+
console.log(t('clear.warning'));
|
|
770
|
+
console.log(t('reset.target'));
|
|
771
|
+
console.log(t('clear.engine', { url: engineUrl }));
|
|
772
|
+
console.log(t('clear.noAws'));
|
|
773
|
+
console.log('');
|
|
774
|
+
|
|
775
|
+
if (process.argv.includes('--yes') || process.argv.includes('-y')) {
|
|
776
|
+
console.log(t('clear.skipPrompt'));
|
|
777
|
+
} else {
|
|
778
|
+
const ok = await promptConfirmation('confirmar');
|
|
779
|
+
if (!ok) {
|
|
780
|
+
console.log(t('seed.aborted'));
|
|
781
|
+
return;
|
|
782
|
+
}
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
try {
|
|
786
|
+
const res = await postJson('/_lss/reset', {}, {
|
|
787
|
+
port: cfg.selfEnginePort,
|
|
788
|
+
headers: { 'x-lss-confirm-reset': 'true' },
|
|
789
|
+
});
|
|
790
|
+
console.log(t(res.persistence ? 'reset.donePersistent' : 'reset.done'));
|
|
791
|
+
} catch (e) {
|
|
792
|
+
console.error(t('reset.failed'), formatError(e));
|
|
793
|
+
process.exit(1);
|
|
794
|
+
}
|
|
795
|
+
}
|
|
796
|
+
|
|
743
797
|
/**
|
|
744
798
|
* `lss mcp` — run the Model Context Protocol server on stdio.
|
|
745
799
|
*
|
|
@@ -759,6 +813,10 @@ async function clearSeed(tableName) {
|
|
|
759
813
|
async function registerServices(paths) {
|
|
760
814
|
ensureRunningOrExit();
|
|
761
815
|
const targets = paths.length > 0 ? paths : ['.'];
|
|
816
|
+
// `autoPackage` only packages when the template is MISSING, so on a service
|
|
817
|
+
// already packaged once `register` faithfully re-registers whatever is on
|
|
818
|
+
// disk. `--repackage` is how the operator says "build first, then register".
|
|
819
|
+
const repackage = process.argv.includes('--repackage');
|
|
762
820
|
let failed = 0;
|
|
763
821
|
for (const target of targets) {
|
|
764
822
|
const servicePath = path.resolve(target);
|
|
@@ -768,7 +826,7 @@ async function registerServices(paths) {
|
|
|
768
826
|
continue;
|
|
769
827
|
}
|
|
770
828
|
try {
|
|
771
|
-
const result = await postJson('/api/services/register', { servicePath });
|
|
829
|
+
const result = await postJson('/api/services/register', { servicePath, repackage });
|
|
772
830
|
console.log(t('register.ok', {
|
|
773
831
|
name: result.serviceName,
|
|
774
832
|
resources: result.resourcesCount,
|
|
@@ -927,12 +985,14 @@ function showHelp() {
|
|
|
927
985
|
cmd('scan', 'help.cmd.scan'),
|
|
928
986
|
cmd('register [path...]', 'help.cmd.register'),
|
|
929
987
|
cmd('seed:clear [table]', 'help.cmd.seedClear'),
|
|
988
|
+
cmd('reset', 'help.cmd.reset'),
|
|
930
989
|
cmd('mcp', 'help.cmd.mcp'),
|
|
931
990
|
cmd('help', 'help.cmd.help'),
|
|
932
991
|
'',
|
|
933
992
|
t('help.options'),
|
|
934
993
|
opt('--config <path>', 'help.opt.config'),
|
|
935
994
|
opt('--enable-dynamo-proxy', 'help.opt.dynamoProxy'),
|
|
995
|
+
opt('--repackage', 'help.opt.repackage'),
|
|
936
996
|
opt('--wait[=<seconds>]', 'help.opt.wait'),
|
|
937
997
|
opt('--yes, -y', 'help.opt.yes'),
|
|
938
998
|
'',
|
|
@@ -940,6 +1000,7 @@ function showHelp() {
|
|
|
940
1000
|
opt('LSS_DASHBOARD_PORT', 'help.env.dashboardPort'),
|
|
941
1001
|
opt('LSS_ENGINE_PORT', 'help.env.enginePort'),
|
|
942
1002
|
opt('LSS_ENGINE_DATA_DIR', 'help.env.engineDataDir'),
|
|
1003
|
+
opt('LSS_FALLBACK_ENDPOINT', 'help.env.fallbackEndpoint'),
|
|
943
1004
|
opt('AWS_REGION', 'help.env.awsRegion'),
|
|
944
1005
|
opt('LSS_LANG', 'help.env.lang'),
|
|
945
1006
|
'',
|
|
@@ -973,6 +1034,7 @@ function showHelp() {
|
|
|
973
1034
|
helpExample('npx lss seed users', t('help.ex.seedTable')),
|
|
974
1035
|
helpExample('npx lss seed:clear users', t('help.ex.seedClear')),
|
|
975
1036
|
helpExample('npx lss seed:clear users --yes', t('help.ex.seedClearYes')),
|
|
1037
|
+
helpExample('npx lss reset --yes', t('help.ex.reset')),
|
|
976
1038
|
'',
|
|
977
1039
|
].join('\n'));
|
|
978
1040
|
}
|
|
@@ -1049,6 +1111,7 @@ module.exports = {
|
|
|
1049
1111
|
showLogs,
|
|
1050
1112
|
runSeed,
|
|
1051
1113
|
clearSeed,
|
|
1114
|
+
resetEngine,
|
|
1052
1115
|
showHelp,
|
|
1053
1116
|
};
|
|
1054
1117
|
|
|
@@ -1074,6 +1137,9 @@ if (require.main === module) {
|
|
|
1074
1137
|
case 'seed:clear':
|
|
1075
1138
|
clearSeed(firstPositional());
|
|
1076
1139
|
break;
|
|
1140
|
+
case 'reset':
|
|
1141
|
+
resetEngine();
|
|
1142
|
+
break;
|
|
1077
1143
|
case 'register':
|
|
1078
1144
|
registerServices(allPositionals());
|
|
1079
1145
|
break;
|
package/bin/i18n.js
CHANGED
|
@@ -53,7 +53,8 @@ const MESSAGES = {
|
|
|
53
53
|
'scan.warning.invalid-json': 'serverless.json is not valid JSON',
|
|
54
54
|
// --- config discovery --------------------------------------------------
|
|
55
55
|
'config.parseFailed': '⚠️ Failed to parse config file {path}',
|
|
56
|
-
'config.
|
|
56
|
+
'config.explicitNotFound': '❌ Config file not found: {path} (given by --config / LSS_CONFIG). Not falling back to the default config search — it could address a different instance.',
|
|
57
|
+
'config.explicitParseFailed': '❌ Could not parse config file {path} (given by --config / LSS_CONFIG): {error}',
|
|
57
58
|
|
|
58
59
|
// --- lifecycle ---------------------------------------------------------
|
|
59
60
|
'start.already': '⚠️ LSS Orchestrator is already running (PID: {pid})',
|
|
@@ -154,6 +155,10 @@ const MESSAGES = {
|
|
|
154
155
|
'clear.skipPrompt': '↳ --yes given, skipping the interactive confirmation.',
|
|
155
156
|
'clear.listFailed': '❌ Could not list the tables before clearing:',
|
|
156
157
|
'clear.failed': '❌ Clear failed:',
|
|
158
|
+
'reset.target': ' Target: ALL engine state — tables, queues, buckets, topics, rules, secrets, collections',
|
|
159
|
+
'reset.done': '✅ Engine reset: every emulator is empty. Run `lss register` to re-provision your services\' resources.',
|
|
160
|
+
'reset.donePersistent': '✅ Engine reset: every emulator is empty and its data directory was wiped. Run `lss register` to re-provision your services\' resources.',
|
|
161
|
+
'reset.failed': '❌ Reset failed:',
|
|
157
162
|
|
|
158
163
|
// --- mcp ---------------------------------------------------------------
|
|
159
164
|
'mcp.missing': '❌ MCP server build not found. Run `npm run build` first.',
|
|
@@ -177,15 +182,18 @@ const MESSAGES = {
|
|
|
177
182
|
'help.cmd.scan': 'List every Serverless/osls service found under the project root (registered/installed/packaged flags, ports and package command)',
|
|
178
183
|
'help.cmd.register': 'Register services with the running orchestrator (defaults to the current directory; packaging runs on demand via autoPackage)',
|
|
179
184
|
'help.cmd.seedClear': 'Delete every item from the given table (or from every table that has a seed file). Asks for interactive confirmation (type "confirmar") before any write.',
|
|
185
|
+
'help.cmd.reset': 'Wipe ALL engine state (every table, queue, bucket, topic, rule, secret and collection) without restarting. Asks for interactive confirmation (type "confirmar").',
|
|
180
186
|
'help.cmd.mcp': 'Run the Model Context Protocol server on stdio, so an MCP client can drive this stack with tools. Requires a running orchestrator; see docs/MCP.md.',
|
|
181
187
|
'help.cmd.help': 'Show this help message',
|
|
182
188
|
'help.opt.config': 'Load config from this file (precedes the cwd/home search). Applies to start/stop/status/logs, so an isolated instance can be addressed without cd-ing into its folder.',
|
|
183
189
|
'help.opt.dynamoProxy': 'Enable the DynamoDB proxy on port 8000 (for the start command)',
|
|
190
|
+
'help.opt.repackage': 'On register, run the service packaging command before reading the artifacts, even when they already exist. autoPackage only covers the missing-template case, so this is what loads code you just edited. Without it, register warns when the package predates the sources but still registers what is on disk.',
|
|
184
191
|
'help.opt.wait': 'On start, block until the orchestrator answers GET /api/health (default 30s) and exit non-zero — with the log tail — if it never does. What a sequential chain needs so the next step is not run against a stack that is not up.',
|
|
185
192
|
'help.opt.yes': 'Skip the interactive confirmation on seed:clear (use only in CI)',
|
|
186
193
|
'help.env.dashboardPort': 'Orchestrator port (overrides serverPort)',
|
|
187
194
|
'help.env.enginePort': 'Self engine port (overrides selfEngine.port)',
|
|
188
195
|
'help.env.engineDataDir': 'Self engine state directory (overrides selfEngine.dataDir)',
|
|
196
|
+
'help.env.fallbackEndpoint': 'Forward AWS services the engine does not emulate to this endpoint (overrides selfEngine.fallbackEndpoint)',
|
|
189
197
|
'help.env.awsRegion': 'Default region for provisioning and the explorers',
|
|
190
198
|
'help.env.lang': 'CLI language: en, pt-BR or es (falls back to LC_ALL/LC_MESSAGES/LANG)',
|
|
191
199
|
'help.config.intro': 'Create a lss.config.json or .lssrc file in your project root to customize:',
|
|
@@ -203,6 +211,7 @@ const MESSAGES = {
|
|
|
203
211
|
'help.ex.seedTable': 'Seed only the "users" table',
|
|
204
212
|
'help.ex.seedClear': 'Delete every item from "users" (with confirmation)',
|
|
205
213
|
'help.ex.seedClearYes': 'Same thing, without the prompt (CI)',
|
|
214
|
+
'help.ex.reset': 'Empty every emulator, without the prompt (CI)',
|
|
206
215
|
},
|
|
207
216
|
|
|
208
217
|
'pt-BR': {
|
|
@@ -213,7 +222,8 @@ const MESSAGES = {
|
|
|
213
222
|
'scan.warning.unreadable-config': 'não consegui ler {file}',
|
|
214
223
|
'scan.warning.invalid-json': 'serverless.json não é um JSON válido',
|
|
215
224
|
'config.parseFailed': '⚠️ Não consegui ler o arquivo de config {path}',
|
|
216
|
-
'config.
|
|
225
|
+
'config.explicitNotFound': '❌ Arquivo de config não encontrado: {path} (informado por --config / LSS_CONFIG). Sem fallback para a busca padrão de config — ela poderia apontar para outra instância.',
|
|
226
|
+
'config.explicitParseFailed': '❌ Não consegui ler o arquivo de config {path} (informado por --config / LSS_CONFIG): {error}',
|
|
217
227
|
|
|
218
228
|
'start.already': '⚠️ O orquestrador LSS já está rodando (PID: {pid})',
|
|
219
229
|
'start.starting': '🚀 Iniciando o orquestrador LSS...',
|
|
@@ -304,6 +314,10 @@ const MESSAGES = {
|
|
|
304
314
|
'clear.skipPrompt': '↳ --yes informado, pulando a confirmação interativa.',
|
|
305
315
|
'clear.listFailed': '❌ Não consegui listar as tabelas antes de limpar:',
|
|
306
316
|
'clear.failed': '❌ A limpeza falhou:',
|
|
317
|
+
'reset.target': ' Alvo: TODO o estado do engine — tabelas, filas, buckets, tópicos, regras, secrets, coleções',
|
|
318
|
+
'reset.done': '✅ Engine resetado: todos os emuladores estão vazios. Rode `lss register` para reprovisionar os recursos dos seus serviços.',
|
|
319
|
+
'reset.donePersistent': '✅ Engine resetado: todos os emuladores estão vazios e o diretório de dados foi apagado. Rode `lss register` para reprovisionar os recursos dos seus serviços.',
|
|
320
|
+
'reset.failed': '❌ O reset falhou:',
|
|
307
321
|
|
|
308
322
|
'mcp.missing': '❌ Build do servidor MCP não encontrado. Rode `npm run build` antes.',
|
|
309
323
|
'mcp.startFailed': '❌ Não consegui subir o servidor MCP:',
|
|
@@ -323,15 +337,18 @@ const MESSAGES = {
|
|
|
323
337
|
'help.cmd.scan': 'Lista todo serviço Serverless/osls encontrado sob a raiz do projeto (flags registrado/instalado/empacotado, portas e comando de package)',
|
|
324
338
|
'help.cmd.register': 'Registra serviços no orquestrador que está rodando (usa o diretório atual por padrão; o empacotamento roda sob demanda via autoPackage)',
|
|
325
339
|
'help.cmd.seedClear': 'Apaga todos os itens da tabela informada (ou de todas as tabelas com arquivo de seed). Pede confirmação interativa (digitar "confirmar") antes de qualquer escrita.',
|
|
340
|
+
'help.cmd.reset': 'Apaga TODO o estado do engine (todas as tabelas, filas, buckets, tópicos, regras, secrets e coleções) sem reiniciar. Pede confirmação interativa (digitar "confirmar").',
|
|
326
341
|
'help.cmd.mcp': 'Roda o servidor Model Context Protocol no stdio, para um cliente MCP dirigir esta stack com tools. Precisa do orquestrador rodando; veja docs/MCP.md.',
|
|
327
342
|
'help.cmd.help': 'Mostra esta ajuda',
|
|
328
343
|
'help.opt.config': 'Carrega a config deste arquivo (tem precedência sobre a busca em cwd/home). Vale para start/stop/status/logs, então dá para endereçar uma instância isolada sem entrar na pasta dela.',
|
|
329
344
|
'help.opt.dynamoProxy': 'Liga o proxy DynamoDB na porta 8000 (para o comando start)',
|
|
345
|
+
'help.opt.repackage': 'No register, roda o comando de empacotamento do serviço antes de ler os artefatos, mesmo que eles já existam. O autoPackage só cobre o caso de template ausente, então é isto que carrega o código que você acabou de editar. Sem a flag, o register avisa quando o pacote é anterior às fontes, mas registra o que está no disco.',
|
|
330
346
|
'help.opt.wait': 'No start, bloqueia até o orquestrador responder GET /api/health (padrão 30s) e sai com código diferente de zero — mostrando o fim do log — se ele não responder. É o que uma cadeia sequencial precisa para não rodar o passo seguinte contra um stack que não subiu.',
|
|
331
347
|
'help.opt.yes': 'Pula a confirmação interativa do seed:clear (use só em CI)',
|
|
332
348
|
'help.env.dashboardPort': 'Porta do orquestrador (sobrepõe serverPort)',
|
|
333
349
|
'help.env.enginePort': 'Porta do self engine (sobrepõe selfEngine.port)',
|
|
334
350
|
'help.env.engineDataDir': 'Diretório de estado do self engine (sobrepõe selfEngine.dataDir)',
|
|
351
|
+
'help.env.fallbackEndpoint': 'Encaminha para este endpoint os serviços AWS que o engine não emula (sobrepõe selfEngine.fallbackEndpoint)',
|
|
335
352
|
'help.env.awsRegion': 'Região padrão para o provisionamento e para os explorers',
|
|
336
353
|
'help.env.lang': 'Idioma da CLI: en, pt-BR ou es (cai para LC_ALL/LC_MESSAGES/LANG)',
|
|
337
354
|
'help.config.intro': 'Crie um lss.config.json ou .lssrc na raiz do projeto para customizar:',
|
|
@@ -349,6 +366,7 @@ const MESSAGES = {
|
|
|
349
366
|
'help.ex.seedTable': 'Semeia só a tabela "users"',
|
|
350
367
|
'help.ex.seedClear': 'Apaga todos os itens de "users" (com confirmação)',
|
|
351
368
|
'help.ex.seedClearYes': 'Mesma coisa, sem prompt (CI)',
|
|
369
|
+
'help.ex.reset': 'Esvazia todos os emuladores, sem prompt (CI)',
|
|
352
370
|
},
|
|
353
371
|
|
|
354
372
|
es: {
|
|
@@ -359,7 +377,8 @@ const MESSAGES = {
|
|
|
359
377
|
'scan.warning.unreadable-config': 'no se pudo leer {file}',
|
|
360
378
|
'scan.warning.invalid-json': 'serverless.json no es un JSON válido',
|
|
361
379
|
'config.parseFailed': '⚠️ No se pudo leer el archivo de configuración {path}',
|
|
362
|
-
'config.
|
|
380
|
+
'config.explicitNotFound': '❌ Archivo de configuración no encontrado: {path} (indicado por --config / LSS_CONFIG). Sin recurrir a la búsqueda de configuración por defecto — podría apuntar a otra instancia.',
|
|
381
|
+
'config.explicitParseFailed': '❌ No se pudo leer el archivo de configuración {path} (indicado por --config / LSS_CONFIG): {error}',
|
|
363
382
|
|
|
364
383
|
'start.already': '⚠️ El orquestador LSS ya está en marcha (PID: {pid})',
|
|
365
384
|
'start.starting': '🚀 Iniciando el orquestador LSS...',
|
|
@@ -450,6 +469,10 @@ const MESSAGES = {
|
|
|
450
469
|
'clear.skipPrompt': '↳ --yes indicado, saltando la confirmación interactiva.',
|
|
451
470
|
'clear.listFailed': '❌ No se pudieron listar las tablas antes de vaciar:',
|
|
452
471
|
'clear.failed': '❌ El vaciado falló:',
|
|
472
|
+
'reset.target': ' Objetivo: TODO el estado del engine — tablas, colas, buckets, tópicos, reglas, secrets, colecciones',
|
|
473
|
+
'reset.done': '✅ Engine reiniciado: todos los emuladores están vacíos. Ejecuta `lss register` para reaprovisionar los recursos de tus servicios.',
|
|
474
|
+
'reset.donePersistent': '✅ Engine reiniciado: todos los emuladores están vacíos y su directorio de datos se borró. Ejecuta `lss register` para reaprovisionar los recursos de tus servicios.',
|
|
475
|
+
'reset.failed': '❌ El reinicio falló:',
|
|
453
476
|
|
|
454
477
|
'mcp.missing': '❌ No se encontró el build del servidor MCP. Ejecuta `npm run build` primero.',
|
|
455
478
|
'mcp.startFailed': '❌ No se pudo iniciar el servidor MCP:',
|
|
@@ -469,15 +492,18 @@ const MESSAGES = {
|
|
|
469
492
|
'help.cmd.scan': 'Lista cada servicio Serverless/osls encontrado bajo la raíz del proyecto (banderas registrado/instalado/empaquetado, puertos y comando de package)',
|
|
470
493
|
'help.cmd.register': 'Registra servicios en el orquestador en marcha (usa el directorio actual por defecto; el empaquetado corre a demanda con autoPackage)',
|
|
471
494
|
'help.cmd.seedClear': 'Elimina todos los ítems de la tabla indicada (o de todas las tablas con archivo de seed). Pide confirmación interactiva (escribir "confirmar") antes de cualquier escritura.',
|
|
495
|
+
'help.cmd.reset': 'Borra TODO el estado del engine (todas las tablas, colas, buckets, tópicos, reglas, secrets y colecciones) sin reiniciar. Pide confirmación interactiva (escribir "confirmar").',
|
|
472
496
|
'help.cmd.mcp': 'Ejecuta el servidor Model Context Protocol en stdio, para que un cliente MCP maneje este stack con tools. Requiere el orquestador en marcha; mira docs/MCP.md.',
|
|
473
497
|
'help.cmd.help': 'Muestra esta ayuda',
|
|
474
498
|
'help.opt.config': 'Carga la configuración de este archivo (tiene precedencia sobre la búsqueda en cwd/home). Aplica a start/stop/status/logs, así una instancia aislada se puede direccionar sin entrar a su carpeta.',
|
|
475
499
|
'help.opt.dynamoProxy': 'Habilita el proxy de DynamoDB en el puerto 8000 (para el comando start)',
|
|
500
|
+
'help.opt.repackage': 'En register, ejecuta el comando de empaquetado del servicio antes de leer los artefactos, aunque ya existan. autoPackage sólo cubre el caso de plantilla ausente, así que esto es lo que carga el código que acabas de editar. Sin la bandera, register avisa cuando el paquete es anterior a las fuentes, pero registra lo que está en el disco.',
|
|
476
501
|
'help.opt.wait': 'En start, bloquea hasta que el orquestador responda GET /api/health (30s por defecto) y sale con código distinto de cero — mostrando el final del registro — si no responde. Es lo que necesita una cadena secuencial para no ejecutar el paso siguiente contra un stack que no arrancó.',
|
|
477
502
|
'help.opt.yes': 'Salta la confirmación interactiva de seed:clear (úsalo solo en CI)',
|
|
478
503
|
'help.env.dashboardPort': 'Puerto del orquestador (sobrescribe serverPort)',
|
|
479
504
|
'help.env.enginePort': 'Puerto del self engine (sobrescribe selfEngine.port)',
|
|
480
505
|
'help.env.engineDataDir': 'Directorio de estado del self engine (sobrescribe selfEngine.dataDir)',
|
|
506
|
+
'help.env.fallbackEndpoint': 'Redirige a este endpoint los servicios AWS que el engine no emula (sobrescribe selfEngine.fallbackEndpoint)',
|
|
481
507
|
'help.env.awsRegion': 'Región por defecto para el aprovisionamiento y los exploradores',
|
|
482
508
|
'help.env.lang': 'Idioma de la CLI: en, pt-BR o es (cae a LC_ALL/LC_MESSAGES/LANG)',
|
|
483
509
|
'help.config.intro': 'Crea un lss.config.json o .lssrc en la raíz del proyecto para personalizar:',
|
|
@@ -495,6 +521,7 @@ const MESSAGES = {
|
|
|
495
521
|
'help.ex.seedTable': 'Siembra solo la tabla "users"',
|
|
496
522
|
'help.ex.seedClear': 'Elimina todos los ítems de "users" (con confirmación)',
|
|
497
523
|
'help.ex.seedClearYes': 'Lo mismo, sin prompt (CI)',
|
|
524
|
+
'help.ex.reset': 'Vacía todos los emuladores, sin prompt (CI)',
|
|
498
525
|
},
|
|
499
526
|
};
|
|
500
527
|
|
package/dist/client/index.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ export type { ConfigApi } from './namespaces/config';
|
|
|
41
41
|
export type { HealthApi } from './namespaces/health';
|
|
42
42
|
export type { LambdasApi, LambdaSummary, LambdaDetail, InvokeLambdaInput, InvokeLambdaResult, LambdaInvocationRecord, } from './namespaces/lambdas';
|
|
43
43
|
export type { ApisApi, ServiceApiInfo, ApiRouteInfo, ApiAuthorizerInfo, GatewayListenerStatus, } from './namespaces/apis';
|
|
44
|
-
export type { ServiceRuntimeStatus } from './namespaces/services';
|
|
44
|
+
export type { ServiceRuntimeStatus, ServiceGraph, ServiceGraphNode, ServiceGraphEdge, ServiceGraphNodeKind, ServiceGraphEdgeKind, } from './namespaces/services';
|
|
45
45
|
export type { LifecycleApi, StartOptions, StartResult, StopResult, StatusResult, LogsResult, WaitUntilReadyOptions, } from './lifecycle';
|
|
46
46
|
export type * from './types';
|
|
47
47
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAa,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,qBAAa,SAAS;IACpB,iDAAiD;IACjD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAO;gBAEhB,OAAO,GAAE,gBAAqB;IAkB1C,kFAAkF;IAClF,OAAO,CAAC,CAAC,GAAG,OAAO,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,EACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GACjC,OAAO,CAAC,CAAC,CAAC;CAGd;AAED,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EACV,UAAU,EACV,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,OAAO,EACP,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,6 +55,46 @@ export interface PrepareServiceResult {
|
|
|
55
55
|
durationMs: number;
|
|
56
56
|
output: string;
|
|
57
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* What a node stands for. `route` and `iam-role` have no counterpart among the
|
|
60
|
+
* provisioned resource types: a route is declared in `serverless-state.json`,
|
|
61
|
+
* and a role is never provisioned. `external` is anything the service
|
|
62
|
+
* references but does not declare — the cross-service links.
|
|
63
|
+
*/
|
|
64
|
+
export type ServiceGraphNodeKind = 'lambda' | 'dynamodb' | 'sqs' | 'sns' | 's3' | 'eventbus' | 'event-rule' | 'opensearch' | 'secret' | 'route' | 'iam-role' | 'external';
|
|
65
|
+
/**
|
|
66
|
+
* How an edge was established. The distinction is the point of the payload:
|
|
67
|
+
* `iam` and `env` are far weaker evidence than the rest.
|
|
68
|
+
*/
|
|
69
|
+
export type ServiceGraphEdgeKind = 'http-route' | 'authorizer' | 'event-source' | 's3-notification' | 'event-rule-target' | 'event-bus-rule' | 'sns-subscription' | 'redrive' | 'iam' | 'env';
|
|
70
|
+
export interface ServiceGraphNode {
|
|
71
|
+
id: string;
|
|
72
|
+
kind: ServiceGraphNodeKind;
|
|
73
|
+
label: string;
|
|
74
|
+
logicalId?: string;
|
|
75
|
+
method?: string;
|
|
76
|
+
path?: string;
|
|
77
|
+
fullName?: string;
|
|
78
|
+
handler?: string;
|
|
79
|
+
arn?: string;
|
|
80
|
+
service?: string;
|
|
81
|
+
}
|
|
82
|
+
export interface ServiceGraphEdge {
|
|
83
|
+
id: string;
|
|
84
|
+
from: string;
|
|
85
|
+
to: string;
|
|
86
|
+
kind: ServiceGraphEdgeKind;
|
|
87
|
+
detail?: string;
|
|
88
|
+
confidence: 'declared' | 'inferred';
|
|
89
|
+
serviceWide?: boolean;
|
|
90
|
+
}
|
|
91
|
+
export interface ServiceGraph {
|
|
92
|
+
service: string;
|
|
93
|
+
nodes: ServiceGraphNode[];
|
|
94
|
+
edges: ServiceGraphEdge[];
|
|
95
|
+
edgeKinds: ServiceGraphEdgeKind[];
|
|
96
|
+
warnings: string[];
|
|
97
|
+
}
|
|
58
98
|
export interface ServicesApi {
|
|
59
99
|
register(input: RegisterServiceInput): Promise<unknown>;
|
|
60
100
|
/** GET /api/services/scan — discover Serverless/osls services under the project root. */
|
|
@@ -68,6 +108,12 @@ export interface ServicesApi {
|
|
|
68
108
|
package(servicePath: string): Promise<PrepareServiceResult>;
|
|
69
109
|
list(): Promise<unknown[]>;
|
|
70
110
|
get(name: string): Promise<unknown>;
|
|
111
|
+
/**
|
|
112
|
+
* GET /api/services/:name/graph — the service's DECLARED wiring (nodes,
|
|
113
|
+
* edges and the evidence for each), derived from the packaged template. It
|
|
114
|
+
* answers for a stopped service too: nothing here is read from the engine.
|
|
115
|
+
*/
|
|
116
|
+
graph(name: string): Promise<ServiceGraph>;
|
|
71
117
|
remove(name: string): Promise<{
|
|
72
118
|
success: true;
|
|
73
119
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/client/namespaces/services.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/client/namespaces/services.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ function createServicesApi(http) {
|
|
|
10
10
|
package: (servicePath) => http.json('POST', '/api/services/package', { body: { servicePath } }),
|
|
11
11
|
list: () => http.json('GET', '/api/services'),
|
|
12
12
|
get: (name) => http.json('GET', base(name)),
|
|
13
|
+
graph: (name) => http.json('GET', `${base(name)}/graph`),
|
|
13
14
|
remove: (name) => http.json('DELETE', base(name)),
|
|
14
15
|
setStatus: (name, body) => http.json('PATCH', `${base(name)}/status`, { body }),
|
|
15
16
|
start: (name, input) => http.json('POST', `${base(name)}/start`, { body: input ?? {} }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/client/namespaces/services.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/client/namespaces/services.ts"],"names":[],"mappings":";;AAyLA,8CAmBC;AAnBD,SAAgB,iBAAiB,CAAC,IAAU;IAC1C,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,iBAAiB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC3E,OAAO;QACL,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,wBAAwB,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACjF,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,oBAAoB,CAAC;QAClD,OAAO,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,uBAAuB,EAAE,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;QACjH,OAAO,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,uBAAuB,EAAE,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC;QAC/F,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC;QAC7C,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACxD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC;QAC/E,KAAK,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC;QACvF,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACvD,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACtD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;QAC5D,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC;QACxE,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;KACvE,CAAC;AACJ,CAAC"}
|
package/dist/mcp/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,QAAQ;IACvB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IAEF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1E;AAoBD,eAAO,MAAM,KAAK,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,QAAQ;IACvB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IAEF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1E;AAoBD,eAAO,MAAM,KAAK,EAAE,cAAc,EAuTjC,CAAC;AAEF,eAAO,MAAM,aAAa,6BAAgD,CAAC;AAG3E,wBAAgB,eAAe,IAAI,OAAO,EAAE,CAM3C"}
|
package/dist/mcp/tools.js
CHANGED
|
@@ -55,6 +55,23 @@ export const TOOLS = [
|
|
|
55
55
|
inputSchema: { type: 'object', properties: {} },
|
|
56
56
|
run: (_a, http) => http('GET', '/api/services'),
|
|
57
57
|
},
|
|
58
|
+
{
|
|
59
|
+
name: 'lss_service_graph',
|
|
60
|
+
description: 'How ONE service is wired, derived from its packaged CloudFormation template: nodes (its functions, '
|
|
61
|
+
+ 'tables, queues, topics, buckets, buses, rules, collections, secrets, HTTP routes and shared IAM roles, '
|
|
62
|
+
+ 'plus the resources of OTHER services it references) and the edges between them — each carrying the '
|
|
63
|
+
+ 'evidence it came from (http-route, authorizer, event-source, s3-notification, event-rule-target, '
|
|
64
|
+
+ 'sns-subscription, redrive, iam grant, env var) and whether that evidence is `declared` or merely '
|
|
65
|
+
+ '`inferred` from a name match. Use it to answer "what triggers this function" or "who writes that table" '
|
|
66
|
+
+ 'without reading the template. It reports what the service DECLARED, not live traffic, so it answers '
|
|
67
|
+
+ 'for a stopped service too.',
|
|
68
|
+
inputSchema: {
|
|
69
|
+
type: 'object',
|
|
70
|
+
properties: { name: str('Service name, as listed by lss_services.') },
|
|
71
|
+
required: ['name'],
|
|
72
|
+
},
|
|
73
|
+
run: (a, http) => http('GET', `/api/services/${name(a)}/graph`),
|
|
74
|
+
},
|
|
58
75
|
{
|
|
59
76
|
name: 'lss_scan_services',
|
|
60
77
|
description: 'Discover Serverless Framework / osls services under the project root that could be registered: '
|
package/dist/mcp/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,15 @@ export declare class SelfEngineBackend {
|
|
|
8
8
|
private config;
|
|
9
9
|
private store;
|
|
10
10
|
private sqs;
|
|
11
|
+
private dynamo;
|
|
11
12
|
private dispatcher;
|
|
12
13
|
private scheduler;
|
|
13
14
|
private server;
|
|
14
15
|
private readonly sockets;
|
|
15
16
|
private boundPort;
|
|
16
17
|
private running;
|
|
18
|
+
private resetting;
|
|
19
|
+
private readonly frontHandler;
|
|
17
20
|
constructor(overrides?: Partial<ResolvedSelfEngineConfig>);
|
|
18
21
|
/**
|
|
19
22
|
* Build the engine without binding a port. The returned handler answers the
|
|
@@ -22,9 +25,30 @@ export declare class SelfEngineBackend {
|
|
|
22
25
|
startEmbedded(): Promise<(req: http.IncomingMessage, res: http.ServerResponse) => void>;
|
|
23
26
|
start(): Promise<void>;
|
|
24
27
|
stop(): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Wipe every emulator's state — tables, queues and their messages, buckets
|
|
30
|
+
* and objects, topics, buses and rules, secrets, parameters, collections,
|
|
31
|
+
* Lambda metadata and event source mappings — without restarting the process
|
|
32
|
+
* or rebinding a port. Served as `POST /_lss/reset`.
|
|
33
|
+
*
|
|
34
|
+
* Implemented as teardown + rebuild rather than a per-emulator `clear()`:
|
|
35
|
+
* every emulator, the dispatcher's delivery loops and the scheduler come back
|
|
36
|
+
* exactly as a cold boot over an empty data dir builds them, so a new
|
|
37
|
+
* emulator is covered with no reset code of its own. In persistent mode the
|
|
38
|
+
* data dir's contents are deleted (after a final flush, so no debounced
|
|
39
|
+
* write lands in the fresh tree); in memory mode the old store is simply
|
|
40
|
+
* dropped. Concurrent calls share one reset.
|
|
41
|
+
*/
|
|
42
|
+
reset(): Promise<void>;
|
|
43
|
+
private doReset;
|
|
44
|
+
private haltBackgroundWork;
|
|
25
45
|
isRunning(): boolean;
|
|
26
46
|
getEndpoint(): string;
|
|
27
|
-
/**
|
|
47
|
+
/**
|
|
48
|
+
* The AWS wire handler — non-null once start()/startEmbedded() resolved.
|
|
49
|
+
* Always the stable front handler, so a caller that keeps it keeps working
|
|
50
|
+
* across reset().
|
|
51
|
+
*/
|
|
28
52
|
getRequestHandler(): ((req: http.IncomingMessage, res: http.ServerResponse) => void) | null;
|
|
29
53
|
getConfig(): {
|
|
30
54
|
endpoint: string;
|
|
@@ -38,4 +62,5 @@ export declare class SelfEngineBackend {
|
|
|
38
62
|
private resolveConfig;
|
|
39
63
|
private restoreSqsSnapshot;
|
|
40
64
|
}
|
|
65
|
+
export declare function wipeDataDir(dataDir: string): Promise<void>;
|
|
41
66
|
//# sourceMappingURL=self-backend.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"self-backend.d.ts","sourceRoot":"","sources":["../../../../src/server/engine/backends/self-backend.ts"],"names":[],"mappings":"AAMA,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"self-backend.d.ts","sourceRoot":"","sources":["../../../../src/server/engine/backends/self-backend.ts"],"names":[],"mappings":"AAMA,OAAO,IAAI,MAAM,MAAM,CAAC;AAMxB,OAAO,EAAiB,KAAK,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAuBhG,qBAAa,iBAAiB;IAC5B,QAAQ,CAAC,IAAI,EAAG,MAAM,CAAU;IAEhC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoC;IAI9D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAgF;IAC/F,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,GAAG,CAA4B;IACvC,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,MAAM,CAA4B;IAE1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,OAAO,CAAS;IAGxB,OAAO,CAAC,SAAS,CAA8B;IAI/C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAI3B;gBAIU,SAAS,GAAE,OAAO,CAAC,wBAAwB,CAAM;IAI7D;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC;IAMvF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAuHtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC3B;;;;;;;;;;;;;OAaG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAQd,OAAO;IAiBrB,OAAO,CAAC,kBAAkB;IAM1B,SAAS,IAAI,OAAO;IAIpB,WAAW,IAAI,MAAM;IAIrB;;;;OAIG;IACH,iBAAiB,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,GAAG,IAAI;IAI3F,SAAS,IAAI;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE;YAAE,WAAW,EAAE,MAAM,CAAC;YAAC,eAAe,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE;IAQhH,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAYvC,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,kBAAkB;CAU3B;AAUD,wBAAsB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBhE"}
|