local-serverless-stack 0.17.1 → 0.17.2
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/README.md +12 -8
- package/dist/server/routes/config.d.ts.map +1 -1
- package/dist/server/routes/config.js +182 -6
- package/dist/server/routes/config.js.map +1 -1
- package/dist/server/services/config-manager.d.ts +31 -0
- package/dist/server/services/config-manager.d.ts.map +1 -1
- package/dist/server/services/config-manager.js +370 -0
- package/dist/server/services/config-manager.js.map +1 -1
- package/dist/ui/assets/ApisPage-CXYcWDhm.js +1 -0
- package/dist/ui/assets/BucketDetailPage-BwS2--Pe.js +1 -0
- package/dist/ui/assets/BucketsPage-khuiYc9C.js +1 -0
- package/dist/ui/assets/DynamoPage-aYo0QC0N.js +1 -0
- package/dist/ui/assets/DynamoTablePage-rFuV2pgd.js +3 -0
- package/dist/ui/assets/LambdaDetailPage-CJmu8M_N.js +4 -0
- package/dist/ui/assets/LambdasPage-DniNyKMe.js +1 -0
- package/dist/ui/assets/OpenSearchCollectionPage-BBwjgbB9.js +1 -0
- package/dist/ui/assets/OpenSearchPage-D5RxJGRo.js +1 -0
- package/dist/ui/assets/OverviewPage-Cyt1Xdp8.js +1 -0
- package/dist/ui/assets/{OverviewPage-C7JlCyW1.css → OverviewPage-DS6XJ7kG.css} +1 -1
- package/dist/ui/assets/QueueDetailPage-3FPsowIp.js +1 -0
- package/dist/ui/assets/QueuesPage-CUoDDgHr.js +1 -0
- package/dist/ui/assets/SecretsPage-B_mTnUf3.js +1 -0
- package/dist/ui/assets/ServiceDetailPage-BcdSjA6e.js +2 -0
- package/dist/ui/assets/ServicesPage-CU6fb3f8.js +2 -0
- package/dist/ui/assets/SettingsPage-BG8cYxgC.js +1 -0
- package/dist/ui/assets/index-BxwA-UT0.css +1 -0
- package/dist/ui/assets/index-DGsXIPJ-.js +37 -0
- package/dist/ui/index.html +2 -2
- package/package.json +2 -2
- package/dist/ui/assets/ApisPage-9Lk0_ZLj.js +0 -1
- package/dist/ui/assets/BucketDetailPage-CdLGW5em.js +0 -1
- package/dist/ui/assets/BucketsPage-CDP95vp8.js +0 -1
- package/dist/ui/assets/DynamoPage-CV7omZpi.js +0 -1
- package/dist/ui/assets/DynamoTablePage-C8v42fy7.js +0 -3
- package/dist/ui/assets/LambdaDetailPage-DkGxePSD.js +0 -4
- package/dist/ui/assets/LambdasPage-Bg7_taxW.js +0 -1
- package/dist/ui/assets/OpenSearchCollectionPage-Ci1hHyy2.js +0 -1
- package/dist/ui/assets/OpenSearchPage-CBKqZeim.js +0 -1
- package/dist/ui/assets/OverviewPage-D8lrE9rQ.js +0 -1
- package/dist/ui/assets/QueueDetailPage-D0DSIGZ2.js +0 -1
- package/dist/ui/assets/QueuesPage-BXebf6st.js +0 -1
- package/dist/ui/assets/SecretsPage-Be2Nw9BM.js +0 -1
- package/dist/ui/assets/SecretsPage-D3XYogv-.css +0 -1
- package/dist/ui/assets/ServiceDetailPage-DZpczZ-G.js +0 -2
- package/dist/ui/assets/ServicesPage-CdzxEqs3.js +0 -2
- package/dist/ui/assets/_plugin-vue_export-helper-DlAUqK2U.js +0 -1
- package/dist/ui/assets/index-C1Wb35Y8.css +0 -1
- package/dist/ui/assets/index-CGpxa55R.js +0 -37
package/README.md
CHANGED
|
@@ -45,7 +45,7 @@ LSS features come in two layers:
|
|
|
45
45
|
- `autoPackage` — runs `sls package` on demand when the template is missing
|
|
46
46
|
- Automatic event source mappings: SQS / DynamoDB streams / S3 notifications / EventBridge rules → Lambda — with AWS-faithful failure semantics (`FilterCriteria` enforced, `ReportBatchItemFailures` partial batches, `maximumRetryAttempts` incl. the `-1` "until the record ages out" default)
|
|
47
47
|
- Per-instance isolation — `stateDir` + port-scoped PID/log paths let many LSS instances coexist (one per project)
|
|
48
|
-
- Config: `lss.config.json` / `.lssrc` + env overrides (`LSS_*`); public-safe `GET /api/config` snapshot (never leaks the auth token)
|
|
48
|
+
- Config: `lss.config.json` / `.lssrc` + env overrides (`LSS_*`); public-safe `GET /api/config` snapshot (never leaks the auth token); editable from the dashboard via `PUT /api/config` (writes the file for you to commit) + `POST /api/config/reload`; `GET /api/config/ports` lists every exposed port
|
|
49
49
|
- **Lambda runtime & API Gateway emulation** (serverless-offline replacement — same `30xx`/`130xx` ports)
|
|
50
50
|
- Function + route registry: REST (`http`, payload v1), HTTP API (`httpApi`, payload v2) and authorizers — persisted and rehydrated on restart
|
|
51
51
|
- Per-service worker processes: lazy/warm handler loading, function env/timeout/context, per-invocation log capture, crash restart
|
|
@@ -64,7 +64,8 @@ LSS features come in two layers:
|
|
|
64
64
|
- **Seeds** (`/api/seeds`): auto-seed on table creation + on-demand run/clear, seed-file ↔ live-table mismatch diagnostic
|
|
65
65
|
- **Resources** (`/api/resources`, `…/owners`): provisioned resources mapped to owning services
|
|
66
66
|
- **Health** (`/api/health`): orchestrator + active engine + dynamo-proxy status
|
|
67
|
-
- **Dashboard (Vue 3 SPA)** —
|
|
67
|
+
- **Dashboard (Vue 3 SPA)** — ten tabs: **Overview** (health, config, exposed-ports map), **Services** (status/start/stop/logs + per-service resource breakdown incl. EventBridge buses & rules and OpenSearch collections), **Lambdas** (registry + invoke + logs), **APIs**, **Queues**, **S3**, **DynamoDB**, **OpenSearch**, **Secrets**, **Settings** — plus a region selector and theme toggle
|
|
68
|
+
- **Settings**: edit `lss.config.json` from the dashboard — only changed fields are written (you review and commit the diff), hot-reload for lazy keys, explicit restart-required and env-var-masked flags, plus a reload-from-disk button
|
|
68
69
|
- **Branding**: navbar title/subtitle, logo, favicon, default theme and any TreeUI color token per theme, via the `branding` config key
|
|
69
70
|
- **serverless-lss plugin** — auto-registers each service on `sls package`/`offline`; orchestrator URL precedence (`ORCHESTRATOR_URL` > `LSS_DASHBOARD_PORT` > `custom.orchestrator` > 3100)
|
|
70
71
|
- **Programmatic client (`LssClient`)** — the CLI/dashboard surface from code: HTTP namespaces `seeds`, `queues`, `dynamo`, `buckets`, `resources`, `services`, `lambdas`, `apis`, `config`, `health` + `lifecycle` (`start`/`stop`/`status`/`logs`/`waitUntilReady`, shells out to the CLI)
|
|
@@ -319,12 +320,15 @@ Details (`mode`, `localstackEdition`, `localstackVersion`, `localstackImage`):
|
|
|
319
320
|
|
|
320
321
|
## Dashboard
|
|
321
322
|
|
|
322
|
-
The Vue 3 dashboard at `http://localhost:3100` has
|
|
323
|
-
config snapshot), **Services** (status, start/stop, live logs,
|
|
324
|
-
breakdown incl. EventBridge buses & rules), **Lambdas** (registry +
|
|
325
|
-
(emulated HTTP routes), **Queues** (send/receive/purge, consumers),
|
|
326
|
-
upload/download), **DynamoDB** (items explorer, editor, TTL, seeds)
|
|
327
|
-
|
|
323
|
+
The Vue 3 dashboard at `http://localhost:3100` has ten tabs — **Overview** (health,
|
|
324
|
+
config snapshot, exposed-ports map), **Services** (status, start/stop, live logs,
|
|
325
|
+
per-service resource breakdown incl. EventBridge buses & rules), **Lambdas** (registry +
|
|
326
|
+
invoke), **APIs** (emulated HTTP routes), **Queues** (send/receive/purge, consumers),
|
|
327
|
+
**S3** (objects, upload/download), **DynamoDB** (items explorer, editor, TTL, seeds),
|
|
328
|
+
**OpenSearch**, **Secrets**, and **Settings** — which edits `lss.config.json` in place
|
|
329
|
+
(only changed fields are written, so you review and commit the diff), hot-reloads what it
|
|
330
|
+
can, and flags the keys that need `lss stop && lss start` or are masked by env vars.
|
|
331
|
+
A region selector lets you inspect resources in any region.
|
|
328
332
|
|
|
329
333
|
It can carry your team's identity via the `branding` config key: navbar title/subtitle,
|
|
330
334
|
logo and favicon (URL or a file next to `lss.config.json`), default theme, and any
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/server/routes/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/server/routes/config.ts"],"names":[],"mappings":"AASA,QAAA,MAAM,MAAM,4CAAW,CAAC;AAiPxB,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,CAAC"}
|
|
@@ -1,12 +1,34 @@
|
|
|
1
1
|
import { Router } from 'express';
|
|
2
|
-
import { ConfigManager } from '../services/config-manager.js';
|
|
2
|
+
import { ConfigManager, ConfigValidationError, } from '../services/config-manager.js';
|
|
3
|
+
import { FunctionRegistry } from '../services/function-registry.js';
|
|
3
4
|
const router = Router();
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
// Per-service packaging blocks may carry secret env VALUES (deploy keys,
|
|
6
|
+
// registry tokens) — expose key names only, mirroring printSummary().
|
|
7
|
+
function redactPackaging(map) {
|
|
8
|
+
return Object.fromEntries(Object.entries(map).map(([service, cfg]) => [
|
|
9
|
+
service,
|
|
10
|
+
{
|
|
11
|
+
packageCommand: cfg.packageCommand,
|
|
12
|
+
packageArgs: cfg.packageArgs,
|
|
13
|
+
packageTimeoutMs: cfg.packageTimeoutMs,
|
|
14
|
+
packageEnvKeys: Object.keys(cfg.packageEnv ?? {}),
|
|
15
|
+
},
|
|
16
|
+
]));
|
|
17
|
+
}
|
|
18
|
+
// Public-safe LSS configuration snapshot — everything the dashboard shows and
|
|
19
|
+
// edits. Never expose secret VALUES: the LocalStack auth token collapses to
|
|
20
|
+
// hasAuthToken, packageEnv maps collapse to their key names, and the secrets
|
|
21
|
+
// seed map collapses to a count.
|
|
22
|
+
function buildConfigSnapshot(cm) {
|
|
23
|
+
const raw = cm.getConfig();
|
|
24
|
+
const selfEngine = cm.getSelfEngineConfig();
|
|
25
|
+
const aossSidecar = cm.getAossSidecarConfig();
|
|
26
|
+
return {
|
|
9
27
|
serverPort: cm.getServerPort(),
|
|
28
|
+
engine: {
|
|
29
|
+
kind: cm.getEngineKind(),
|
|
30
|
+
endpoint: cm.getEngineEndpoint(),
|
|
31
|
+
},
|
|
10
32
|
localstack: {
|
|
11
33
|
mode: cm.getMode(),
|
|
12
34
|
endpoint: cm.getLocalStackEndpoint(),
|
|
@@ -16,6 +38,20 @@ router.get('/', (_req, res) => {
|
|
|
16
38
|
image: cm.getLocalStackImage(),
|
|
17
39
|
hasAuthToken: Boolean(cm.getLocalStackAuthToken()),
|
|
18
40
|
},
|
|
41
|
+
selfEngine: {
|
|
42
|
+
port: selfEngine.port,
|
|
43
|
+
dataDir: selfEngine.dataDir,
|
|
44
|
+
account: selfEngine.account,
|
|
45
|
+
idleUnloadMs: selfEngine.idleUnloadMs,
|
|
46
|
+
memoryBudgetMb: selfEngine.memoryBudgetMb,
|
|
47
|
+
fsync: selfEngine.fsync,
|
|
48
|
+
fallbackEndpoint: selfEngine.fallbackEndpoint,
|
|
49
|
+
},
|
|
50
|
+
aossSidecar: {
|
|
51
|
+
enabled: aossSidecar.enabled,
|
|
52
|
+
port: aossSidecar.port,
|
|
53
|
+
endpoint: aossSidecar.endpoint,
|
|
54
|
+
},
|
|
19
55
|
dynamoProxy: {
|
|
20
56
|
enabled: cm.isEnableDynamoProxy(),
|
|
21
57
|
port: cm.getDynamoProxyPort(),
|
|
@@ -25,12 +61,152 @@ router.get('/', (_req, res) => {
|
|
|
25
61
|
persistence: cm.isPersistence(),
|
|
26
62
|
debug: cm.isDebug(),
|
|
27
63
|
seedsDir: cm.getSeedsDir(),
|
|
64
|
+
stateDir: cm.getStateDir() ?? null,
|
|
28
65
|
autoPackage: cm.isAutoPackage(),
|
|
29
66
|
packageCommand: cm.getPackageCommand(),
|
|
30
67
|
packageTimeoutMs: cm.getPackageTimeoutMs(),
|
|
68
|
+
packageArgs: raw.packageArgs ?? [],
|
|
69
|
+
packageEnvKeys: Object.keys(raw.packageEnv ?? {}),
|
|
70
|
+
servicePackaging: redactPackaging(raw.servicePackaging ?? {}),
|
|
71
|
+
lambdaRuntime: {
|
|
72
|
+
enabled: cm.isLambdaRuntimeEnabled(),
|
|
73
|
+
execution: cm.getLambdaExecutionMode(),
|
|
74
|
+
// Raw tri-state: null = mode-dependent default (source→on, artifact→off).
|
|
75
|
+
watch: raw.lambdaRuntime?.watch ?? null,
|
|
76
|
+
invokePortOffset: cm.getInvokePortOffset(),
|
|
77
|
+
invokeHost: cm.getInvokeHost(),
|
|
78
|
+
},
|
|
79
|
+
serviceRuntime: raw.serviceRuntime ?? {},
|
|
80
|
+
secretSeedCount: Object.keys(cm.getSecretSeeds()).length,
|
|
81
|
+
// Keys whose file value is masked by an env var right now — the UI flags
|
|
82
|
+
// these fields so an edit that "doesn't stick" is explained.
|
|
83
|
+
envOverrides: cm.getEnvOverriddenKeys(),
|
|
31
84
|
configPath: cm.getConfigPath(),
|
|
85
|
+
projectRoot: cm.getProjectRoot(),
|
|
32
86
|
branding: cm.getBranding(),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
router.get('/', (_req, res) => {
|
|
90
|
+
res.json(buildConfigSnapshot(ConfigManager.getInstance()));
|
|
91
|
+
});
|
|
92
|
+
// Persist a partial config patch into the loaded config file (creating
|
|
93
|
+
// lss.config.json in the project root when none is loaded) and hot-reload the
|
|
94
|
+
// in-memory config. The human reviews and commits the file — LSS never
|
|
95
|
+
// touches git. Boot-materialized keys come back in restartRequired.
|
|
96
|
+
router.put('/', (req, res) => {
|
|
97
|
+
const cm = ConfigManager.getInstance();
|
|
98
|
+
try {
|
|
99
|
+
const result = cm.updateConfig(req.body);
|
|
100
|
+
res.json({
|
|
101
|
+
config: buildConfigSnapshot(cm),
|
|
102
|
+
configPath: result.path,
|
|
103
|
+
restartRequired: result.restartRequired,
|
|
104
|
+
envOverridden: result.envOverridden,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
if (error instanceof ConfigValidationError) {
|
|
109
|
+
res.status(400).json({ error: error.message, details: error.details });
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
res.status(500).json({ error: error instanceof Error ? error.message : 'Failed to update config' });
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
// Re-read the config file from disk after a hand edit, without restarting the
|
|
116
|
+
// orchestrator. Lazily-consumed keys take effect immediately; the rest come
|
|
117
|
+
// back in restartRequired. A file that no longer parses answers 400 and keeps
|
|
118
|
+
// the working in-memory config untouched.
|
|
119
|
+
router.post('/reload', (_req, res) => {
|
|
120
|
+
const cm = ConfigManager.getInstance();
|
|
121
|
+
try {
|
|
122
|
+
const result = cm.reloadFromDisk();
|
|
123
|
+
res.json({
|
|
124
|
+
config: buildConfigSnapshot(cm),
|
|
125
|
+
configPath: result.path,
|
|
126
|
+
restartRequired: result.restartRequired,
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
catch (error) {
|
|
130
|
+
if (error instanceof ConfigValidationError) {
|
|
131
|
+
res.status(400).json({ error: error.message, details: error.details });
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
res.status(500).json({ error: error instanceof Error ? error.message : 'Failed to reload config' });
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
// Every local port the stack exposes, so "what do I point my SDK/browser at?"
|
|
138
|
+
// has one answer: orchestrator, active engine (LocalStack edge or self engine),
|
|
139
|
+
// aoss sidecar, DynamoDB proxy, plus each registered service's HTTP API and
|
|
140
|
+
// Lambda invoke listeners.
|
|
141
|
+
router.get('/ports', (_req, res) => {
|
|
142
|
+
const cm = ConfigManager.getInstance();
|
|
143
|
+
const ports = [];
|
|
144
|
+
ports.push({
|
|
145
|
+
name: 'Orchestrator',
|
|
146
|
+
kind: 'orchestrator',
|
|
147
|
+
port: cm.getServerPort(),
|
|
148
|
+
url: cm.getOrchestratorUrl(),
|
|
149
|
+
description: 'Dashboard UI + REST API (register, explorers, seeds)',
|
|
33
150
|
});
|
|
151
|
+
if (cm.isSelfEngine()) {
|
|
152
|
+
const selfEngine = cm.getSelfEngineConfig();
|
|
153
|
+
ports.push({
|
|
154
|
+
name: 'Self engine',
|
|
155
|
+
kind: 'engine',
|
|
156
|
+
port: selfEngine.port,
|
|
157
|
+
url: `http://localhost:${selfEngine.port}`,
|
|
158
|
+
description: 'In-process AWS emulator — point SDK endpoints here',
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
ports.push({
|
|
163
|
+
name: `LocalStack (${cm.getMode()})`,
|
|
164
|
+
kind: 'engine',
|
|
165
|
+
port: cm.getLocalStackPort(),
|
|
166
|
+
url: cm.getLocalStackEndpoint(),
|
|
167
|
+
description: 'LocalStack edge — every AWS service on one port',
|
|
168
|
+
});
|
|
169
|
+
const aossSidecar = cm.getAossSidecarConfig();
|
|
170
|
+
if (aossSidecar.enabled) {
|
|
171
|
+
ports.push({
|
|
172
|
+
name: 'OpenSearch Serverless sidecar',
|
|
173
|
+
kind: 'sidecar',
|
|
174
|
+
port: aossSidecar.port,
|
|
175
|
+
url: aossSidecar.endpoint,
|
|
176
|
+
description: 'aoss served in-process — no LocalStack edition provides it',
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
if (cm.isEnableDynamoProxy()) {
|
|
181
|
+
ports.push({
|
|
182
|
+
name: 'DynamoDB proxy',
|
|
183
|
+
kind: 'proxy',
|
|
184
|
+
port: cm.getDynamoProxyPort(),
|
|
185
|
+
url: `http://localhost:${cm.getDynamoProxyPort()}`,
|
|
186
|
+
description: 'Reverse proxy for tools that expect DynamoDB on a fixed port',
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
for (const service of FunctionRegistry.getInstance().listServices()) {
|
|
190
|
+
if (service.apiPort) {
|
|
191
|
+
ports.push({
|
|
192
|
+
name: service.name,
|
|
193
|
+
kind: 'service-api',
|
|
194
|
+
port: service.apiPort,
|
|
195
|
+
url: `http://localhost:${service.apiPort}`,
|
|
196
|
+
description: 'HTTP API (API Gateway emulation)',
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
if (service.invokePort) {
|
|
200
|
+
ports.push({
|
|
201
|
+
name: service.name,
|
|
202
|
+
kind: 'service-invoke',
|
|
203
|
+
port: service.invokePort,
|
|
204
|
+
url: `http://localhost:${service.invokePort}`,
|
|
205
|
+
description: 'Lambda invoke listener (AWS SDK Invoke)',
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
res.json({ ports });
|
|
34
210
|
});
|
|
35
211
|
// Branding only — what the UI needs on boot (title, logo, theme colors).
|
|
36
212
|
router.get('/branding', (_req, res) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/server/routes/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,SAAS,CAAC;AACpD,OAAO,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/server/routes/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -122,6 +122,17 @@ export interface LSSConfig {
|
|
|
122
122
|
aossSidecar?: AossSidecarConfig;
|
|
123
123
|
branding?: BrandingConfig;
|
|
124
124
|
}
|
|
125
|
+
export declare class ConfigValidationError extends Error {
|
|
126
|
+
readonly details: string[];
|
|
127
|
+
constructor(details: string[]);
|
|
128
|
+
}
|
|
129
|
+
export interface ConfigReloadResult {
|
|
130
|
+
path: string;
|
|
131
|
+
restartRequired: string[];
|
|
132
|
+
}
|
|
133
|
+
export interface ConfigUpdateResult extends ConfigReloadResult {
|
|
134
|
+
envOverridden: string[];
|
|
135
|
+
}
|
|
125
136
|
export declare class ConfigManager {
|
|
126
137
|
private static instance;
|
|
127
138
|
private config;
|
|
@@ -197,6 +208,26 @@ export declare class ConfigManager {
|
|
|
197
208
|
getBrandingAssetFile(kind: BrandingAssetKind): string | null;
|
|
198
209
|
private getBrandingAssetUrl;
|
|
199
210
|
getBranding(): ResolvedBranding;
|
|
211
|
+
getEnvOverriddenKeys(): string[];
|
|
212
|
+
private resolvedBootValues;
|
|
213
|
+
private static diffKeys;
|
|
214
|
+
private resetAndReload;
|
|
215
|
+
/**
|
|
216
|
+
* Re-read the config file from disk — after a hand edit, or after
|
|
217
|
+
* updateConfig() wrote it. Runs the exact boot sequence (file search + env
|
|
218
|
+
* override pass), so the result matches what a fresh process would resolve.
|
|
219
|
+
* Boot-materialized keys that changed are reported as restartRequired: the
|
|
220
|
+
* running listeners/engine keep the old value until `lss stop && lss start`.
|
|
221
|
+
*/
|
|
222
|
+
reloadFromDisk(): ConfigReloadResult;
|
|
223
|
+
/**
|
|
224
|
+
* Validate a partial config patch, write it into the loaded config file (or
|
|
225
|
+
* create lss.config.json in the project root when none is loaded) and reload
|
|
226
|
+
* in-memory. The raw file is re-read and patched key-by-key — never the
|
|
227
|
+
* env-resolved in-memory config — so env-var overrides are not baked into
|
|
228
|
+
* the file on save. The human commits the file; LSS never touches git.
|
|
229
|
+
*/
|
|
230
|
+
updateConfig(patch: Record<string, unknown>): ConfigUpdateResult;
|
|
200
231
|
/**
|
|
201
232
|
* Print configuration summary
|
|
202
233
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-manager.d.ts","sourceRoot":"","sources":["../../../src/server/services/config-manager.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config-manager.d.ts","sourceRoot":"","sources":["../../../src/server/services/config-manager.ts"],"names":[],"mappings":"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"}
|