instar 0.9.11 → 0.9.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +78 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +86 -7
- package/dist/commands/server.js.map +1 -1
- package/dist/core/CanonicalState.d.ts +132 -0
- package/dist/core/CanonicalState.d.ts.map +1 -0
- package/dist/core/CanonicalState.js +297 -0
- package/dist/core/CanonicalState.js.map +1 -0
- package/dist/core/CoherenceGate.d.ts +122 -0
- package/dist/core/CoherenceGate.d.ts.map +1 -0
- package/dist/core/CoherenceGate.js +347 -0
- package/dist/core/CoherenceGate.js.map +1 -0
- package/dist/core/ContextHierarchy.d.ts +100 -0
- package/dist/core/ContextHierarchy.d.ts.map +1 -0
- package/dist/core/ContextHierarchy.js +454 -0
- package/dist/core/ContextHierarchy.js.map +1 -0
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +140 -0
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/core/ProjectMapper.d.ts +97 -0
- package/dist/core/ProjectMapper.d.ts.map +1 -0
- package/dist/core/ProjectMapper.js +364 -0
- package/dist/core/ProjectMapper.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/messaging/TelegramAdapter.d.ts +5 -0
- package/dist/messaging/TelegramAdapter.d.ts.map +1 -1
- package/dist/messaging/TelegramAdapter.js +7 -0
- package/dist/messaging/TelegramAdapter.js.map +1 -1
- package/dist/monitoring/StallTriageNurse.d.ts.map +1 -1
- package/dist/monitoring/StallTriageNurse.js +77 -13
- package/dist/monitoring/StallTriageNurse.js.map +1 -1
- package/dist/scaffold/templates.d.ts.map +1 -1
- package/dist/scaffold/templates.js +10 -0
- package/dist/scaffold/templates.js.map +1 -1
- package/dist/scheduler/JobLoader.d.ts.map +1 -1
- package/dist/scheduler/JobLoader.js +1 -0
- package/dist/scheduler/JobLoader.js.map +1 -1
- package/dist/server/AgentServer.d.ts +4 -0
- package/dist/server/AgentServer.d.ts.map +1 -1
- package/dist/server/AgentServer.js +4 -0
- package/dist/server/AgentServer.js.map +1 -1
- package/dist/server/routes.d.ts +8 -0
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +228 -0
- package/dist/server/routes.js.map +1 -1
- package/package.json +1 -1
- package/upgrades/0.9.12.md +42 -0
- package/upgrades/0.9.13.md +55 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JobLoader.js","sourceRoot":"","sources":["../../src/scheduler/JobLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,MAAM,gBAAgB,GAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC9E,MAAM,YAAY,GAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAE9D,yEAAyE;AACzE,MAAM,sBAAsB,GAAwB,IAAI,GAAG,CAAC;IAC1D,cAAc;IACd,gBAAgB;IAChB,gBAAgB;IAChB,cAAc;
|
|
1
|
+
{"version":3,"file":"JobLoader.js","sourceRoot":"","sources":["../../src/scheduler/JobLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,10 @@ export declare class AgentServer {
|
|
|
58
58
|
triageNurse?: StallTriageNurse;
|
|
59
59
|
topicMemory?: TopicMemory;
|
|
60
60
|
feedbackAnomalyDetector?: FeedbackAnomalyDetector;
|
|
61
|
+
projectMapper?: import('../core/ProjectMapper.js').ProjectMapper;
|
|
62
|
+
coherenceGate?: import('../core/CoherenceGate.js').CoherenceGate;
|
|
63
|
+
contextHierarchy?: import('../core/ContextHierarchy.js').ContextHierarchy;
|
|
64
|
+
canonicalState?: import('../core/CanonicalState.js').CanonicalState;
|
|
61
65
|
coordinator?: MultiMachineCoordinator;
|
|
62
66
|
localSigningKeyPem?: string;
|
|
63
67
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentServer.d.ts","sourceRoot":"","sources":["../../src/server/AgentServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAgB,EAAE,KAAK,OAAO,EAA+B,MAAM,SAAS,CAAC;AAM7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAMxF,qBAAa,WAAW;IACtB,OAAO,CAAC,GAAG,CAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,SAAS,CAAO;IACxB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,KAAK,CAAe;gBAEhB,OAAO,EAAE;QACnB,MAAM,EAAE,YAAY,CAAC;QACrB,cAAc,EAAE,cAAc,CAAC;QAC/B,KAAK,EAAE,YAAY,CAAC;QACpB,SAAS,CAAC,EAAE,YAAY,CAAC;QACzB,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,aAAa,CAAC,EAAE,mBAAmB,CAAC;QACpC,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,UAAU,CAAC,EAAE,eAAe,CAAC;QAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,WAAW,CAAC,EAAE,gBAAgB,CAAC;QAC/B,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;QAClD,WAAW,CAAC,EAAE,uBAAuB,CAAC;QACtC,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B;
|
|
1
|
+
{"version":3,"file":"AgentServer.d.ts","sourceRoot":"","sources":["../../src/server/AgentServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAgB,EAAE,KAAK,OAAO,EAA+B,MAAM,SAAS,CAAC;AAM7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAMxF,qBAAa,WAAW;IACtB,OAAO,CAAC,GAAG,CAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,SAAS,CAAO;IACxB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,KAAK,CAAe;gBAEhB,OAAO,EAAE;QACnB,MAAM,EAAE,YAAY,CAAC;QACrB,cAAc,EAAE,cAAc,CAAC;QAC/B,KAAK,EAAE,YAAY,CAAC;QACpB,SAAS,CAAC,EAAE,YAAY,CAAC;QACzB,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,aAAa,CAAC,EAAE,mBAAmB,CAAC;QACpC,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,UAAU,CAAC,EAAE,eAAe,CAAC;QAC7B,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B,QAAQ,CAAC,EAAE,eAAe,CAAC;QAC3B,WAAW,CAAC,EAAE,gBAAgB,CAAC;QAC/B,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;QAClD,aAAa,CAAC,EAAE,OAAO,0BAA0B,EAAE,aAAa,CAAC;QACjE,aAAa,CAAC,EAAE,OAAO,0BAA0B,EAAE,aAAa,CAAC;QACjE,gBAAgB,CAAC,EAAE,OAAO,6BAA6B,EAAE,gBAAgB,CAAC;QAC1E,cAAc,CAAC,EAAE,OAAO,2BAA2B,EAAE,cAAc,CAAC;QACpE,WAAW,CAAC,EAAE,uBAAuB,CAAC;QACtC,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B;IAoID;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAW3B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4B5B;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAkC3B;;OAEG;IACH,MAAM,IAAI,OAAO;CAGlB"}
|
|
@@ -133,6 +133,10 @@ export class AgentServer {
|
|
|
133
133
|
triageNurse: options.triageNurse ?? null,
|
|
134
134
|
topicMemory: options.topicMemory ?? null,
|
|
135
135
|
feedbackAnomalyDetector: options.feedbackAnomalyDetector ?? null,
|
|
136
|
+
projectMapper: options.projectMapper ?? null,
|
|
137
|
+
coherenceGate: options.coherenceGate ?? null,
|
|
138
|
+
contextHierarchy: options.contextHierarchy ?? null,
|
|
139
|
+
canonicalState: options.canonicalState ?? null,
|
|
136
140
|
startTime: this.startTime,
|
|
137
141
|
});
|
|
138
142
|
this.app.use(routes);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentServer.js","sourceRoot":"","sources":["../../src/server/AgentServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,OAAsD,MAAM,SAAS,CAAC;AAE7E,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAsBzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,OAAO,WAAW;IACd,GAAG,CAAU;IACb,MAAM,GAAkB,IAAI,CAAC;IAC7B,SAAS,GAA4B,IAAI,CAAC;IAC1C,MAAM,CAAe;IACrB,SAAS,CAAO;IAChB,cAAc,CAAiB;IAC/B,KAAK,CAAe;IAE5B,YAAY,
|
|
1
|
+
{"version":3,"file":"AgentServer.js","sourceRoot":"","sources":["../../src/server/AgentServer.ts"],"names":[],"mappings":"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"}
|
package/dist/server/routes.d.ts
CHANGED
|
@@ -25,6 +25,10 @@ import type { SessionWatchdog } from '../monitoring/SessionWatchdog.js';
|
|
|
25
25
|
import type { StallTriageNurse } from '../monitoring/StallTriageNurse.js';
|
|
26
26
|
import type { TopicMemory } from '../memory/TopicMemory.js';
|
|
27
27
|
import type { FeedbackAnomalyDetector } from '../monitoring/FeedbackAnomalyDetector.js';
|
|
28
|
+
import type { ProjectMapper } from '../core/ProjectMapper.js';
|
|
29
|
+
import type { CoherenceGate } from '../core/CoherenceGate.js';
|
|
30
|
+
import type { ContextHierarchy } from '../core/ContextHierarchy.js';
|
|
31
|
+
import type { CanonicalState } from '../core/CanonicalState.js';
|
|
28
32
|
export interface RouteContext {
|
|
29
33
|
config: InstarConfig;
|
|
30
34
|
sessionManager: SessionManager;
|
|
@@ -46,6 +50,10 @@ export interface RouteContext {
|
|
|
46
50
|
triageNurse: StallTriageNurse | null;
|
|
47
51
|
topicMemory: TopicMemory | null;
|
|
48
52
|
feedbackAnomalyDetector: FeedbackAnomalyDetector | null;
|
|
53
|
+
projectMapper: ProjectMapper | null;
|
|
54
|
+
coherenceGate: CoherenceGate | null;
|
|
55
|
+
contextHierarchy: ContextHierarchy | null;
|
|
56
|
+
canonicalState: CanonicalState | null;
|
|
49
57
|
startTime: Date;
|
|
50
58
|
}
|
|
51
59
|
export declare function createRoutes(ctx: RouteContext): Router;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/server/routes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAMjC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/server/routes.ts"],"names":[],"mappings":"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"}
|
package/dist/server/routes.js
CHANGED
|
@@ -464,6 +464,44 @@ export function createRoutes(ctx) {
|
|
|
464
464
|
enabled: true,
|
|
465
465
|
hint: 'Use GET /skip-ledger to avoid re-processing items in jobs.',
|
|
466
466
|
},
|
|
467
|
+
projectMap: {
|
|
468
|
+
enabled: !!ctx.projectMapper,
|
|
469
|
+
hasSavedMap: ctx.projectMapper?.loadSavedMap() !== null,
|
|
470
|
+
endpoints: ctx.projectMapper ? [
|
|
471
|
+
'GET /project-map — full project structure (JSON, ?format=markdown, ?format=compact)',
|
|
472
|
+
'POST /project-map/refresh — regenerate the project map',
|
|
473
|
+
] : [],
|
|
474
|
+
},
|
|
475
|
+
contextHierarchy: {
|
|
476
|
+
enabled: !!ctx.contextHierarchy,
|
|
477
|
+
segments: ctx.contextHierarchy?.listSegments().map(s => ({ id: s.id, tier: s.tier, exists: s.exists })) ?? [],
|
|
478
|
+
endpoints: ctx.contextHierarchy ? [
|
|
479
|
+
'GET /context — list all context segments with status',
|
|
480
|
+
'GET /context/dispatch — dispatch table (when X, load Y)',
|
|
481
|
+
'GET /context/:segmentId — load a specific context segment',
|
|
482
|
+
] : [],
|
|
483
|
+
},
|
|
484
|
+
canonicalState: {
|
|
485
|
+
enabled: !!ctx.canonicalState,
|
|
486
|
+
endpoints: ctx.canonicalState ? [
|
|
487
|
+
'GET /state/quick-facts — fast answers to common questions',
|
|
488
|
+
'POST /state/quick-facts — add/update a quick fact',
|
|
489
|
+
'GET /state/anti-patterns — things NOT to do',
|
|
490
|
+
'POST /state/anti-patterns — record a new anti-pattern',
|
|
491
|
+
'GET /state/projects — all known projects',
|
|
492
|
+
'POST /state/projects — register a project',
|
|
493
|
+
'GET /state/summary — compact state summary',
|
|
494
|
+
] : [],
|
|
495
|
+
},
|
|
496
|
+
coherence: {
|
|
497
|
+
enabled: !!ctx.coherenceGate,
|
|
498
|
+
endpoints: ctx.coherenceGate ? [
|
|
499
|
+
'POST /coherence/check — pre-action coherence verification',
|
|
500
|
+
'POST /coherence/reflect — generate self-reflection prompt',
|
|
501
|
+
'GET /topic-bindings — list topic-project bindings',
|
|
502
|
+
'POST /topic-bindings — bind a topic to a project',
|
|
503
|
+
] : [],
|
|
504
|
+
},
|
|
467
505
|
featureGuide: {
|
|
468
506
|
description: 'Context-triggered capability suggestions. Use these proactively when context matches.',
|
|
469
507
|
triggers: [
|
|
@@ -478,10 +516,200 @@ export function createRoutes(ctx) {
|
|
|
478
516
|
{ context: 'User asks to remember something', action: 'Write to .instar/MEMORY.md. Explain it persists across sessions.' },
|
|
479
517
|
{ context: 'Something needs user attention later', action: 'Queue in attention system (POST /attention). More reliable than hoping they see a message.' },
|
|
480
518
|
{ context: 'Job processes a list of items', action: 'Use skip ledger (POST /skip-ledger/workload) to avoid re-processing on next run.' },
|
|
519
|
+
{ context: 'About to deploy, push, or modify files outside project', action: 'Run coherence check FIRST (POST /coherence/check). Verify you are in the right project for the current topic.' },
|
|
520
|
+
{ context: 'Working on a topic tied to a specific project', action: 'Check topic-project binding (GET /topic-bindings). If unbound, bind it (POST /topic-bindings) to prevent cross-project confusion.' },
|
|
521
|
+
{ context: 'Unsure what project this is or what files exist', action: 'Check project map (GET /project-map?format=compact) for spatial awareness — project type, key files, deployment targets.' },
|
|
481
522
|
],
|
|
482
523
|
},
|
|
483
524
|
});
|
|
484
525
|
});
|
|
526
|
+
// ── Project Map ───────────────────────────────────────────────────
|
|
527
|
+
//
|
|
528
|
+
// Auto-generated territory map of the project structure. Agents use this
|
|
529
|
+
// for spatial awareness — "where am I and what does this project look like?"
|
|
530
|
+
router.get('/project-map', (_req, res) => {
|
|
531
|
+
if (!ctx.projectMapper) {
|
|
532
|
+
res.status(501).json({ error: 'ProjectMapper not initialized' });
|
|
533
|
+
return;
|
|
534
|
+
}
|
|
535
|
+
// Try to load saved map first; generate if missing
|
|
536
|
+
let map = ctx.projectMapper.loadSavedMap();
|
|
537
|
+
if (!map) {
|
|
538
|
+
map = ctx.projectMapper.generateAndSave();
|
|
539
|
+
}
|
|
540
|
+
const format = _req.query.format;
|
|
541
|
+
if (format === 'markdown') {
|
|
542
|
+
res.type('text/markdown').send(ctx.projectMapper.toMarkdown(map));
|
|
543
|
+
}
|
|
544
|
+
else if (format === 'compact') {
|
|
545
|
+
res.type('text/plain').send(ctx.projectMapper.getCompactSummary(map));
|
|
546
|
+
}
|
|
547
|
+
else {
|
|
548
|
+
res.json(map);
|
|
549
|
+
}
|
|
550
|
+
});
|
|
551
|
+
router.post('/project-map/refresh', (_req, res) => {
|
|
552
|
+
if (!ctx.projectMapper) {
|
|
553
|
+
res.status(501).json({ error: 'ProjectMapper not initialized' });
|
|
554
|
+
return;
|
|
555
|
+
}
|
|
556
|
+
const map = ctx.projectMapper.generateAndSave();
|
|
557
|
+
res.json({ refreshed: true, projectName: map.projectName, totalFiles: map.totalFiles, directories: map.directories.length });
|
|
558
|
+
});
|
|
559
|
+
// ── Coherence Gate ────────────────────────────────────────────────
|
|
560
|
+
//
|
|
561
|
+
// Pre-action coherence verification. Agents call this before high-risk
|
|
562
|
+
// actions to verify they're in the right project for the right topic.
|
|
563
|
+
router.post('/coherence/check', (req, res) => {
|
|
564
|
+
if (!ctx.coherenceGate) {
|
|
565
|
+
res.status(501).json({ error: 'CoherenceGate not initialized' });
|
|
566
|
+
return;
|
|
567
|
+
}
|
|
568
|
+
const { action, context } = req.body;
|
|
569
|
+
if (!action || typeof action !== 'string') {
|
|
570
|
+
res.status(400).json({ error: 'Missing required field: action (e.g., "deploy", "git-push")' });
|
|
571
|
+
return;
|
|
572
|
+
}
|
|
573
|
+
const result = ctx.coherenceGate.check(action, context);
|
|
574
|
+
res.json(result);
|
|
575
|
+
});
|
|
576
|
+
router.post('/coherence/reflect', (req, res) => {
|
|
577
|
+
if (!ctx.coherenceGate) {
|
|
578
|
+
res.status(501).json({ error: 'CoherenceGate not initialized' });
|
|
579
|
+
return;
|
|
580
|
+
}
|
|
581
|
+
const { action, context } = req.body;
|
|
582
|
+
if (!action || typeof action !== 'string') {
|
|
583
|
+
res.status(400).json({ error: 'Missing required field: action' });
|
|
584
|
+
return;
|
|
585
|
+
}
|
|
586
|
+
const prompt = ctx.coherenceGate.generateReflectionPrompt(action, context);
|
|
587
|
+
res.type('text/plain').send(prompt);
|
|
588
|
+
});
|
|
589
|
+
// ── Topic-Project Bindings ────────────────────────────────────────
|
|
590
|
+
//
|
|
591
|
+
// Manage which Telegram topics are bound to which projects.
|
|
592
|
+
// Critical for multi-project agents — prevents cross-project confusion.
|
|
593
|
+
router.get('/topic-bindings', (_req, res) => {
|
|
594
|
+
if (!ctx.coherenceGate) {
|
|
595
|
+
res.status(501).json({ error: 'CoherenceGate not initialized' });
|
|
596
|
+
return;
|
|
597
|
+
}
|
|
598
|
+
const bindings = ctx.coherenceGate.loadTopicBindings();
|
|
599
|
+
res.json(bindings);
|
|
600
|
+
});
|
|
601
|
+
router.post('/topic-bindings', (req, res) => {
|
|
602
|
+
if (!ctx.coherenceGate) {
|
|
603
|
+
res.status(501).json({ error: 'CoherenceGate not initialized' });
|
|
604
|
+
return;
|
|
605
|
+
}
|
|
606
|
+
const { topicId, binding } = req.body;
|
|
607
|
+
if (!topicId || !binding?.projectName || !binding?.projectDir) {
|
|
608
|
+
res.status(400).json({ error: 'Required: topicId (number), binding.projectName, binding.projectDir' });
|
|
609
|
+
return;
|
|
610
|
+
}
|
|
611
|
+
ctx.coherenceGate.setTopicBinding(Number(topicId), binding);
|
|
612
|
+
res.json({ bound: true, topicId: Number(topicId), binding });
|
|
613
|
+
});
|
|
614
|
+
// ── Context Hierarchy ──────────────────────────────────────────────
|
|
615
|
+
//
|
|
616
|
+
// Tiered context loading for efficient agent awareness.
|
|
617
|
+
router.get('/context', (_req, res) => {
|
|
618
|
+
if (!ctx.contextHierarchy) {
|
|
619
|
+
res.status(501).json({ error: 'ContextHierarchy not initialized' });
|
|
620
|
+
return;
|
|
621
|
+
}
|
|
622
|
+
res.json(ctx.contextHierarchy.listSegments());
|
|
623
|
+
});
|
|
624
|
+
router.get('/context/dispatch', (_req, res) => {
|
|
625
|
+
if (!ctx.contextHierarchy) {
|
|
626
|
+
res.status(501).json({ error: 'ContextHierarchy not initialized' });
|
|
627
|
+
return;
|
|
628
|
+
}
|
|
629
|
+
res.json(ctx.contextHierarchy.getDispatchTable());
|
|
630
|
+
});
|
|
631
|
+
router.get('/context/:segmentId', (req, res) => {
|
|
632
|
+
if (!ctx.contextHierarchy) {
|
|
633
|
+
res.status(501).json({ error: 'ContextHierarchy not initialized' });
|
|
634
|
+
return;
|
|
635
|
+
}
|
|
636
|
+
const content = ctx.contextHierarchy.loadSegment(req.params.segmentId);
|
|
637
|
+
if (content === null) {
|
|
638
|
+
res.status(404).json({ error: `Segment not found: ${req.params.segmentId}` });
|
|
639
|
+
return;
|
|
640
|
+
}
|
|
641
|
+
res.type('text/markdown').send(content);
|
|
642
|
+
});
|
|
643
|
+
// ── Canonical State ───────────────────────────────────────────────
|
|
644
|
+
//
|
|
645
|
+
// Registry-first state management: quick facts, anti-patterns, project registry.
|
|
646
|
+
router.get('/state/quick-facts', (_req, res) => {
|
|
647
|
+
if (!ctx.canonicalState) {
|
|
648
|
+
res.status(501).json({ error: 'CanonicalState not initialized' });
|
|
649
|
+
return;
|
|
650
|
+
}
|
|
651
|
+
res.json(ctx.canonicalState.getQuickFacts());
|
|
652
|
+
});
|
|
653
|
+
router.post('/state/quick-facts', (req, res) => {
|
|
654
|
+
if (!ctx.canonicalState) {
|
|
655
|
+
res.status(501).json({ error: 'CanonicalState not initialized' });
|
|
656
|
+
return;
|
|
657
|
+
}
|
|
658
|
+
const { question, answer, source } = req.body;
|
|
659
|
+
if (!question || !answer) {
|
|
660
|
+
res.status(400).json({ error: 'Required: question, answer' });
|
|
661
|
+
return;
|
|
662
|
+
}
|
|
663
|
+
ctx.canonicalState.setFact(question, answer, source || 'api');
|
|
664
|
+
res.json({ saved: true, question, answer });
|
|
665
|
+
});
|
|
666
|
+
router.get('/state/anti-patterns', (_req, res) => {
|
|
667
|
+
if (!ctx.canonicalState) {
|
|
668
|
+
res.status(501).json({ error: 'CanonicalState not initialized' });
|
|
669
|
+
return;
|
|
670
|
+
}
|
|
671
|
+
res.json(ctx.canonicalState.getAntiPatterns());
|
|
672
|
+
});
|
|
673
|
+
router.post('/state/anti-patterns', (req, res) => {
|
|
674
|
+
if (!ctx.canonicalState) {
|
|
675
|
+
res.status(501).json({ error: 'CanonicalState not initialized' });
|
|
676
|
+
return;
|
|
677
|
+
}
|
|
678
|
+
const { pattern, consequence, alternative, incident } = req.body;
|
|
679
|
+
if (!pattern || !consequence || !alternative) {
|
|
680
|
+
res.status(400).json({ error: 'Required: pattern, consequence, alternative' });
|
|
681
|
+
return;
|
|
682
|
+
}
|
|
683
|
+
const entry = ctx.canonicalState.addAntiPattern({ pattern, consequence, alternative, incident });
|
|
684
|
+
res.json(entry);
|
|
685
|
+
});
|
|
686
|
+
router.get('/state/projects', (_req, res) => {
|
|
687
|
+
if (!ctx.canonicalState) {
|
|
688
|
+
res.status(501).json({ error: 'CanonicalState not initialized' });
|
|
689
|
+
return;
|
|
690
|
+
}
|
|
691
|
+
res.json(ctx.canonicalState.getProjects());
|
|
692
|
+
});
|
|
693
|
+
router.post('/state/projects', (req, res) => {
|
|
694
|
+
if (!ctx.canonicalState) {
|
|
695
|
+
res.status(501).json({ error: 'CanonicalState not initialized' });
|
|
696
|
+
return;
|
|
697
|
+
}
|
|
698
|
+
const { name, dir, gitRemote, deploymentTargets, type, topicIds, description } = req.body;
|
|
699
|
+
if (!name || !dir) {
|
|
700
|
+
res.status(400).json({ error: 'Required: name, dir' });
|
|
701
|
+
return;
|
|
702
|
+
}
|
|
703
|
+
ctx.canonicalState.setProject({ name, dir, gitRemote, deploymentTargets, type, topicIds, description });
|
|
704
|
+
res.json({ saved: true, name });
|
|
705
|
+
});
|
|
706
|
+
router.get('/state/summary', (_req, res) => {
|
|
707
|
+
if (!ctx.canonicalState) {
|
|
708
|
+
res.status(501).json({ error: 'CanonicalState not initialized' });
|
|
709
|
+
return;
|
|
710
|
+
}
|
|
711
|
+
res.type('text/plain').send(ctx.canonicalState.getCompactSummary());
|
|
712
|
+
});
|
|
485
713
|
// ── CI Health ─────────────────────────────────────────────────────
|
|
486
714
|
//
|
|
487
715
|
// On-demand CI status check. Detects GitHub repo from git remote and
|