instar 1.3.478 → 1.3.480
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/.claude/skills/autonomous/SKILL.md +10 -0
- package/.claude/skills/autonomous/hooks/autonomous-stop-hook.sh +418 -23
- package/.claude/skills/autonomous/scripts/setup-autonomous.sh +29 -0
- package/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +10 -7
- package/dist/commands/server.js.map +1 -1
- package/dist/config/ConfigDefaults.d.ts.map +1 -1
- package/dist/config/ConfigDefaults.js +39 -8
- package/dist/config/ConfigDefaults.js.map +1 -1
- package/dist/core/PostUpdateMigrator.d.ts +1 -0
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +121 -3
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/core/devGatedFeatures.d.ts +31 -0
- package/dist/core/devGatedFeatures.d.ts.map +1 -1
- package/dist/core/devGatedFeatures.js +121 -0
- package/dist/core/devGatedFeatures.js.map +1 -1
- package/dist/scaffold/templates.d.ts.map +1 -1
- package/dist/scaffold/templates.js +1 -0
- package/dist/scaffold/templates.js.map +1 -1
- package/dist/server/routes.js +1 -1
- package/dist/server/routes.js.map +1 -1
- package/package.json +1 -1
- package/scripts/lib/dark-gate-attribution.js +148 -0
- package/scripts/lint-dev-agent-dark-gate.js +159 -14
- package/src/data/builtin-manifest.json +64 -64
- package/src/scaffold/templates.ts +1 -0
- package/upgrades/1.3.479.md +53 -0
- package/upgrades/1.3.480.md +35 -0
- package/upgrades/side-effects/autonomous-completion-real-checks.md +88 -0
- package/upgrades/side-effects/dev-agent-dark-gate-enforcement.md +95 -0
|
@@ -31,8 +31,39 @@ export interface DevGatedFeature {
|
|
|
31
31
|
configPath: string;
|
|
32
32
|
/** One-line description of what runs live on a dev agent. */
|
|
33
33
|
description: string;
|
|
34
|
+
/**
|
|
35
|
+
* One-line "non-destructive, safe-to-run-live-on-dev" rationale. REQUIRED on
|
|
36
|
+
* every entry (DEV-AGENT-DARK-GATE-ENFORCEMENT Slice B): the human gate is the
|
|
37
|
+
* real backstop — dev-gating a feature live means it runs unattended on the dev
|
|
38
|
+
* agent, so each entry must carry an explicit justification a CODEOWNERS reviewer
|
|
39
|
+
* can check. A destructive/cost-bearing feature does NOT belong here.
|
|
40
|
+
*/
|
|
41
|
+
justification: string;
|
|
34
42
|
}
|
|
35
43
|
export declare const DEV_GATED_FEATURES: DevGatedFeature[];
|
|
44
|
+
/**
|
|
45
|
+
* An `enabled: false` config default that is DELIBERATELY dark for EVERYONE (dev
|
|
46
|
+
* agents included) — the opposite of a DEV_GATED_FEATURES entry. The lint
|
|
47
|
+
* (scripts/lint-dev-agent-dark-gate.js, assertion C) requires every literal
|
|
48
|
+
* `enabled: false` in ConfigDefaults.ts to be EITHER dev-gated (registered above,
|
|
49
|
+
* with `enabled` omitted) OR classified here, so no dark default can ship by
|
|
50
|
+
* accident (the cartographer hole this spec closed).
|
|
51
|
+
*
|
|
52
|
+
* The registry's value is diffability + a category/reason quality bar — NOT
|
|
53
|
+
* prevention. It is a CODEOWNERS-reviewed path; the human gate is the real
|
|
54
|
+
* backstop. The lint REJECTS an entry with an unknown category or a reason
|
|
55
|
+
* shorter than 12 non-whitespace chars.
|
|
56
|
+
*/
|
|
57
|
+
export type DarkGateCategory = 'destructive' | 'optional-integration' | 'cost-bearing' | 'structural-stub' | 'deliberate-fleet-default';
|
|
58
|
+
export interface DarkGateExclusion {
|
|
59
|
+
/** Dotted path to the feature's `enabled` flag in the agent config. */
|
|
60
|
+
configPath: string;
|
|
61
|
+
/** Why it is NOT dev-gated (closed enum). */
|
|
62
|
+
category: DarkGateCategory;
|
|
63
|
+
/** Human-readable rationale (≥12 non-whitespace chars; the lint enforces this). */
|
|
64
|
+
reason: string;
|
|
65
|
+
}
|
|
66
|
+
export declare const DARK_GATE_EXCLUSIONS: DarkGateExclusion[];
|
|
36
67
|
/**
|
|
37
68
|
* Read a dotted path off a config object, returning the value or undefined.
|
|
38
69
|
* Used by the wiring test and the spec-intent cross-check (Slice 3).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devGatedFeatures.d.ts","sourceRoot":"","sources":["../../src/core/devGatedFeatures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"devGatedFeatures.d.ts","sourceRoot":"","sources":["../../src/core/devGatedFeatures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,kBAAkB,EAAE,eAAe,EAuD/C,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,gBAAgB,GACxB,aAAa,GACb,sBAAsB,GACtB,cAAc,GACd,iBAAiB,GACjB,0BAA0B,CAAC;AAE/B,MAAM,WAAW,iBAAiB;IAChC,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,mFAAmF;IACnF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,oBAAoB,EAAE,iBAAiB,EAqGnD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAO5E"}
|
|
@@ -28,36 +28,157 @@ export const DEV_GATED_FEATURES = [
|
|
|
28
28
|
name: 'growthAnalyst',
|
|
29
29
|
configPath: 'monitoring.growthAnalyst.enabled',
|
|
30
30
|
description: 'Proactive growth & milestone analyst (/growth/*).',
|
|
31
|
+
justification: 'Read/observe analyst; sends nothing by default (digestDelivery off); no destructive action, no spend.',
|
|
31
32
|
},
|
|
32
33
|
{
|
|
33
34
|
name: 'coherenceJournal',
|
|
34
35
|
configPath: 'multiMachine.coherenceJournal.enabled',
|
|
35
36
|
description: 'Cross-machine coherence journal.',
|
|
37
|
+
justification: 'Append-only local journal of content-free lifecycle events; no egress, no spend, no destructive action.',
|
|
36
38
|
},
|
|
37
39
|
{
|
|
38
40
|
name: 'warmSessionA2A',
|
|
39
41
|
configPath: 'threadline.warmSessionA2A.enabled',
|
|
40
42
|
description: 'Warm-session pool for agent-to-agent delivery.',
|
|
43
|
+
justification: 'Bounded warm-session pool (global/per-peer caps + TTL); no destructive action, no third-party spend.',
|
|
41
44
|
},
|
|
42
45
|
{
|
|
43
46
|
name: 'secretSync',
|
|
44
47
|
configPath: 'multiMachine.secretSync.enabled',
|
|
45
48
|
description: 'Cross-machine secret sync (receive side).',
|
|
49
|
+
justification: 'Receive-only by default (push needs pushEnabled); encrypted-per-peer; no destructive action, no spend.',
|
|
46
50
|
},
|
|
47
51
|
{
|
|
48
52
|
name: 'geminiLoopDriver',
|
|
49
53
|
configPath: 'autonomousSessions.geminiLoopDriver.enabled',
|
|
50
54
|
description: 'Gemini autonomous-loop driver.',
|
|
55
|
+
justification: 'Drives the dev agent\'s own autonomous loop; bounded, no destructive action against the source tree.',
|
|
51
56
|
},
|
|
52
57
|
{
|
|
53
58
|
name: 'respawnBuildContext',
|
|
54
59
|
configPath: 'sessions.respawnBuildContext.enabled',
|
|
55
60
|
description: 'Respawn build-context capture on session restart.',
|
|
61
|
+
justification: 'Captures build context on restart; read-only observability, no destructive action, no spend.',
|
|
56
62
|
},
|
|
57
63
|
{
|
|
58
64
|
name: 'selfKnowledgeSessionContext',
|
|
59
65
|
configPath: 'selfKnowledge.sessionContext.enabled',
|
|
60
66
|
description: 'Session-boot self-knowledge context injection.',
|
|
67
|
+
justification: 'Injects vault secret NAMES (never values) + facts at boot; read-only, no egress, no destructive action.',
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
name: 'cartographer',
|
|
71
|
+
configPath: 'cartographer.enabled',
|
|
72
|
+
description: 'Cartographer doc-tree + navigation read surfaces (zero egress).',
|
|
73
|
+
justification: 'Read-only local-index surfaces; no egress, no spend.',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
name: 'cartographerConformanceAudit',
|
|
77
|
+
configPath: 'cartographer.conformanceAudit.enabled',
|
|
78
|
+
description: 'Standards enforcement-coverage audit (deterministic, zero egress).',
|
|
79
|
+
justification: 'Deterministic local audit; no LLM, no egress, no spend.',
|
|
80
|
+
},
|
|
81
|
+
];
|
|
82
|
+
export const DARK_GATE_EXCLUSIONS = [
|
|
83
|
+
// ── destructive — kills/deletes on a heuristic; off + dry-run for EVERYONE ──
|
|
84
|
+
{
|
|
85
|
+
configPath: 'monitoring.sessionReaper.enabled',
|
|
86
|
+
category: 'destructive',
|
|
87
|
+
reason: 'kills idle sessions; off+dry-run for everyone',
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
configPath: 'monitoring.agentWorktreeReaper.enabled',
|
|
91
|
+
category: 'destructive',
|
|
92
|
+
reason: 'deletes git worktrees; off+dry-run for everyone',
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
configPath: 'monitoring.mcpProcessReaper.enabled',
|
|
96
|
+
category: 'destructive',
|
|
97
|
+
reason: 'kills MCP processes; off+dry-run for everyone',
|
|
98
|
+
},
|
|
99
|
+
// ── cost-bearing — ongoing third-party / LLM spend; explicit opt-in ──
|
|
100
|
+
{
|
|
101
|
+
configPath: 'mentor.autonomousFix.enabled',
|
|
102
|
+
category: 'cost-bearing',
|
|
103
|
+
reason: 'spawns full-tool Opus fix sessions; ongoing spend',
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
configPath: 'cartographer.freshnessSweep.enabled',
|
|
107
|
+
category: 'cost-bearing',
|
|
108
|
+
reason: 'authors summaries via off-Claude codex; ongoing third-party spend; explicit opt-in even on dev',
|
|
109
|
+
},
|
|
110
|
+
// ── structural-stub — no runtime consumer wired; a gate would assert dead behavior ──
|
|
111
|
+
{
|
|
112
|
+
configPath: 'cartographer.conformanceAudit.llmEnrichment.enabled',
|
|
113
|
+
category: 'structural-stub',
|
|
114
|
+
reason: 'no LLM pipeline wired; dark stub',
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
configPath: 'cartographer.subtreeNav.llmRerank.enabled',
|
|
118
|
+
category: 'structural-stub',
|
|
119
|
+
reason: 'no LLM pipeline wired; dark stub',
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
configPath: 'monitoring.agentSleep.enabled',
|
|
123
|
+
category: 'structural-stub',
|
|
124
|
+
reason: 'sleep/respawn mechanism is a later slice; not wired',
|
|
125
|
+
},
|
|
126
|
+
// ── optional-integration — opt-in per deployment ──
|
|
127
|
+
{
|
|
128
|
+
configPath: 'multiMachine.sessionPool.enabled',
|
|
129
|
+
category: 'optional-integration',
|
|
130
|
+
reason: 'multi-machine pooling; opt-in per deployment',
|
|
131
|
+
},
|
|
132
|
+
// ── deliberate-fleet-default — off for everyone by design (incl. dev) ──
|
|
133
|
+
{
|
|
134
|
+
configPath: 'monitoring.bootHealthBeacon.enabled',
|
|
135
|
+
category: 'deliberate-fleet-default',
|
|
136
|
+
reason: 'minimal boot /health responder; deliberate fleet default, off until a supervisor needs it',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
configPath: 'monitoring.parallelWorkSentinel.enabled',
|
|
140
|
+
category: 'deliberate-fleet-default',
|
|
141
|
+
reason: 'observe-only overlap councilor; candidate for dev-gating in a follow-up audit',
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
configPath: 'monitoring.failureLearning.enabled',
|
|
145
|
+
category: 'deliberate-fleet-default',
|
|
146
|
+
reason: 'observe-only failure-learning loop; candidate for dev-gating in a follow-up audit',
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
configPath: 'monitoring.correctionLearning.enabled',
|
|
150
|
+
category: 'deliberate-fleet-default',
|
|
151
|
+
reason: 'observe-only correction/preference sentinel; candidate for dev-gating in a follow-up audit',
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
configPath: 'monitoring.apprenticeshipCycleSla.enabled',
|
|
155
|
+
category: 'deliberate-fleet-default',
|
|
156
|
+
reason: 'observe-only overdue-cycle signal; candidate for dev-gating in a follow-up audit',
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
configPath: 'monitoring.geminiCapacityEscalation.enabled',
|
|
160
|
+
category: 'deliberate-fleet-default',
|
|
161
|
+
reason: 'observe-only capacity-block escalation; candidate for dev-gating in a follow-up audit',
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
configPath: 'monitoring.releaseReadiness.enabled',
|
|
165
|
+
category: 'deliberate-fleet-default',
|
|
166
|
+
reason: 'observe-only release-readiness sentinel; repo-gated; candidate for dev-gating in a follow-up audit',
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
configPath: 'threadline.a2aCheckIn.enabled',
|
|
170
|
+
category: 'deliberate-fleet-default',
|
|
171
|
+
reason: 'A2A check-in summarizer; deliberate fleet default, opt-in to keep the operator un-flooded',
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
configPath: 'mentor.enabled',
|
|
175
|
+
category: 'deliberate-fleet-default',
|
|
176
|
+
reason: 'framework-onboarding mentor system; deliberate fleet default, off until the human advances rollout',
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
configPath: 'mentee.enabled',
|
|
180
|
+
category: 'deliberate-fleet-default',
|
|
181
|
+
reason: 'mentee receiver wiring; deliberate fleet default, off until an allowlisted mentor is configured',
|
|
61
182
|
},
|
|
62
183
|
];
|
|
63
184
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devGatedFeatures.js","sourceRoot":"","sources":["../../src/core/devGatedFeatures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;
|
|
1
|
+
{"version":3,"file":"devGatedFeatures.js","sourceRoot":"","sources":["../../src/core/devGatedFeatures.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/scaffold/templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAgG/D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA2E/F;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiBvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA2B1D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,OAAO,EACpB,WAAW,GAAE,OAAe,EAC5B,WAAW,GAAE,OAAe,GAC3B,MAAM,
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/scaffold/templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAgG/D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA2E/F;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiBvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA2B1D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,OAAO,EACpB,WAAW,GAAE,OAAe,EAC5B,WAAW,GAAE,OAAe,GAC3B,MAAM,CAk3CR;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,OAAO,EACpB,WAAW,GAAE,OAAe,GAC3B,MAAM,CA2TR"}
|
|
@@ -444,6 +444,7 @@ This routes feedback to the Instar maintainers automatically. Valid types: \`bug
|
|
|
444
444
|
- Proactive: user asks "what autonomous jobs are running?" → GET /autonomous/sessions. "stop everything" → POST /autonomous/stop-all. "stop the job on topic X" → POST /autonomous/sessions/X/stop.
|
|
445
445
|
|
|
446
446
|
**Autonomous Completion Discipline** — A pre-approved autonomous run is structurally held to its FULL completion bar. The \`/autonomous\` setup defaults to a verifiable \`completion_condition\` (judged each turn by an INDEPENDENT model from what I SURFACE — I cannot self-certify "done"); the self-declared \`<promise>\` is the recorded fallback. The stop hook re-feeds a continue for every NON-stop rationalization ("clean milestone", "needs your steer", "it's late", "good stopping point") — a deterministic milestone-phrase scan flags these to the judge, and the judge is injection-resistant (the transcript is fenced as instruction-inert data; guard-directed phrasing is treated as gaming). The ONLY exits are (a) a genuine HARD external blocker, (b) duration expiry, (c) the condition genuinely met. For (a) I emit a nonce'd \`<hard-blocker>\` terminal marker (what I tried / why I'm stuck / what I'd need); the judge classifies it external-vs-buildable — if what I'd need is something I could build/derive/fetch myself, I'm re-fed to keep working. A clean (a) exit writes \`logs/autonomous-hard-blocker.jsonl\`, raises one /ack-able Attention item, and sends one Telegram. Off-switch + judge budget: \`.instar/config.json\` → \`autonomousSessions.completionDiscipline\` (\`enabled\`, \`judgeTimeoutMs\`); read at the hook chokepoint, so a toggle lands on the next stop with no restart.
|
|
447
|
+
- **Real-check verification (optional, ACT-152):** the completion judge reads the TRANSCRIPT (what I surface) — it does not run tools. When a goal is checkable by a command (a test suite, a build, a grep, a CI status), set a \`verification_command\` in the autonomous state (\`instar\`'s setup takes \`--verification-command "<cmd>"\` and \`--verification-cwd "<dir>"\`, and always records \`work_dir\` so a relative command runs in the right tree). When set, a met:true verdict RUNS the command and the run may stop ONLY if it ALSO passes (exit 0); a fail/timeout/breaker-open keeps me working with the command's output as guidance — it can never CAUSE a premature exit (the safe direction). Bounded timeout, output scrubbed for secrets, destructive commands refused, and a P19 breaker stops a stuck/flaky check from spinning. Audit: \`logs/autonomous-realcheck.jsonl\`. Off-switch: \`autonomousSessions.completionDiscipline.realCheck.enabled\` (read at the chokepoint, no restart). It is a NO-OP unless a job declares a \`verification_command\`.
|
|
447
448
|
|
|
448
449
|
**Cross-Machine Seamlessness (one agent, many machines)** — When I run on more than one machine, I am ONE agent that follows the user across them, not clones. Exactly one machine is "awake" at a time, decided by a **fenced lease** (a clock-proof, numbered "who's in charge" badge); the other is standby and takes over only when the awake machine genuinely goes silent.
|
|
449
450
|
- **I never double-reply** — each inbound message is handled exactly once (durable per-message ledger keyed on the platform event id), so a redelivery or mid-handoff overlap can't make me answer twice.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/scaffold/templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,QAAuB;IACrD,OAAO,KAAK,QAAQ,CAAC,IAAI;;;;OAIpB,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;;;;EAIpC,QAAQ,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;6BAsBO,QAAQ,CAAC,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+D7C,CAAC;AAEF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,SAAiB,EAAE,WAAmB,EAAE,QAAgB;IACrF,OAAO;;;;;;;;;;;;;;;;;;EAkBP,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAkDH,QAAQ;;;;;CAKjB,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,OAAO,KAAK,QAAQ;;;;;;;;;;;;;;4CAcsB,QAAQ;CACnD,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,OAAO,KAAK,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;CAyBtB,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,WAAmB,EACnB,SAAiB,EACjB,IAAY,EACZ,WAAoB,EACpB,cAAuB,KAAK,EAC5B,cAAuB,KAAK;IAE5B,IAAI,OAAO,GAAG,iBAAiB,WAAW;;;;OAIrC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCT,SAAS;;gCAEgB,IAAI,kFAAkF,IAAI;;;;;;;;;;;;;8EAa5C,IAAI;;;yFAGO,IAAI;;;;;;;uGAOU,IAAI;;;;;;;;;;;;;;;;;;;;;;;0CAuBjE,IAAI;oCACV,IAAI;;;;;;;;;;;;;yDAaiB,IAAI;;;;;;;;;;;;gCAY7B,IAAI;;;;;;;;;sFASkD,IAAI;4FACE,IAAI;;;;;;;mEAO7B,IAAI;8EACO,IAAI;;;mEAGf,IAAI;4EACK,IAAI;;;;;;;sHAOsC,IAAI;+WACqP,IAAI;;;;;uEAK5S,IAAI;;;;;uEAKJ,IAAI;;;;;;uFAMY,IAAI;;;;wEAInB,IAAI;;;;;;+IAMmE,IAAI;wKACqB,IAAI;;;;;iKAKX,IAAI;;;;sEAI/F,IAAI;;;;;;;;;;;6EAWG,IAAI;;2FAEU,IAAI;qFACV,IAAI
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/scaffold/templates.ts"],"names":[],"mappings":"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"}
|
package/dist/server/routes.js
CHANGED
|
@@ -3646,7 +3646,7 @@ export function createRoutes(ctx) {
|
|
|
3646
3646
|
}
|
|
3647
3647
|
const cfg = ctx.config
|
|
3648
3648
|
.cartographer?.conformanceAudit;
|
|
3649
|
-
if (cfg?.enabled
|
|
3649
|
+
if (!resolveDevAgentGate(cfg?.enabled, ctx.config)) {
|
|
3650
3650
|
res.status(503).json({ error: 'Conformance audit not enabled' });
|
|
3651
3651
|
return false;
|
|
3652
3652
|
}
|