mstro-app 0.4.39 → 0.4.44
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/PRIVACY.md +1 -3
- package/bin/commands/login.js +17 -7
- package/bin/commands/logout.js +14 -6
- package/bin/commands/status.js +9 -3
- package/bin/commands/whoami.js +10 -4
- package/bin/mstro.js +11 -1
- package/dist/server/cli/headless/claude-invoker-stream.d.ts.map +1 -1
- package/dist/server/cli/headless/claude-invoker-stream.js +1 -0
- package/dist/server/cli/headless/claude-invoker-stream.js.map +1 -1
- package/dist/server/cli/headless/index.d.ts +1 -0
- package/dist/server/cli/headless/index.d.ts.map +1 -1
- package/dist/server/cli/headless/index.js +2 -0
- package/dist/server/cli/headless/index.js.map +1 -1
- package/dist/server/cli/headless/resilient-runner.d.ts +47 -0
- package/dist/server/cli/headless/resilient-runner.d.ts.map +1 -0
- package/dist/server/cli/headless/resilient-runner.js +234 -0
- package/dist/server/cli/headless/resilient-runner.js.map +1 -0
- package/dist/server/cli/headless/retry-strategies.d.ts +44 -0
- package/dist/server/cli/headless/retry-strategies.d.ts.map +1 -0
- package/dist/server/cli/headless/retry-strategies.js +262 -0
- package/dist/server/cli/headless/retry-strategies.js.map +1 -0
- package/dist/server/cli/headless/stall-assessor.d.ts.map +1 -1
- package/dist/server/cli/headless/stall-assessor.js +5 -0
- package/dist/server/cli/headless/stall-assessor.js.map +1 -1
- package/dist/server/cli/headless/tool-watchdog.d.ts +2 -0
- package/dist/server/cli/headless/tool-watchdog.d.ts.map +1 -1
- package/dist/server/cli/headless/tool-watchdog.js +31 -4
- package/dist/server/cli/headless/tool-watchdog.js.map +1 -1
- package/dist/server/cli/improvisation-retry.d.ts.map +1 -1
- package/dist/server/cli/improvisation-retry.js +1 -30
- package/dist/server/cli/improvisation-retry.js.map +1 -1
- package/dist/server/cli/improvisation-session-manager.d.ts +1 -0
- package/dist/server/cli/improvisation-session-manager.d.ts.map +1 -1
- package/dist/server/cli/improvisation-session-manager.js +16 -3
- package/dist/server/cli/improvisation-session-manager.js.map +1 -1
- package/dist/server/cli/prompt-builders.d.ts.map +1 -1
- package/dist/server/cli/prompt-builders.js +31 -13
- package/dist/server/cli/prompt-builders.js.map +1 -1
- package/dist/server/index.js +1 -9
- package/dist/server/index.js.map +1 -1
- package/dist/server/mcp/bouncer-cli.js +5 -4
- package/dist/server/mcp/bouncer-cli.js.map +1 -1
- package/dist/server/mcp/bouncer-haiku.js +1 -1
- package/dist/server/mcp/bouncer-haiku.js.map +1 -1
- package/dist/server/mcp/bouncer-integration.d.ts.map +1 -1
- package/dist/server/mcp/bouncer-integration.js +14 -8
- package/dist/server/mcp/bouncer-integration.js.map +1 -1
- package/dist/server/mcp/security-patterns.js +1 -1
- package/dist/server/mcp/security-patterns.js.map +1 -1
- package/dist/server/services/plan/composer.d.ts.map +1 -1
- package/dist/server/services/plan/composer.js +19 -9
- package/dist/server/services/plan/composer.js.map +1 -1
- package/dist/server/services/plan/executor.d.ts +6 -1
- package/dist/server/services/plan/executor.d.ts.map +1 -1
- package/dist/server/services/plan/executor.js +163 -77
- package/dist/server/services/plan/executor.js.map +1 -1
- package/dist/server/services/plan/front-matter.d.ts +1 -0
- package/dist/server/services/plan/front-matter.d.ts.map +1 -1
- package/dist/server/services/plan/front-matter.js +6 -0
- package/dist/server/services/plan/front-matter.js.map +1 -1
- package/dist/server/services/plan/issue-classification.d.ts +11 -0
- package/dist/server/services/plan/issue-classification.d.ts.map +1 -0
- package/dist/server/services/plan/issue-classification.js +20 -0
- package/dist/server/services/plan/issue-classification.js.map +1 -0
- package/dist/server/services/plan/issue-prompt-builder.d.ts.map +1 -1
- package/dist/server/services/plan/issue-prompt-builder.js +7 -4
- package/dist/server/services/plan/issue-prompt-builder.js.map +1 -1
- package/dist/server/services/plan/issue-retry.d.ts +0 -5
- package/dist/server/services/plan/issue-retry.d.ts.map +1 -1
- package/dist/server/services/plan/issue-retry.js +12 -241
- package/dist/server/services/plan/issue-retry.js.map +1 -1
- package/dist/server/services/plan/parser-core.d.ts.map +1 -1
- package/dist/server/services/plan/parser-core.js +1 -0
- package/dist/server/services/plan/parser-core.js.map +1 -1
- package/dist/server/services/plan/review-gate.d.ts.map +1 -1
- package/dist/server/services/plan/review-gate.js +9 -6
- package/dist/server/services/plan/review-gate.js.map +1 -1
- package/dist/server/services/plan/types.d.ts +1 -0
- package/dist/server/services/plan/types.d.ts.map +1 -1
- package/dist/server/services/platform-credentials.d.ts.map +1 -1
- package/dist/server/services/platform-credentials.js +11 -4
- package/dist/server/services/platform-credentials.js.map +1 -1
- package/dist/server/services/terminal/pty-manager.d.ts.map +1 -1
- package/dist/server/services/terminal/pty-manager.js +7 -1
- package/dist/server/services/terminal/pty-manager.js.map +1 -1
- package/dist/server/services/websocket/file-search-handlers.d.ts.map +1 -1
- package/dist/server/services/websocket/file-search-handlers.js +4 -0
- package/dist/server/services/websocket/file-search-handlers.js.map +1 -1
- package/dist/server/services/websocket/handler-context.d.ts +2 -0
- package/dist/server/services/websocket/handler-context.d.ts.map +1 -1
- package/dist/server/services/websocket/handler.d.ts +2 -0
- package/dist/server/services/websocket/handler.d.ts.map +1 -1
- package/dist/server/services/websocket/handler.js +18 -7
- package/dist/server/services/websocket/handler.js.map +1 -1
- package/dist/server/services/websocket/plan-execution-handlers.js +6 -6
- package/dist/server/services/websocket/plan-execution-handlers.js.map +1 -1
- package/dist/server/services/websocket/quality-fix-agent.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-fix-agent.js +90 -42
- package/dist/server/services/websocket/quality-fix-agent.js.map +1 -1
- package/dist/server/services/websocket/quality-handlers.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-handlers.js +48 -7
- package/dist/server/services/websocket/quality-handlers.js.map +1 -1
- package/dist/server/services/websocket/quality-persistence.d.ts +22 -0
- package/dist/server/services/websocket/quality-persistence.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-persistence.js +48 -1
- package/dist/server/services/websocket/quality-persistence.js.map +1 -1
- package/dist/server/services/websocket/quality-review-agent.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-review-agent.js +74 -32
- package/dist/server/services/websocket/quality-review-agent.js.map +1 -1
- package/dist/server/services/websocket/quality-tools.d.ts.map +1 -1
- package/dist/server/services/websocket/quality-tools.js +18 -18
- package/dist/server/services/websocket/quality-tools.js.map +1 -1
- package/dist/server/services/websocket/skill-handlers.d.ts +3 -1
- package/dist/server/services/websocket/skill-handlers.d.ts.map +1 -1
- package/dist/server/services/websocket/skill-handlers.js +52 -41
- package/dist/server/services/websocket/skill-handlers.js.map +1 -1
- package/dist/server/services/websocket/skill-watcher.d.ts +17 -0
- package/dist/server/services/websocket/skill-watcher.d.ts.map +1 -0
- package/dist/server/services/websocket/skill-watcher.js +85 -0
- package/dist/server/services/websocket/skill-watcher.js.map +1 -0
- package/dist/server/services/websocket/types.d.ts +2 -268
- package/dist/server/services/websocket/types.d.ts.map +1 -1
- package/dist/server/services/websocket/types.js +0 -4
- package/dist/server/services/websocket/types.js.map +1 -1
- package/package.json +1 -1
- package/server/cli/headless/claude-invoker-stream.ts +1 -0
- package/server/cli/headless/index.ts +2 -0
- package/server/cli/headless/resilient-runner.ts +354 -0
- package/server/cli/headless/retry-strategies.ts +330 -0
- package/server/cli/headless/stall-assessor.ts +5 -0
- package/server/cli/headless/tool-watchdog.ts +40 -4
- package/server/cli/improvisation-retry.ts +1 -32
- package/server/cli/improvisation-session-manager.ts +17 -3
- package/server/cli/prompt-builders.ts +33 -12
- package/server/index.ts +1 -9
- package/server/mcp/bouncer-cli.ts +5 -4
- package/server/mcp/bouncer-haiku.ts +1 -1
- package/server/mcp/bouncer-integration.ts +15 -8
- package/server/mcp/security-patterns.ts +1 -1
- package/server/services/plan/agents/code-review.md +109 -0
- package/server/services/plan/agents/commit-message.md +26 -0
- package/server/services/plan/agents/fix-quality.md +24 -0
- package/server/services/plan/agents/pr-description.md +28 -0
- package/server/services/plan/composer.ts +20 -9
- package/server/services/plan/executor.ts +165 -77
- package/server/services/plan/front-matter.ts +7 -0
- package/server/services/plan/issue-classification.ts +21 -0
- package/server/services/plan/issue-prompt-builder.ts +8 -4
- package/server/services/plan/issue-retry.ts +15 -330
- package/server/services/plan/parser-core.ts +1 -0
- package/server/services/plan/review-gate.ts +9 -6
- package/server/services/plan/types.ts +3 -0
- package/server/services/platform-credentials.ts +10 -4
- package/server/services/terminal/pty-manager.ts +7 -1
- package/server/services/websocket/file-search-handlers.ts +2 -0
- package/server/services/websocket/handler-context.ts +2 -0
- package/server/services/websocket/handler.ts +18 -8
- package/server/services/websocket/plan-execution-handlers.ts +7 -7
- package/server/services/websocket/quality-fix-agent.ts +86 -44
- package/server/services/websocket/quality-handlers.ts +48 -7
- package/server/services/websocket/quality-persistence.ts +75 -1
- package/server/services/websocket/quality-review-agent.ts +70 -31
- package/server/services/websocket/quality-tools.ts +16 -14
- package/server/services/websocket/skill-handlers.ts +50 -40
- package/server/services/websocket/skill-watcher.ts +79 -0
- package/server/services/websocket/types.ts +0 -311
- package/dist/server/services/deploy/ai-broker.d.ts +0 -63
- package/dist/server/services/deploy/ai-broker.d.ts.map +0 -1
- package/dist/server/services/deploy/ai-broker.js +0 -360
- package/dist/server/services/deploy/ai-broker.js.map +0 -1
- package/dist/server/services/deploy/board-execution-handler.d.ts +0 -114
- package/dist/server/services/deploy/board-execution-handler.d.ts.map +0 -1
- package/dist/server/services/deploy/board-execution-handler.js +0 -621
- package/dist/server/services/deploy/board-execution-handler.js.map +0 -1
- package/dist/server/services/deploy/credentials.d.ts +0 -35
- package/dist/server/services/deploy/credentials.d.ts.map +0 -1
- package/dist/server/services/deploy/credentials.js +0 -177
- package/dist/server/services/deploy/credentials.js.map +0 -1
- package/dist/server/services/deploy/deploy-ai-service.d.ts +0 -107
- package/dist/server/services/deploy/deploy-ai-service.d.ts.map +0 -1
- package/dist/server/services/deploy/deploy-ai-service.js +0 -294
- package/dist/server/services/deploy/deploy-ai-service.js.map +0 -1
- package/dist/server/services/deploy/headless-session-handler.d.ts +0 -94
- package/dist/server/services/deploy/headless-session-handler.d.ts.map +0 -1
- package/dist/server/services/deploy/headless-session-handler.js +0 -266
- package/dist/server/services/deploy/headless-session-handler.js.map +0 -1
- package/dist/server/services/websocket/deploy-handlers.d.ts +0 -14
- package/dist/server/services/websocket/deploy-handlers.d.ts.map +0 -1
- package/dist/server/services/websocket/deploy-handlers.js +0 -409
- package/dist/server/services/websocket/deploy-handlers.js.map +0 -1
- package/dist/server/services/websocket/handlers/deploy-handlers.d.ts +0 -11
- package/dist/server/services/websocket/handlers/deploy-handlers.d.ts.map +0 -1
- package/dist/server/services/websocket/handlers/deploy-handlers.js +0 -176
- package/dist/server/services/websocket/handlers/deploy-handlers.js.map +0 -1
- package/server/cli/headless/RESEARCH.md +0 -627
- package/server/services/deploy/ai-broker.ts +0 -512
- package/server/services/deploy/board-execution-handler.ts +0 -847
- package/server/services/deploy/credentials.ts +0 -200
- package/server/services/deploy/deploy-ai-service.ts +0 -401
- package/server/services/deploy/headless-session-handler.ts +0 -414
- package/server/services/websocket/deploy-handlers.ts +0 -544
- package/server/services/websocket/handlers/deploy-handlers.ts +0 -228
package/dist/server/index.js
CHANGED
|
@@ -18,7 +18,6 @@ import { createFileRoutes, createImproviseRoutes, createInstanceRoutes, createNo
|
|
|
18
18
|
import { createPlatformRelayContext, ensureClaudeSettings, setTerminalTitle, wrapWebSocket } from './server-setup.js';
|
|
19
19
|
import { AnalyticsEvents, initAnalytics, shutdownAnalytics, trackEvent } from './services/analytics.js';
|
|
20
20
|
import { AuthService } from './services/auth.js';
|
|
21
|
-
import { createAiBrokerRoutes, setDeployHealthUpdateListener, setDeployUsageReportListener } from './services/deploy/ai-broker.js';
|
|
22
21
|
import { FileService } from './services/files.js';
|
|
23
22
|
import { InstanceRegistry } from './services/instances.js';
|
|
24
23
|
import { PlatformConnection } from './services/platform.js';
|
|
@@ -68,7 +67,7 @@ app.use('*', cors({
|
|
|
68
67
|
}));
|
|
69
68
|
app.use('*', logger());
|
|
70
69
|
const authMiddleware = async (c, next) => {
|
|
71
|
-
const publicPaths = ['/health', '/api/config'
|
|
70
|
+
const publicPaths = ['/health', '/api/config'];
|
|
72
71
|
if (publicPaths.some(path => c.req.path.startsWith(path))) {
|
|
73
72
|
return next();
|
|
74
73
|
}
|
|
@@ -87,7 +86,6 @@ app.route('/api/shutdown', createShutdownRoute(instanceRegistry));
|
|
|
87
86
|
app.route('/api/improvise', createImproviseRoutes(WORKING_DIR));
|
|
88
87
|
app.route('/api/files', createFileRoutes(fileService));
|
|
89
88
|
app.route('/api/notifications', createNotificationRoutes(WORKING_DIR));
|
|
90
|
-
app.route('/api/deploy/ai', createAiBrokerRoutes());
|
|
91
89
|
app.post('/api/reload-pty', async (c) => {
|
|
92
90
|
const success = await reloadPty();
|
|
93
91
|
return c.json({ success, available: success });
|
|
@@ -163,12 +161,6 @@ async function startServer() {
|
|
|
163
161
|
wsHandler.setUsageReporter((report) => {
|
|
164
162
|
platformConnection.send({ type: 'reportUsage', data: report });
|
|
165
163
|
});
|
|
166
|
-
setDeployUsageReportListener((report) => {
|
|
167
|
-
platformConnection.send({ type: 'deployUsageReport', data: report });
|
|
168
|
-
});
|
|
169
|
-
setDeployHealthUpdateListener((update) => {
|
|
170
|
-
platformConnection.send({ type: 'deployAiHealthUpdate', data: update });
|
|
171
|
-
});
|
|
172
164
|
},
|
|
173
165
|
onDisconnected: () => {
|
|
174
166
|
if (platformRelayContext) {
|
package/dist/server/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,gEAAgE;AAEhE;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAgB,IAAI,EAAa,MAAM,MAAM,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAmC,eAAe,EAAE,MAAM,IAAI,CAAA;AACrE,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EACpB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACrH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACvG,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,14 +14,14 @@ function buildOperation(toolName, toolInput) {
|
|
|
14
14
|
}
|
|
15
15
|
async function evaluate(rawInput) {
|
|
16
16
|
if (!rawInput.trim()) {
|
|
17
|
-
return { decision: '
|
|
17
|
+
return { decision: 'deny', reason: 'Empty input — cannot evaluate safety' };
|
|
18
18
|
}
|
|
19
19
|
let parsed;
|
|
20
20
|
try {
|
|
21
21
|
parsed = JSON.parse(rawInput);
|
|
22
22
|
}
|
|
23
23
|
catch {
|
|
24
|
-
return { decision: '
|
|
24
|
+
return { decision: 'deny', reason: 'Invalid JSON input — cannot evaluate safety' };
|
|
25
25
|
}
|
|
26
26
|
const toolName = parsed.tool_name || parsed.toolName || 'unknown';
|
|
27
27
|
const toolInput = parsed.input || parsed.toolInput || {};
|
|
@@ -48,7 +48,8 @@ async function main() {
|
|
|
48
48
|
const result = await evaluate(rawInput);
|
|
49
49
|
console.log(JSON.stringify(result));
|
|
50
50
|
}
|
|
51
|
-
main().catch(() => {
|
|
52
|
-
console.
|
|
51
|
+
main().catch((err) => {
|
|
52
|
+
console.error('[Bouncer] Fatal error:', err);
|
|
53
|
+
console.log(JSON.stringify({ decision: 'deny', reason: 'Bouncer crash — denying for safety' }));
|
|
53
54
|
});
|
|
54
55
|
//# sourceMappingURL=bouncer-cli.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bouncer-cli.js","sourceRoot":"","sources":["../../../server/mcp/bouncer-cli.ts"],"names":[],"mappings":";AACA,8DAA8D;AAC9D,gEAAgE;AAiBhE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,SAAS,cAAc,CAAC,QAAgB,EAAE,SAAkC;IAC1E,MAAM,MAAM,GAAG,GAAG,QAAQ,IAAI,CAAC;IAC/B,IAAI,QAAQ,KAAK,MAAM,IAAI,SAAS,CAAC,OAAO;QAAE,OAAO,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACxF,IAAI,QAAQ,KAAK,MAAM,IAAI,SAAS,CAAC,SAAS;QAAE,OAAO,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC5F,IAAI,QAAQ,KAAK,OAAO,IAAI,SAAS,CAAC,SAAS;QAAE,OAAO,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7F,OAAO,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,QAAgB;IACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACrB,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"bouncer-cli.js","sourceRoot":"","sources":["../../../server/mcp/bouncer-cli.ts"],"names":[],"mappings":";AACA,8DAA8D;AAC9D,gEAAgE;AAiBhE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,SAAS,cAAc,CAAC,QAAgB,EAAE,SAAkC;IAC1E,MAAM,MAAM,GAAG,GAAG,QAAQ,IAAI,CAAC;IAC/B,IAAI,QAAQ,KAAK,MAAM,IAAI,SAAS,CAAC,OAAO;QAAE,OAAO,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACxF,IAAI,QAAQ,KAAK,MAAM,IAAI,SAAS,CAAC,SAAS;QAAE,OAAO,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC5F,IAAI,QAAQ,KAAK,OAAO,IAAI,SAAS,CAAC,SAAS;QAAE,OAAO,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7F,OAAO,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,QAAgB;IACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,sCAAsC,EAAE,CAAC;IAC9E,CAAC;IAED,IAAI,MAAuH,CAAC;IAC5H,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,6CAA6C,EAAE,CAAC;IACrF,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC;IAClE,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IAEzD,MAAM,OAAO,GAAyB;QACpC,SAAS,EAAE,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC;QAC9C,OAAO,EAAE;YACP,OAAO,EAAE,wCAAwC;YACjD,gBAAgB,EAAE,OAAO,CAAC,GAAG,EAAE;YAC/B,QAAQ;YACR,SAAS;SACV;KACF,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QACvD,MAAM,EAAE,MAAM,CAAC,SAAS;KACzB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACxC,QAAQ,IAAI,KAAK,CAAC;IACpB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AACtC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC,CAAC,CAAC;AAClG,CAAC,CAAC,CAAC"}
|
|
@@ -75,7 +75,7 @@ export async function analyzeWithHaiku(request, claudeCommand = 'claude', _worki
|
|
|
75
75
|
return new Promise((resolve, reject) => {
|
|
76
76
|
const userRequest = request.context?.userRequest;
|
|
77
77
|
const userContextBlock = userRequest
|
|
78
|
-
? `\nUSER'S ORIGINAL REQUEST (what the user actually asked Claude to do):\n
|
|
78
|
+
? `\nUSER'S ORIGINAL REQUEST (what the user actually asked Claude to do):\n<user_request>\n${userRequest}\n</user_request>\n`
|
|
79
79
|
: '';
|
|
80
80
|
const prompt = loadSkillPrompt('check-injection', {
|
|
81
81
|
operation: request.operation,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bouncer-haiku.js","sourceRoot":"","sources":["../../../server/mcp/bouncer-haiku.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bouncer-haiku.js","sourceRoot":"","sources":["../../../server/mcp/bouncer-haiku.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bouncer-integration.d.ts","sourceRoot":"","sources":["../../../server/mcp/bouncer-integration.ts"],"names":[],"mappings":"AA8CA,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,YAAY,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;
|
|
1
|
+
{"version":3,"file":"bouncer-integration.d.ts","sourceRoot":"","sources":["../../../server/mcp/bouncer-integration.ts"],"names":[],"mappings":"AA8CA,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,YAAY,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AA8BD,qDAAqD;AACrD,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAiHD;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC,CAsD7F;AAED;;GAEG;AACH,OAAO,EAAE,YAAY,IAAI,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/E;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,oBAAoB,EAC7B,KAAK,GAAE,OAAc,GACpB,OAAO,CAAC,eAAe,CAAC,CAU1B"}
|
|
@@ -37,12 +37,17 @@ import { CRITICAL_THREATS, matchesPattern, normalizeOperation, requiresAIReview,
|
|
|
37
37
|
const CACHE_TTL_MS = parseInt(process.env.BOUNCER_CACHE_TTL_MS || '300000', 10);
|
|
38
38
|
const CACHE_MAX_SIZE = 200;
|
|
39
39
|
const decisionCache = new Map();
|
|
40
|
-
function
|
|
41
|
-
const
|
|
40
|
+
function buildCacheKey(operation, context) {
|
|
41
|
+
const sessionId = context?.sessionId ?? '_';
|
|
42
|
+
return `${sessionId}:${operation}`;
|
|
43
|
+
}
|
|
44
|
+
function getCachedDecision(operation, context) {
|
|
45
|
+
const key = buildCacheKey(operation, context);
|
|
46
|
+
const entry = decisionCache.get(key);
|
|
42
47
|
if (!entry)
|
|
43
48
|
return null;
|
|
44
49
|
if (Date.now() > entry.expiresAt) {
|
|
45
|
-
decisionCache.delete(
|
|
50
|
+
decisionCache.delete(key);
|
|
46
51
|
return null;
|
|
47
52
|
}
|
|
48
53
|
return entry.decision;
|
|
@@ -51,7 +56,7 @@ function getCachedDecision(operation) {
|
|
|
51
56
|
export function clearDecisionCache() {
|
|
52
57
|
decisionCache.clear();
|
|
53
58
|
}
|
|
54
|
-
function cacheDecision(operation, decision) {
|
|
59
|
+
function cacheDecision(operation, context, decision) {
|
|
55
60
|
if (decision.confidence < 50)
|
|
56
61
|
return;
|
|
57
62
|
if (decisionCache.size >= CACHE_MAX_SIZE) {
|
|
@@ -59,7 +64,8 @@ function cacheDecision(operation, decision) {
|
|
|
59
64
|
if (firstKey !== undefined)
|
|
60
65
|
decisionCache.delete(firstKey);
|
|
61
66
|
}
|
|
62
|
-
|
|
67
|
+
const key = buildCacheKey(operation, context);
|
|
68
|
+
decisionCache.set(key, { decision, expiresAt: Date.now() + CACHE_TTL_MS });
|
|
63
69
|
}
|
|
64
70
|
// ── Decision Finalization ─────────────────────────────────────
|
|
65
71
|
function finalizeDecision(operation, decision, layer, startTime, context, logFn, opts) {
|
|
@@ -80,7 +86,7 @@ function finalizeDecision(operation, decision, layer, startTime, context, logFn,
|
|
|
80
86
|
});
|
|
81
87
|
}
|
|
82
88
|
if (!opts?.skipCache)
|
|
83
|
-
cacheDecision(operation, decision);
|
|
89
|
+
cacheDecision(operation, context, decision);
|
|
84
90
|
return decision;
|
|
85
91
|
}
|
|
86
92
|
// ── Haiku Error Handling ──────────────────────────────────────
|
|
@@ -138,8 +144,8 @@ export async function reviewOperation(request) {
|
|
|
138
144
|
const { operation: rawOperation } = request;
|
|
139
145
|
const operation = normalizeOperation(rawOperation);
|
|
140
146
|
const fin = (d, layer, opts) => finalizeDecision(operation, d, layer, startTime, request.context, logBouncerDecision, opts);
|
|
141
|
-
// Check cache first
|
|
142
|
-
const cached = getCachedDecision(operation);
|
|
147
|
+
// Check cache first (keyed on operation + session to prevent cross-context bypass)
|
|
148
|
+
const cached = getCachedDecision(operation, request.context);
|
|
143
149
|
if (cached) {
|
|
144
150
|
console.error(`[Bouncer] ⚡ Cache hit: ${cached.decision} (${cached.confidence}%)`);
|
|
145
151
|
return cached;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bouncer-integration.js","sourceRoot":"","sources":["../../../server/mcp/bouncer-integration.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,gEAAgE;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EAChB,MAAM,wBAAwB,CAAC;AA4BhC,iEAAiE;AAEjE,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC;AAChF,MAAM,cAAc,GAAG,GAAG,CAAC;AAO3B,MAAM,aAAa,GAAG,IAAI,GAAG,EAA0B,CAAC;AAExD,SAAS,iBAAiB,CAAC,SAAiB;
|
|
1
|
+
{"version":3,"file":"bouncer-integration.js","sourceRoot":"","sources":["../../../server/mcp/bouncer-integration.ts"],"names":[],"mappings":"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"}
|
|
@@ -134,7 +134,7 @@ export const SAFE_OPERATIONS = [
|
|
|
134
134
|
{ pattern: /^Bash:\s*git\s+(commit|push|tag|remote|rebase|merge|cherry-pick|reset|revert)($|\s)/i },
|
|
135
135
|
{ pattern: /^Bash:\s*git\s+(worktree|submodule|config|clean|gc)($|\s)/i },
|
|
136
136
|
{ pattern: /^Bash:\s*(uname|hostname|whoami|id|groups|uptime|df|du|free|top|ps|lsof|stat|file|readlink)($|\s)/i },
|
|
137
|
-
{ pattern: /^Bash:\s*(
|
|
137
|
+
{ pattern: /^Bash:\s*(touch|basename|dirname|realpath|mktemp|xargs|tee|tr|cut|paste|comm|diff|patch)($|\s)/i },
|
|
138
138
|
{ pattern: /^Bash:\s*(tar|gzip|gunzip|zip|unzip|bzip2)\s/i },
|
|
139
139
|
{ pattern: /^Bash:\s*(ruby|python3?|php|java|javac|scala|kotlinc|swift|rustc|gcc|g\+\+|clang)\s/i },
|
|
140
140
|
{ pattern: /^Bash:\s*(pip|pip3|gem|bundle|composer|maven|gradle|sbt|cargo|rustup)\s/i },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security-patterns.js","sourceRoot":"","sources":["../../../server/mcp/security-patterns.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"security-patterns.js","sourceRoot":"","sources":["../../../server/mcp/security-patterns.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composer.d.ts","sourceRoot":"","sources":["../../../../server/services/plan/composer.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AA6GvD,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,cAAc,EACnB,EAAE,EAAE,SAAS,EACb,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"composer.d.ts","sourceRoot":"","sources":["../../../../server/services/plan/composer.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AA6GvD,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,cAAc,EACnB,EAAE,EAAE,SAAS,EACb,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CA2Lf"}
|
|
@@ -9,8 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import { existsSync, readFileSync } from 'node:fs';
|
|
11
11
|
import { join } from 'node:path';
|
|
12
|
-
import {
|
|
13
|
-
import { HeadlessRunner } from '../../cli/headless/index.js';
|
|
12
|
+
import { ResilientRunner } from '../../cli/headless/resilient-runner.js';
|
|
14
13
|
import { defaultPmDir, getNextId, parseBoardDirectory, parsePlanDirectory, resolvePmDir } from './parser.js';
|
|
15
14
|
const PROMPT_TOOL_MESSAGES = {
|
|
16
15
|
Glob: 'Discovering project files...',
|
|
@@ -163,6 +162,7 @@ created: "YYYY-MM-DD"
|
|
|
163
162
|
blocked_by: [] # Use backlog-relative paths: backlog/IS-NNN.md
|
|
164
163
|
blocks: [] # Use backlog-relative paths: backlog/IS-NNN.md
|
|
165
164
|
review_gate: auto
|
|
165
|
+
output_type: auto # code = modify source files, document = produce written artifact, auto = infer
|
|
166
166
|
output_file: null
|
|
167
167
|
---
|
|
168
168
|
|
|
@@ -195,6 +195,14 @@ Implementation guidance.
|
|
|
195
195
|
- If an issue requires work across multiple subsystems, split it into one issue per subsystem with blocked_by edges between them
|
|
196
196
|
- Research/investigation issues should be separate from implementation issues
|
|
197
197
|
|
|
198
|
+
## output_type rules (critical — determines how the AI executes and reviews each issue)
|
|
199
|
+
|
|
200
|
+
- Set \`output_type: document\` for research, design, analysis, writing, planning, learning, or educational issues — anything that produces a written artifact rather than code changes
|
|
201
|
+
- Set \`output_type: code\` for issues that MUST modify source code files (implementation, bug fixes, refactoring)
|
|
202
|
+
- Set \`output_type: auto\` when unsure — the system will infer from "Files to Modify" (if the section lists real source paths it's treated as code, otherwise as document)
|
|
203
|
+
- When output_type is \`document\`, "Files to Modify" entries are treated as references, not files to edit. The AI produces a document artifact and is reviewed on document quality.
|
|
204
|
+
- When output_type is \`code\`, "Files to Modify" lists actual source files the AI must edit. The review gate verifies source files were changed.
|
|
205
|
+
|
|
198
206
|
## Epic creation rules
|
|
199
207
|
|
|
200
208
|
- Create an EP-*.md file in ${cc.backlogPath} with type: epic and a children: [] field in front matter
|
|
@@ -211,12 +219,13 @@ User request: ${userPrompt}`;
|
|
|
211
219
|
type: 'planPromptProgress',
|
|
212
220
|
data: { message: 'Starting project planning...' },
|
|
213
221
|
});
|
|
214
|
-
const runner = new
|
|
222
|
+
const runner = new ResilientRunner({
|
|
215
223
|
workingDir: executionDir || workingDir,
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
224
|
+
prompt: enrichedPrompt,
|
|
225
|
+
policy: 'STANDARD',
|
|
226
|
+
stallWarningMs: 300_000,
|
|
227
|
+
stallKillMs: 900_000,
|
|
228
|
+
stallHardCapMs: 1_800_000,
|
|
220
229
|
verbose: true,
|
|
221
230
|
outputCallback: (text) => {
|
|
222
231
|
ctx.send(ws, {
|
|
@@ -236,13 +245,14 @@ User request: ${userPrompt}`;
|
|
|
236
245
|
}
|
|
237
246
|
};
|
|
238
247
|
})(),
|
|
248
|
+
logLabel: 'pm-compose',
|
|
249
|
+
logDir: cc.effectiveBoardId ? join(pmDir, 'boards', cc.effectiveBoardId, 'logs') : undefined,
|
|
239
250
|
});
|
|
240
251
|
ctx.broadcastToAll({
|
|
241
252
|
type: 'planPromptProgress',
|
|
242
253
|
data: { message: 'Claude is planning your project...' },
|
|
243
254
|
});
|
|
244
|
-
const
|
|
245
|
-
const result = await runWithFileLogger('pm-compose', () => runner.run(), boardLogDir);
|
|
255
|
+
const result = await runner.run();
|
|
246
256
|
ctx.broadcastToAll({
|
|
247
257
|
type: 'planPromptProgress',
|
|
248
258
|
data: { message: 'Finalizing project plan...' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composer.js","sourceRoot":"","sources":["../../../../server/services/plan/composer.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,gEAAgE;AAEhE;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"composer.js","sourceRoot":"","sources":["../../../../server/services/plan/composer.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,14 +47,16 @@ export declare class PlanExecutor extends EventEmitter {
|
|
|
47
47
|
constructor(workingDir: string, options?: {
|
|
48
48
|
extraEnv?: Record<string, string>;
|
|
49
49
|
});
|
|
50
|
+
private validateIssuePath;
|
|
50
51
|
getStatus(): ExecutionStatus;
|
|
51
52
|
getMetrics(): ExecutionMetrics;
|
|
52
53
|
startEpic(epicPath: string): Promise<void>;
|
|
53
54
|
/** Start execution, optionally scoped to a specific board. */
|
|
54
55
|
startBoard(boardId: string, executionDir?: string): Promise<void>;
|
|
55
56
|
start(): Promise<void>;
|
|
56
|
-
/** Run waves until done, paused, stopped, or stalled.
|
|
57
|
+
/** Run waves until done, paused, stopped, or stalled. */
|
|
57
58
|
private runWaveLoop;
|
|
59
|
+
private hasDeadIssues;
|
|
58
60
|
pause(): void;
|
|
59
61
|
stop(): void;
|
|
60
62
|
resume(): Promise<void>;
|
|
@@ -96,7 +98,10 @@ export declare class PlanExecutor extends EventEmitter {
|
|
|
96
98
|
private tryCompleteBoardIfDone;
|
|
97
99
|
private resolveActiveBoardId;
|
|
98
100
|
private buildCompletionReason;
|
|
101
|
+
/** Detect issues stuck in non-terminal states with no path to completion. */
|
|
102
|
+
private detectDeadState;
|
|
99
103
|
private revertIncompleteIssues;
|
|
104
|
+
private appendCancellationNote;
|
|
100
105
|
private updateIssueFrontMatter;
|
|
101
106
|
private ensureOutputDirs;
|
|
102
107
|
private appendProgressEntry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../../server/services/plan/executor.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../../server/services/plan/executor.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAgB3C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC;AAc/G,MAAM,WAAW,gBAAgB;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,uDAAuD;IACvD,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,qBAAa,YAAa,SAAQ,YAAY;IAC5C,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,4EAA4E;IAC5E,OAAO,CAAC,mBAAmB,CAAgC;IAC3D,OAAO,CAAC,SAAS,CAAuB;IACxC,4DAA4D;IAC5D,OAAO,CAAC,KAAK,CAAuB;IACpC,yGAAyG;IACzG,OAAO,CAAC,QAAQ,CAAuB;IACvC,iDAAiD;IACjD,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,eAAe,CAAkB;IACzC,8EAA8E;IAC9E,OAAO,CAAC,eAAe,CAAS;IAChC,8FAA8F;IAC9F,OAAO,CAAC,QAAQ,CAAC,CAAyB;IAC1C,iGAAiG;IACjG,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,OAAO,CAMb;gBAEU,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE;IAO/E,OAAO,CAAC,iBAAiB;IAUzB,SAAS,IAAI,eAAe;IAC5B,UAAU,IAAI,gBAAgB;IAExB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMhD,8DAA8D;IACxD,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA6C5B,yDAAyD;YAC3C,WAAW;YAuBX,aAAa;IAY3B,KAAK,IAAI,IAAI;IACb,IAAI,IAAI,IAAI;IAQZ,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;YAUT,WAAW;IAyDzB,qFAAqF;YACvE,cAAc;IAsC5B;;;OAGG;YACW,YAAY;IAkC1B;;;;OAIG;YACW,oBAAoB;IAsClC,2GAA2G;YAC7F,aAAa;IAqD3B;;;;;OAKG;YACW,kBAAkB;IAiChC,2EAA2E;YAC7D,yBAAyB;IAoBvC,uDAAuD;YACzC,sBAAsB;YAsBtB,eAAe;IA6B7B,8FAA8F;YAChF,eAAe;IAmB7B,8EAA8E;IAC9E,OAAO,CAAC,iBAAiB;IAazB,iEAAiE;YACnD,aAAa;IAW3B,2EAA2E;YAC7D,sBAAsB;IAiBpC,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,qBAAqB;IAS7B,6EAA6E;IAC7E,OAAO,CAAC,eAAe;YAsBT,sBAAsB;YAgBtB,sBAAsB;YAgBtB,sBAAsB;YAiBtB,gBAAgB;YAahB,mBAAmB;YA0CnB,kBAAkB;IAYhC,oFAAoF;IACpF,OAAO,CAAC,eAAe;CAUxB"}
|