@contorium/mcp 0.8.1
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 +97 -0
- package/bin/contorium-mcp.js +34 -0
- package/dist/autoContext.d.ts +2 -0
- package/dist/autoContext.js +2 -0
- package/dist/bootstrapCli.d.ts +2 -0
- package/dist/bootstrapCli.js +21 -0
- package/dist/conflicts.d.ts +19 -0
- package/dist/conflicts.js +49 -0
- package/dist/dashboardEnsure.d.ts +10 -0
- package/dist/dashboardEnsure.js +41 -0
- package/dist/intelligence.d.ts +16 -0
- package/dist/intelligence.js +38 -0
- package/dist/intentGraph.d.ts +20 -0
- package/dist/intentGraph.js +51 -0
- package/dist/mcpBootstrap.d.ts +8 -0
- package/dist/mcpBootstrap.js +81 -0
- package/dist/memoryStore.d.ts +18 -0
- package/dist/memoryStore.js +57 -0
- package/dist/paths.d.ts +12 -0
- package/dist/paths.js +66 -0
- package/dist/runtimeState.d.ts +14 -0
- package/dist/runtimeState.js +36 -0
- package/dist/server.d.ts +3 -0
- package/dist/server.js +567 -0
- package/dist/stateBuilder.d.ts +16 -0
- package/dist/stateBuilder.js +40 -0
- package/dist/understanding.d.ts +1 -0
- package/dist/understanding.js +1 -0
- package/dist/workspace.d.ts +12 -0
- package/dist/workspace.js +40 -0
- package/dist/workspaceConfig.d.ts +14 -0
- package/dist/workspaceConfig.js +80 -0
- package/node_modules/@contora/state-core/dist/adapterSync.d.ts +29 -0
- package/node_modules/@contora/state-core/dist/adapterSync.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/adapterSync.js +142 -0
- package/node_modules/@contora/state-core/dist/adapters.d.ts +20 -0
- package/node_modules/@contora/state-core/dist/adapters.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/adapters.js +24 -0
- package/node_modules/@contora/state-core/dist/bootstrap/bootstrapState.d.ts +6 -0
- package/node_modules/@contora/state-core/dist/bootstrap/bootstrapState.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/bootstrap/bootstrapState.js +116 -0
- package/node_modules/@contora/state-core/dist/bootstrapArtifacts.d.ts +18 -0
- package/node_modules/@contora/state-core/dist/bootstrapArtifacts.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/bootstrapArtifacts.js +43 -0
- package/node_modules/@contora/state-core/dist/bootstrapState.d.ts +6 -0
- package/node_modules/@contora/state-core/dist/bootstrapState.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/bootstrapState.js +60 -0
- package/node_modules/@contora/state-core/dist/dashboardActivity.d.ts +12 -0
- package/node_modules/@contora/state-core/dist/dashboardActivity.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/dashboardActivity.js +58 -0
- package/node_modules/@contora/state-core/dist/dualMode.d.ts +11 -0
- package/node_modules/@contora/state-core/dist/dualMode.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/dualMode.js +38 -0
- package/node_modules/@contora/state-core/dist/gitScan.d.ts +7 -0
- package/node_modules/@contora/state-core/dist/gitScan.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/gitScan.js +39 -0
- package/node_modules/@contora/state-core/dist/index.d.ts +44 -0
- package/node_modules/@contora/state-core/dist/index.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/index.js +141 -0
- package/node_modules/@contora/state-core/dist/minimalSnapshot.d.ts +4 -0
- package/node_modules/@contora/state-core/dist/minimalSnapshot.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/minimalSnapshot.js +60 -0
- package/node_modules/@contora/state-core/dist/scanner/gitScan.d.ts +7 -0
- package/node_modules/@contora/state-core/dist/scanner/gitScan.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/scanner/gitScan.js +42 -0
- package/node_modules/@contora/state-core/dist/scanner/workspaceScanner.d.ts +4 -0
- package/node_modules/@contora/state-core/dist/scanner/workspaceScanner.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/scanner/workspaceScanner.js +148 -0
- package/node_modules/@contora/state-core/dist/semiAutoHandoff.d.ts +46 -0
- package/node_modules/@contora/state-core/dist/semiAutoHandoff.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/semiAutoHandoff.js +227 -0
- package/node_modules/@contora/state-core/dist/sourceMetadata.d.ts +4 -0
- package/node_modules/@contora/state-core/dist/sourceMetadata.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/sourceMetadata.js +27 -0
- package/node_modules/@contora/state-core/dist/state-builder/buildFromScan.d.ts +5 -0
- package/node_modules/@contora/state-core/dist/state-builder/buildFromScan.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/state-builder/buildFromScan.js +33 -0
- package/node_modules/@contora/state-core/dist/state-builder/normalization.d.ts +5 -0
- package/node_modules/@contora/state-core/dist/state-builder/normalization.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/state-builder/normalization.js +107 -0
- package/node_modules/@contora/state-core/dist/state-builder/rebuildFromScan.d.ts +4 -0
- package/node_modules/@contora/state-core/dist/state-builder/rebuildFromScan.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/state-builder/rebuildFromScan.js +22 -0
- package/node_modules/@contora/state-core/dist/state-builder/snapshot.d.ts +5 -0
- package/node_modules/@contora/state-core/dist/state-builder/snapshot.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/state-builder/snapshot.js +53 -0
- package/node_modules/@contora/state-core/dist/state-builder/store.d.ts +7 -0
- package/node_modules/@contora/state-core/dist/state-builder/store.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/state-builder/store.js +99 -0
- package/node_modules/@contora/state-core/dist/state-builder/types.d.ts +18 -0
- package/node_modules/@contora/state-core/dist/state-builder/types.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/state-builder/types.js +20 -0
- package/node_modules/@contora/state-core/dist/types.d.ts +42 -0
- package/node_modules/@contora/state-core/dist/types.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/types.js +3 -0
- package/node_modules/@contora/state-core/dist/understanding/buildUnderstanding.d.ts +22 -0
- package/node_modules/@contora/state-core/dist/understanding/buildUnderstanding.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/buildUnderstanding.js +87 -0
- package/node_modules/@contora/state-core/dist/understanding/changeDetector.d.ts +7 -0
- package/node_modules/@contora/state-core/dist/understanding/changeDetector.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/changeDetector.js +68 -0
- package/node_modules/@contora/state-core/dist/understanding/chpHandoff.d.ts +49 -0
- package/node_modules/@contora/state-core/dist/understanding/chpHandoff.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/chpHandoff.js +214 -0
- package/node_modules/@contora/state-core/dist/understanding/extractor.d.ts +21 -0
- package/node_modules/@contora/state-core/dist/understanding/extractor.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/extractor.js +173 -0
- package/node_modules/@contora/state-core/dist/understanding/formatCanonicalExport.d.ts +30 -0
- package/node_modules/@contora/state-core/dist/understanding/formatCanonicalExport.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/formatCanonicalExport.js +363 -0
- package/node_modules/@contora/state-core/dist/understanding/formatHandoff.d.ts +20 -0
- package/node_modules/@contora/state-core/dist/understanding/formatHandoff.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/formatHandoff.js +57 -0
- package/node_modules/@contora/state-core/dist/understanding/graphBuilder.d.ts +9 -0
- package/node_modules/@contora/state-core/dist/understanding/graphBuilder.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/graphBuilder.js +107 -0
- package/node_modules/@contora/state-core/dist/understanding/handoffBuilder.d.ts +12 -0
- package/node_modules/@contora/state-core/dist/understanding/handoffBuilder.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/handoffBuilder.js +101 -0
- package/node_modules/@contora/state-core/dist/understanding/impactAnalyzer.d.ts +5 -0
- package/node_modules/@contora/state-core/dist/understanding/impactAnalyzer.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/impactAnalyzer.js +58 -0
- package/node_modules/@contora/state-core/dist/understanding/intentFusion.d.ts +9 -0
- package/node_modules/@contora/state-core/dist/understanding/intentFusion.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/intentFusion.js +54 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/closureConstants.d.ts +24 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/closureConstants.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/closureConstants.js +33 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/confidence.d.ts +20 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/confidence.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/confidence.js +53 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/gitFrequency.d.ts +5 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/gitFrequency.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/gitFrequency.js +19 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/hotspotBuilder.d.ts +13 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/hotspotBuilder.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/hotspotBuilder.js +101 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/intentFunctionMapper.d.ts +22 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/intentFunctionMapper.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/intentFunctionMapper.js +106 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/knowledgeGraphBuilder.d.ts +23 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/knowledgeGraphBuilder.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/knowledgeGraphBuilder.js +415 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/normalize.d.ts +11 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/normalize.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/normalize.js +136 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/rebuildTrigger.d.ts +13 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/rebuildTrigger.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/rebuildTrigger.js +34 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/snapshotBuilder.d.ts +17 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/snapshotBuilder.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/snapshotBuilder.js +73 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/store.d.ts +7 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/store.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/store.js +127 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/types.d.ts +116 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/types.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/knowledgeGraph/types.js +6 -0
- package/node_modules/@contora/state-core/dist/understanding/miniGraph.d.ts +4 -0
- package/node_modules/@contora/state-core/dist/understanding/miniGraph.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/miniGraph.js +18 -0
- package/node_modules/@contora/state-core/dist/understanding/store.d.ts +24 -0
- package/node_modules/@contora/state-core/dist/understanding/store.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/store.js +243 -0
- package/node_modules/@contora/state-core/dist/understanding/symbolValidator.d.ts +9 -0
- package/node_modules/@contora/state-core/dist/understanding/symbolValidator.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/symbolValidator.js +51 -0
- package/node_modules/@contora/state-core/dist/understanding/timelineTracker.d.ts +3 -0
- package/node_modules/@contora/state-core/dist/understanding/timelineTracker.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/timelineTracker.js +129 -0
- package/node_modules/@contora/state-core/dist/understanding/treeSitterParser.d.ts +24 -0
- package/node_modules/@contora/state-core/dist/understanding/treeSitterParser.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/treeSitterParser.js +56 -0
- package/node_modules/@contora/state-core/dist/understanding/types.d.ts +136 -0
- package/node_modules/@contora/state-core/dist/understanding/types.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/types.js +5 -0
- package/node_modules/@contora/state-core/dist/understanding/understandingGraphBuilder.d.ts +23 -0
- package/node_modules/@contora/state-core/dist/understanding/understandingGraphBuilder.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/understanding/understandingGraphBuilder.js +67 -0
- package/node_modules/@contora/state-core/dist/version.d.ts +3 -0
- package/node_modules/@contora/state-core/dist/version.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/version.js +21 -0
- package/node_modules/@contora/state-core/dist/workspaceScanner.d.ts +4 -0
- package/node_modules/@contora/state-core/dist/workspaceScanner.d.ts.map +1 -0
- package/node_modules/@contora/state-core/dist/workspaceScanner.js +112 -0
- package/node_modules/@contora/state-core/package.json +49 -0
- package/package.json +61 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboardActivity.d.ts","sourceRoot":"","sources":["../src/dashboardActivity.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,MAAM,qBAAqB,GAC7B,aAAa,GACb,iBAAiB,GACjB,YAAY,GACZ,MAAM,GACN,OAAO,CAAC;AAEZ,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD,iGAAiG;AACjG,wBAAsB,qBAAqB,CACzC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,GACtC,OAAO,CAAC,IAAI,CAAC,CAKf;AAED,wBAAsB,qBAAqB,CACzC,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAO5C"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.bumpWorkspaceActivity = bumpWorkspaceActivity;
|
|
37
|
+
exports.readWorkspaceActivity = readWorkspaceActivity;
|
|
38
|
+
const fs = __importStar(require("node:fs/promises"));
|
|
39
|
+
const path = __importStar(require("node:path"));
|
|
40
|
+
function activityPath(workspaceRoot) {
|
|
41
|
+
return path.join(workspaceRoot, '.contora', 'dashboard.activity.json');
|
|
42
|
+
}
|
|
43
|
+
/** Record workspace activity — universal trigger for dashboard auto-attach (IDE / MCP / CLI). */
|
|
44
|
+
async function bumpWorkspaceActivity(workspaceRoot, bump) {
|
|
45
|
+
const payload = { ...bump, at: Date.now() };
|
|
46
|
+
const target = activityPath(path.resolve(workspaceRoot));
|
|
47
|
+
await fs.mkdir(path.dirname(target), { recursive: true });
|
|
48
|
+
await fs.writeFile(target, JSON.stringify(payload, null, 2), 'utf8');
|
|
49
|
+
}
|
|
50
|
+
async function readWorkspaceActivity(workspaceRoot) {
|
|
51
|
+
try {
|
|
52
|
+
const raw = await fs.readFile(activityPath(path.resolve(workspaceRoot)), 'utf8');
|
|
53
|
+
return JSON.parse(raw);
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { BootstrapStateJson, DualModeInput, StateEngineMode, WorkspaceScanFacts } from './types.js';
|
|
2
|
+
/** Resolve engine mode from available inputs. */
|
|
3
|
+
export declare function resolveStateEngineMode(eventCount: number, hasExistingState: boolean): StateEngineMode;
|
|
4
|
+
/** Merge scan facts into state without overwriting user task/notes. */
|
|
5
|
+
export declare function mergeStateWithScan(state: BootstrapStateJson, scan: WorkspaceScanFacts): BootstrapStateJson;
|
|
6
|
+
export declare function buildDualModeInput(args: {
|
|
7
|
+
state: BootstrapStateJson;
|
|
8
|
+
eventCount: number;
|
|
9
|
+
scan: WorkspaceScanFacts;
|
|
10
|
+
}): DualModeInput;
|
|
11
|
+
//# sourceMappingURL=dualMode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dualMode.d.ts","sourceRoot":"","sources":["../src/dualMode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEzG,iDAAiD;AACjD,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,OAAO,GACxB,eAAe,CAQjB;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,kBAAkB,EACzB,IAAI,EAAE,kBAAkB,GACvB,kBAAkB,CAcpB;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,kBAAkB,CAAC;CAC1B,GAAG,aAAa,CAQhB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveStateEngineMode = resolveStateEngineMode;
|
|
4
|
+
exports.mergeStateWithScan = mergeStateWithScan;
|
|
5
|
+
exports.buildDualModeInput = buildDualModeInput;
|
|
6
|
+
/** Resolve engine mode from available inputs. */
|
|
7
|
+
function resolveStateEngineMode(eventCount, hasExistingState) {
|
|
8
|
+
if (eventCount > 0 && hasExistingState) {
|
|
9
|
+
return 'merged';
|
|
10
|
+
}
|
|
11
|
+
if (eventCount > 0) {
|
|
12
|
+
return 'event-driven';
|
|
13
|
+
}
|
|
14
|
+
return 'scan-driven';
|
|
15
|
+
}
|
|
16
|
+
/** Merge scan facts into state without overwriting user task/notes. */
|
|
17
|
+
function mergeStateWithScan(state, scan) {
|
|
18
|
+
const recent = state.recentFiles.length > 0
|
|
19
|
+
? state.recentFiles
|
|
20
|
+
: scan.recentFiles.slice(0, 20);
|
|
21
|
+
const gitStaged = state.gitStaged.length > 0 ? state.gitStaged : scan.gitStaged;
|
|
22
|
+
const gitWorking = state.gitWorking.length > 0 ? state.gitWorking : scan.gitWorking;
|
|
23
|
+
return {
|
|
24
|
+
...state,
|
|
25
|
+
recentFiles: recent,
|
|
26
|
+
gitStaged,
|
|
27
|
+
gitWorking,
|
|
28
|
+
lastUpdated: Math.max(state.lastUpdated, scan.scannedAt),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
function buildDualModeInput(args) {
|
|
32
|
+
const hasState = args.state.lastUpdated > 0 || args.state.currentTask.length > 0;
|
|
33
|
+
const mode = resolveStateEngineMode(args.eventCount, hasState);
|
|
34
|
+
const merged = mode === 'merged' || mode === 'scan-driven'
|
|
35
|
+
? mergeStateWithScan(args.state, args.scan)
|
|
36
|
+
: args.state;
|
|
37
|
+
return { mode, state: merged, eventCount: args.eventCount, scan: args.scan };
|
|
38
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitScan.d.ts","sourceRoot":"","sources":["../src/gitScan.ts"],"names":[],"mappings":"AASA,4DAA4D;AAC5D,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;IACrE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC,CAkCD"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { execFile } from 'node:child_process';
|
|
2
|
+
import { promisify } from 'node:util';
|
|
3
|
+
const execFileAsync = promisify(execFile);
|
|
4
|
+
function norm(p) {
|
|
5
|
+
return p.replace(/\\/g, '/');
|
|
6
|
+
}
|
|
7
|
+
/** Git scan without simple-git — for MCP/CLI standalone. */
|
|
8
|
+
export async function scanGitPorcelain(workspaceRoot) {
|
|
9
|
+
try {
|
|
10
|
+
const { stdout } = await execFileAsync('git', ['-C', workspaceRoot, 'status', '--porcelain'], { timeout: 15_000, maxBuffer: 2 * 1024 * 1024 });
|
|
11
|
+
const staged = new Set();
|
|
12
|
+
const working = new Set();
|
|
13
|
+
for (const line of stdout.split('\n')) {
|
|
14
|
+
if (line.length < 4) {
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
const xy = line.slice(0, 2);
|
|
18
|
+
const file = norm(line.slice(3).trim());
|
|
19
|
+
if (!file) {
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
const index = xy[0];
|
|
23
|
+
const work = xy[1];
|
|
24
|
+
if (index !== ' ' && index !== '?') {
|
|
25
|
+
staged.add(file);
|
|
26
|
+
}
|
|
27
|
+
if (work !== ' ' && work !== '?') {
|
|
28
|
+
working.add(file);
|
|
29
|
+
}
|
|
30
|
+
if (xy === '??') {
|
|
31
|
+
working.add(file);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return { staged: [...staged], working: [...working], isRepo: true };
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
return { staged: [], working: [], isRepo: false };
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export type { AdapterKind, BootstrapStateJson, DualModeInput, StateEngineMode, StateSourceMetadata, WorkspaceScanFacts, WriteStateOptions, } from './types.js';
|
|
2
|
+
export { scanGitPorcelain } from './scanner/gitScan.js';
|
|
3
|
+
export { scanWorkspace } from './scanner/workspaceScanner.js';
|
|
4
|
+
export { buildDualModeInput, mergeStateWithScan, resolveStateEngineMode, } from './dualMode.js';
|
|
5
|
+
export { bootstrapStateFromScan, readStateJson, stateJsonExists, writeStateJson, } from './bootstrap/bootstrapState.js';
|
|
6
|
+
export { attachStateSource, parseStateSource } from './sourceMetadata.js';
|
|
7
|
+
export { bumpWorkspaceActivity, readWorkspaceActivity, type WorkspaceActivityBump, type WorkspaceActivityKind, } from './dashboardActivity.js';
|
|
8
|
+
export { PROJECT_BUILT_STATE_VERSION, emptyProjectBuiltState, type ProjectBuiltState, } from './state-builder/types.js';
|
|
9
|
+
export { normalizeProjectBuiltState, filterWeakInferenceLines, } from './state-builder/normalization.js';
|
|
10
|
+
export { formatProjectSnapshotMarkdown, projectSnapshotBulletLines, } from './state-builder/snapshot.js';
|
|
11
|
+
export { buildProjectStateFromScan } from './state-builder/buildFromScan.js';
|
|
12
|
+
export { builderDir, parseProjectBuiltState, readProjectBuiltState, readProjectSnapshotMarkdown, writeProjectBuiltState, } from './state-builder/store.js';
|
|
13
|
+
export { rebuildArtifactsFromScan } from './state-builder/rebuildFromScan.js';
|
|
14
|
+
export { syncWorkspaceState, readWorkspaceStatus, type AdapterSyncResult, } from './adapterSync.js';
|
|
15
|
+
/** @deprecated use formatProjectSnapshotMarkdown + buildProjectStateFromScan */
|
|
16
|
+
export { formatProjectSnapshotMarkdown as formatBootstrapSnapshotMarkdown } from './state-builder/snapshot.js';
|
|
17
|
+
/** @deprecated use rebuildArtifactsFromScan */
|
|
18
|
+
export { rebuildArtifactsFromScan as writeBootstrapArtifacts } from './state-builder/rebuildFromScan.js';
|
|
19
|
+
/** @deprecated use buildProjectStateFromScan */
|
|
20
|
+
export { buildProjectStateFromScan as buildBootstrapProjectState } from './state-builder/buildFromScan.js';
|
|
21
|
+
export { CliAdapter, IdeAdapter, McpAdapter, type ContoriumAdapter, } from './adapters.js';
|
|
22
|
+
export type { ChangeArtifact, GraphEdge, GraphNode, HandoffArtifact, HandoffNextAction, KeyChange, ImpactArtifact, IntentArtifact, ProjectGraph, ProjectTimeline, RiskLevel, TimelineEntry, } from './understanding/types.js';
|
|
23
|
+
export { UNDERSTANDING_VERSION } from './understanding/types.js';
|
|
24
|
+
export { buildAndWriteUnderstandingArtifacts, buildUnderstandingArtifacts, type UnderstandingBuildInput, type UnderstandingBuildResult, } from './understanding/buildUnderstanding.js';
|
|
25
|
+
export { readChangeArtifact, readHandoffArtifact, readImpactArtifact, readIntentArtifact, readProjectGraph, readProjectTimeline, readUnderstandingGraph, normalizeHandoff, writeUnderstandingArtifacts, deleteUnderstandingArtifacts, } from './understanding/store.js';
|
|
26
|
+
export { formatHandoffMarkdown, formatNextActionBullet, buildUnderstandingExportJson, } from './understanding/formatHandoff.js';
|
|
27
|
+
export { CHP_VERSION, buildChpHandoffState, buildChpHandoffStateSync, formatChpCompact, formatChpMarkdown, getProjectHandoff, type ChpAgentContext, type ChpHandoffFormat, type ChpHandoffState, type ChpRecentChange, type BuildChpHandoffInput, } from './understanding/chpHandoff.js';
|
|
28
|
+
export { buildUnderstandingGraph, type UnderstandingGraph, } from './understanding/understandingGraphBuilder.js';
|
|
29
|
+
export { formatUnderstandingMiniGraph } from './understanding/miniGraph.js';
|
|
30
|
+
export { readProjectKnowledgeGraph, readKnowledgeSnapshot, writeProjectKnowledgeGraph, deleteProjectKnowledgeGraph, } from './understanding/knowledgeGraph/store.js';
|
|
31
|
+
export { buildProjectKnowledgeGraph, type KnowledgeGraphBuildInput, } from './understanding/knowledgeGraph/knowledgeGraphBuilder.js';
|
|
32
|
+
export { normalizeKnowledgeGraph, buildGraphMetadata } from './understanding/knowledgeGraph/normalize.js';
|
|
33
|
+
export { buildHotspots } from './understanding/knowledgeGraph/hotspotBuilder.js';
|
|
34
|
+
export { buildKnowledgeSnapshot, filterMappingsByConfidence, } from './understanding/knowledgeGraph/snapshotBuilder.js';
|
|
35
|
+
export { GRAPH_CANONICAL_MIN_CONFIDENCE, CLOSURE_VERSION, SNAPSHOT_TOP_INTENTS, SNAPSHOT_TOP_HOTSPOTS, SNAPSHOT_TOP_FUNCTIONS, } from './understanding/knowledgeGraph/closureConstants.js';
|
|
36
|
+
export { computeUnifiedConfidence, clampConfidence, isCanonicalConfidence, splitMappingsByCanonicalThreshold, confidenceBandLabel, } from './understanding/knowledgeGraph/confidence.js';
|
|
37
|
+
export { resolveKnowledgeRebuildTrigger, shouldRebuildKnowledgeGraph, type KnowledgeRebuildTrigger, } from './understanding/knowledgeGraph/rebuildTrigger.js';
|
|
38
|
+
export type { ProjectKnowledgeGraph, GraphMetadata, KnowledgeNode, KnowledgeEdge, KnowledgeGraphTreeNode, IntentFunctionMapping, ReasonTraceItem, HotspotNode, HotspotLifecycle, KnowledgeSnapshot, } from './understanding/knowledgeGraph/types.js';
|
|
39
|
+
export { parseFileWithAdapter, IncrementalParseCache, type ParseBackend, type ParseFileOptions, } from './understanding/treeSitterParser.js';
|
|
40
|
+
export { extractFromSource, isCodeFile } from './understanding/extractor.js';
|
|
41
|
+
export { formatCanonicalAiMarkdown, formatAiHandoffExecutionBlock, formatNextActionPlain, normalizeGraphRef, type CanonicalAiExportInput, } from './understanding/formatCanonicalExport.js';
|
|
42
|
+
export { checkActiveRuntime, confirmHandoffInjection, prepareHandoffInjection, readConfirmedHandoffContext, readHandoffInjectionState, skipHandoffInjection, syncInjectionWithRuntime, buildInjectionPromptMessage, type HandoffInjectionState, type HandoffInjectionStatus, type PrepareHandoffOptions, } from './semiAutoHandoff.js';
|
|
43
|
+
export { getContoriumPackageVersion } from './version.js';
|
|
44
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildUnderstandingExportJson = exports.formatNextActionBullet = exports.formatHandoffMarkdown = exports.deleteUnderstandingArtifacts = exports.writeUnderstandingArtifacts = exports.normalizeHandoff = exports.readUnderstandingGraph = exports.readProjectTimeline = exports.readProjectGraph = exports.readIntentArtifact = exports.readImpactArtifact = exports.readHandoffArtifact = exports.readChangeArtifact = exports.buildUnderstandingArtifacts = exports.buildAndWriteUnderstandingArtifacts = exports.UNDERSTANDING_VERSION = exports.McpAdapter = exports.IdeAdapter = exports.CliAdapter = exports.buildBootstrapProjectState = exports.writeBootstrapArtifacts = exports.formatBootstrapSnapshotMarkdown = exports.readWorkspaceStatus = exports.syncWorkspaceState = exports.rebuildArtifactsFromScan = exports.writeProjectBuiltState = exports.readProjectSnapshotMarkdown = exports.readProjectBuiltState = exports.parseProjectBuiltState = exports.builderDir = exports.buildProjectStateFromScan = exports.projectSnapshotBulletLines = exports.formatProjectSnapshotMarkdown = exports.filterWeakInferenceLines = exports.normalizeProjectBuiltState = exports.emptyProjectBuiltState = exports.PROJECT_BUILT_STATE_VERSION = exports.readWorkspaceActivity = exports.bumpWorkspaceActivity = exports.parseStateSource = exports.attachStateSource = exports.writeStateJson = exports.stateJsonExists = exports.readStateJson = exports.bootstrapStateFromScan = exports.resolveStateEngineMode = exports.mergeStateWithScan = exports.buildDualModeInput = exports.scanWorkspace = exports.scanGitPorcelain = void 0;
|
|
4
|
+
exports.getContoriumPackageVersion = exports.buildInjectionPromptMessage = exports.syncInjectionWithRuntime = exports.skipHandoffInjection = exports.readHandoffInjectionState = exports.readConfirmedHandoffContext = exports.prepareHandoffInjection = exports.confirmHandoffInjection = exports.checkActiveRuntime = exports.normalizeGraphRef = exports.formatNextActionPlain = exports.formatAiHandoffExecutionBlock = exports.formatCanonicalAiMarkdown = exports.isCodeFile = exports.extractFromSource = exports.IncrementalParseCache = exports.parseFileWithAdapter = exports.shouldRebuildKnowledgeGraph = exports.resolveKnowledgeRebuildTrigger = exports.confidenceBandLabel = exports.splitMappingsByCanonicalThreshold = exports.isCanonicalConfidence = exports.clampConfidence = exports.computeUnifiedConfidence = exports.SNAPSHOT_TOP_FUNCTIONS = exports.SNAPSHOT_TOP_HOTSPOTS = exports.SNAPSHOT_TOP_INTENTS = exports.CLOSURE_VERSION = exports.GRAPH_CANONICAL_MIN_CONFIDENCE = exports.filterMappingsByConfidence = exports.buildKnowledgeSnapshot = exports.buildHotspots = exports.buildGraphMetadata = exports.normalizeKnowledgeGraph = exports.buildProjectKnowledgeGraph = exports.deleteProjectKnowledgeGraph = exports.writeProjectKnowledgeGraph = exports.readKnowledgeSnapshot = exports.readProjectKnowledgeGraph = exports.formatUnderstandingMiniGraph = exports.buildUnderstandingGraph = exports.getProjectHandoff = exports.formatChpMarkdown = exports.formatChpCompact = exports.buildChpHandoffStateSync = exports.buildChpHandoffState = exports.CHP_VERSION = void 0;
|
|
5
|
+
var gitScan_js_1 = require("./scanner/gitScan.js");
|
|
6
|
+
Object.defineProperty(exports, "scanGitPorcelain", { enumerable: true, get: function () { return gitScan_js_1.scanGitPorcelain; } });
|
|
7
|
+
var workspaceScanner_js_1 = require("./scanner/workspaceScanner.js");
|
|
8
|
+
Object.defineProperty(exports, "scanWorkspace", { enumerable: true, get: function () { return workspaceScanner_js_1.scanWorkspace; } });
|
|
9
|
+
var dualMode_js_1 = require("./dualMode.js");
|
|
10
|
+
Object.defineProperty(exports, "buildDualModeInput", { enumerable: true, get: function () { return dualMode_js_1.buildDualModeInput; } });
|
|
11
|
+
Object.defineProperty(exports, "mergeStateWithScan", { enumerable: true, get: function () { return dualMode_js_1.mergeStateWithScan; } });
|
|
12
|
+
Object.defineProperty(exports, "resolveStateEngineMode", { enumerable: true, get: function () { return dualMode_js_1.resolveStateEngineMode; } });
|
|
13
|
+
var bootstrapState_js_1 = require("./bootstrap/bootstrapState.js");
|
|
14
|
+
Object.defineProperty(exports, "bootstrapStateFromScan", { enumerable: true, get: function () { return bootstrapState_js_1.bootstrapStateFromScan; } });
|
|
15
|
+
Object.defineProperty(exports, "readStateJson", { enumerable: true, get: function () { return bootstrapState_js_1.readStateJson; } });
|
|
16
|
+
Object.defineProperty(exports, "stateJsonExists", { enumerable: true, get: function () { return bootstrapState_js_1.stateJsonExists; } });
|
|
17
|
+
Object.defineProperty(exports, "writeStateJson", { enumerable: true, get: function () { return bootstrapState_js_1.writeStateJson; } });
|
|
18
|
+
var sourceMetadata_js_1 = require("./sourceMetadata.js");
|
|
19
|
+
Object.defineProperty(exports, "attachStateSource", { enumerable: true, get: function () { return sourceMetadata_js_1.attachStateSource; } });
|
|
20
|
+
Object.defineProperty(exports, "parseStateSource", { enumerable: true, get: function () { return sourceMetadata_js_1.parseStateSource; } });
|
|
21
|
+
var dashboardActivity_js_1 = require("./dashboardActivity.js");
|
|
22
|
+
Object.defineProperty(exports, "bumpWorkspaceActivity", { enumerable: true, get: function () { return dashboardActivity_js_1.bumpWorkspaceActivity; } });
|
|
23
|
+
Object.defineProperty(exports, "readWorkspaceActivity", { enumerable: true, get: function () { return dashboardActivity_js_1.readWorkspaceActivity; } });
|
|
24
|
+
var types_js_1 = require("./state-builder/types.js");
|
|
25
|
+
Object.defineProperty(exports, "PROJECT_BUILT_STATE_VERSION", { enumerable: true, get: function () { return types_js_1.PROJECT_BUILT_STATE_VERSION; } });
|
|
26
|
+
Object.defineProperty(exports, "emptyProjectBuiltState", { enumerable: true, get: function () { return types_js_1.emptyProjectBuiltState; } });
|
|
27
|
+
var normalization_js_1 = require("./state-builder/normalization.js");
|
|
28
|
+
Object.defineProperty(exports, "normalizeProjectBuiltState", { enumerable: true, get: function () { return normalization_js_1.normalizeProjectBuiltState; } });
|
|
29
|
+
Object.defineProperty(exports, "filterWeakInferenceLines", { enumerable: true, get: function () { return normalization_js_1.filterWeakInferenceLines; } });
|
|
30
|
+
var snapshot_js_1 = require("./state-builder/snapshot.js");
|
|
31
|
+
Object.defineProperty(exports, "formatProjectSnapshotMarkdown", { enumerable: true, get: function () { return snapshot_js_1.formatProjectSnapshotMarkdown; } });
|
|
32
|
+
Object.defineProperty(exports, "projectSnapshotBulletLines", { enumerable: true, get: function () { return snapshot_js_1.projectSnapshotBulletLines; } });
|
|
33
|
+
var buildFromScan_js_1 = require("./state-builder/buildFromScan.js");
|
|
34
|
+
Object.defineProperty(exports, "buildProjectStateFromScan", { enumerable: true, get: function () { return buildFromScan_js_1.buildProjectStateFromScan; } });
|
|
35
|
+
var store_js_1 = require("./state-builder/store.js");
|
|
36
|
+
Object.defineProperty(exports, "builderDir", { enumerable: true, get: function () { return store_js_1.builderDir; } });
|
|
37
|
+
Object.defineProperty(exports, "parseProjectBuiltState", { enumerable: true, get: function () { return store_js_1.parseProjectBuiltState; } });
|
|
38
|
+
Object.defineProperty(exports, "readProjectBuiltState", { enumerable: true, get: function () { return store_js_1.readProjectBuiltState; } });
|
|
39
|
+
Object.defineProperty(exports, "readProjectSnapshotMarkdown", { enumerable: true, get: function () { return store_js_1.readProjectSnapshotMarkdown; } });
|
|
40
|
+
Object.defineProperty(exports, "writeProjectBuiltState", { enumerable: true, get: function () { return store_js_1.writeProjectBuiltState; } });
|
|
41
|
+
var rebuildFromScan_js_1 = require("./state-builder/rebuildFromScan.js");
|
|
42
|
+
Object.defineProperty(exports, "rebuildArtifactsFromScan", { enumerable: true, get: function () { return rebuildFromScan_js_1.rebuildArtifactsFromScan; } });
|
|
43
|
+
var adapterSync_js_1 = require("./adapterSync.js");
|
|
44
|
+
Object.defineProperty(exports, "syncWorkspaceState", { enumerable: true, get: function () { return adapterSync_js_1.syncWorkspaceState; } });
|
|
45
|
+
Object.defineProperty(exports, "readWorkspaceStatus", { enumerable: true, get: function () { return adapterSync_js_1.readWorkspaceStatus; } });
|
|
46
|
+
/** @deprecated use formatProjectSnapshotMarkdown + buildProjectStateFromScan */
|
|
47
|
+
var snapshot_js_2 = require("./state-builder/snapshot.js");
|
|
48
|
+
Object.defineProperty(exports, "formatBootstrapSnapshotMarkdown", { enumerable: true, get: function () { return snapshot_js_2.formatProjectSnapshotMarkdown; } });
|
|
49
|
+
/** @deprecated use rebuildArtifactsFromScan */
|
|
50
|
+
var rebuildFromScan_js_2 = require("./state-builder/rebuildFromScan.js");
|
|
51
|
+
Object.defineProperty(exports, "writeBootstrapArtifacts", { enumerable: true, get: function () { return rebuildFromScan_js_2.rebuildArtifactsFromScan; } });
|
|
52
|
+
/** @deprecated use buildProjectStateFromScan */
|
|
53
|
+
var buildFromScan_js_2 = require("./state-builder/buildFromScan.js");
|
|
54
|
+
Object.defineProperty(exports, "buildBootstrapProjectState", { enumerable: true, get: function () { return buildFromScan_js_2.buildProjectStateFromScan; } });
|
|
55
|
+
var adapters_js_1 = require("./adapters.js");
|
|
56
|
+
Object.defineProperty(exports, "CliAdapter", { enumerable: true, get: function () { return adapters_js_1.CliAdapter; } });
|
|
57
|
+
Object.defineProperty(exports, "IdeAdapter", { enumerable: true, get: function () { return adapters_js_1.IdeAdapter; } });
|
|
58
|
+
Object.defineProperty(exports, "McpAdapter", { enumerable: true, get: function () { return adapters_js_1.McpAdapter; } });
|
|
59
|
+
var types_js_2 = require("./understanding/types.js");
|
|
60
|
+
Object.defineProperty(exports, "UNDERSTANDING_VERSION", { enumerable: true, get: function () { return types_js_2.UNDERSTANDING_VERSION; } });
|
|
61
|
+
var buildUnderstanding_js_1 = require("./understanding/buildUnderstanding.js");
|
|
62
|
+
Object.defineProperty(exports, "buildAndWriteUnderstandingArtifacts", { enumerable: true, get: function () { return buildUnderstanding_js_1.buildAndWriteUnderstandingArtifacts; } });
|
|
63
|
+
Object.defineProperty(exports, "buildUnderstandingArtifacts", { enumerable: true, get: function () { return buildUnderstanding_js_1.buildUnderstandingArtifacts; } });
|
|
64
|
+
var store_js_2 = require("./understanding/store.js");
|
|
65
|
+
Object.defineProperty(exports, "readChangeArtifact", { enumerable: true, get: function () { return store_js_2.readChangeArtifact; } });
|
|
66
|
+
Object.defineProperty(exports, "readHandoffArtifact", { enumerable: true, get: function () { return store_js_2.readHandoffArtifact; } });
|
|
67
|
+
Object.defineProperty(exports, "readImpactArtifact", { enumerable: true, get: function () { return store_js_2.readImpactArtifact; } });
|
|
68
|
+
Object.defineProperty(exports, "readIntentArtifact", { enumerable: true, get: function () { return store_js_2.readIntentArtifact; } });
|
|
69
|
+
Object.defineProperty(exports, "readProjectGraph", { enumerable: true, get: function () { return store_js_2.readProjectGraph; } });
|
|
70
|
+
Object.defineProperty(exports, "readProjectTimeline", { enumerable: true, get: function () { return store_js_2.readProjectTimeline; } });
|
|
71
|
+
Object.defineProperty(exports, "readUnderstandingGraph", { enumerable: true, get: function () { return store_js_2.readUnderstandingGraph; } });
|
|
72
|
+
Object.defineProperty(exports, "normalizeHandoff", { enumerable: true, get: function () { return store_js_2.normalizeHandoff; } });
|
|
73
|
+
Object.defineProperty(exports, "writeUnderstandingArtifacts", { enumerable: true, get: function () { return store_js_2.writeUnderstandingArtifacts; } });
|
|
74
|
+
Object.defineProperty(exports, "deleteUnderstandingArtifacts", { enumerable: true, get: function () { return store_js_2.deleteUnderstandingArtifacts; } });
|
|
75
|
+
var formatHandoff_js_1 = require("./understanding/formatHandoff.js");
|
|
76
|
+
Object.defineProperty(exports, "formatHandoffMarkdown", { enumerable: true, get: function () { return formatHandoff_js_1.formatHandoffMarkdown; } });
|
|
77
|
+
Object.defineProperty(exports, "formatNextActionBullet", { enumerable: true, get: function () { return formatHandoff_js_1.formatNextActionBullet; } });
|
|
78
|
+
Object.defineProperty(exports, "buildUnderstandingExportJson", { enumerable: true, get: function () { return formatHandoff_js_1.buildUnderstandingExportJson; } });
|
|
79
|
+
var chpHandoff_js_1 = require("./understanding/chpHandoff.js");
|
|
80
|
+
Object.defineProperty(exports, "CHP_VERSION", { enumerable: true, get: function () { return chpHandoff_js_1.CHP_VERSION; } });
|
|
81
|
+
Object.defineProperty(exports, "buildChpHandoffState", { enumerable: true, get: function () { return chpHandoff_js_1.buildChpHandoffState; } });
|
|
82
|
+
Object.defineProperty(exports, "buildChpHandoffStateSync", { enumerable: true, get: function () { return chpHandoff_js_1.buildChpHandoffStateSync; } });
|
|
83
|
+
Object.defineProperty(exports, "formatChpCompact", { enumerable: true, get: function () { return chpHandoff_js_1.formatChpCompact; } });
|
|
84
|
+
Object.defineProperty(exports, "formatChpMarkdown", { enumerable: true, get: function () { return chpHandoff_js_1.formatChpMarkdown; } });
|
|
85
|
+
Object.defineProperty(exports, "getProjectHandoff", { enumerable: true, get: function () { return chpHandoff_js_1.getProjectHandoff; } });
|
|
86
|
+
var understandingGraphBuilder_js_1 = require("./understanding/understandingGraphBuilder.js");
|
|
87
|
+
Object.defineProperty(exports, "buildUnderstandingGraph", { enumerable: true, get: function () { return understandingGraphBuilder_js_1.buildUnderstandingGraph; } });
|
|
88
|
+
var miniGraph_js_1 = require("./understanding/miniGraph.js");
|
|
89
|
+
Object.defineProperty(exports, "formatUnderstandingMiniGraph", { enumerable: true, get: function () { return miniGraph_js_1.formatUnderstandingMiniGraph; } });
|
|
90
|
+
var store_js_3 = require("./understanding/knowledgeGraph/store.js");
|
|
91
|
+
Object.defineProperty(exports, "readProjectKnowledgeGraph", { enumerable: true, get: function () { return store_js_3.readProjectKnowledgeGraph; } });
|
|
92
|
+
Object.defineProperty(exports, "readKnowledgeSnapshot", { enumerable: true, get: function () { return store_js_3.readKnowledgeSnapshot; } });
|
|
93
|
+
Object.defineProperty(exports, "writeProjectKnowledgeGraph", { enumerable: true, get: function () { return store_js_3.writeProjectKnowledgeGraph; } });
|
|
94
|
+
Object.defineProperty(exports, "deleteProjectKnowledgeGraph", { enumerable: true, get: function () { return store_js_3.deleteProjectKnowledgeGraph; } });
|
|
95
|
+
var knowledgeGraphBuilder_js_1 = require("./understanding/knowledgeGraph/knowledgeGraphBuilder.js");
|
|
96
|
+
Object.defineProperty(exports, "buildProjectKnowledgeGraph", { enumerable: true, get: function () { return knowledgeGraphBuilder_js_1.buildProjectKnowledgeGraph; } });
|
|
97
|
+
var normalize_js_1 = require("./understanding/knowledgeGraph/normalize.js");
|
|
98
|
+
Object.defineProperty(exports, "normalizeKnowledgeGraph", { enumerable: true, get: function () { return normalize_js_1.normalizeKnowledgeGraph; } });
|
|
99
|
+
Object.defineProperty(exports, "buildGraphMetadata", { enumerable: true, get: function () { return normalize_js_1.buildGraphMetadata; } });
|
|
100
|
+
var hotspotBuilder_js_1 = require("./understanding/knowledgeGraph/hotspotBuilder.js");
|
|
101
|
+
Object.defineProperty(exports, "buildHotspots", { enumerable: true, get: function () { return hotspotBuilder_js_1.buildHotspots; } });
|
|
102
|
+
var snapshotBuilder_js_1 = require("./understanding/knowledgeGraph/snapshotBuilder.js");
|
|
103
|
+
Object.defineProperty(exports, "buildKnowledgeSnapshot", { enumerable: true, get: function () { return snapshotBuilder_js_1.buildKnowledgeSnapshot; } });
|
|
104
|
+
Object.defineProperty(exports, "filterMappingsByConfidence", { enumerable: true, get: function () { return snapshotBuilder_js_1.filterMappingsByConfidence; } });
|
|
105
|
+
var closureConstants_js_1 = require("./understanding/knowledgeGraph/closureConstants.js");
|
|
106
|
+
Object.defineProperty(exports, "GRAPH_CANONICAL_MIN_CONFIDENCE", { enumerable: true, get: function () { return closureConstants_js_1.GRAPH_CANONICAL_MIN_CONFIDENCE; } });
|
|
107
|
+
Object.defineProperty(exports, "CLOSURE_VERSION", { enumerable: true, get: function () { return closureConstants_js_1.CLOSURE_VERSION; } });
|
|
108
|
+
Object.defineProperty(exports, "SNAPSHOT_TOP_INTENTS", { enumerable: true, get: function () { return closureConstants_js_1.SNAPSHOT_TOP_INTENTS; } });
|
|
109
|
+
Object.defineProperty(exports, "SNAPSHOT_TOP_HOTSPOTS", { enumerable: true, get: function () { return closureConstants_js_1.SNAPSHOT_TOP_HOTSPOTS; } });
|
|
110
|
+
Object.defineProperty(exports, "SNAPSHOT_TOP_FUNCTIONS", { enumerable: true, get: function () { return closureConstants_js_1.SNAPSHOT_TOP_FUNCTIONS; } });
|
|
111
|
+
var confidence_js_1 = require("./understanding/knowledgeGraph/confidence.js");
|
|
112
|
+
Object.defineProperty(exports, "computeUnifiedConfidence", { enumerable: true, get: function () { return confidence_js_1.computeUnifiedConfidence; } });
|
|
113
|
+
Object.defineProperty(exports, "clampConfidence", { enumerable: true, get: function () { return confidence_js_1.clampConfidence; } });
|
|
114
|
+
Object.defineProperty(exports, "isCanonicalConfidence", { enumerable: true, get: function () { return confidence_js_1.isCanonicalConfidence; } });
|
|
115
|
+
Object.defineProperty(exports, "splitMappingsByCanonicalThreshold", { enumerable: true, get: function () { return confidence_js_1.splitMappingsByCanonicalThreshold; } });
|
|
116
|
+
Object.defineProperty(exports, "confidenceBandLabel", { enumerable: true, get: function () { return confidence_js_1.confidenceBandLabel; } });
|
|
117
|
+
var rebuildTrigger_js_1 = require("./understanding/knowledgeGraph/rebuildTrigger.js");
|
|
118
|
+
Object.defineProperty(exports, "resolveKnowledgeRebuildTrigger", { enumerable: true, get: function () { return rebuildTrigger_js_1.resolveKnowledgeRebuildTrigger; } });
|
|
119
|
+
Object.defineProperty(exports, "shouldRebuildKnowledgeGraph", { enumerable: true, get: function () { return rebuildTrigger_js_1.shouldRebuildKnowledgeGraph; } });
|
|
120
|
+
var treeSitterParser_js_1 = require("./understanding/treeSitterParser.js");
|
|
121
|
+
Object.defineProperty(exports, "parseFileWithAdapter", { enumerable: true, get: function () { return treeSitterParser_js_1.parseFileWithAdapter; } });
|
|
122
|
+
Object.defineProperty(exports, "IncrementalParseCache", { enumerable: true, get: function () { return treeSitterParser_js_1.IncrementalParseCache; } });
|
|
123
|
+
var extractor_js_1 = require("./understanding/extractor.js");
|
|
124
|
+
Object.defineProperty(exports, "extractFromSource", { enumerable: true, get: function () { return extractor_js_1.extractFromSource; } });
|
|
125
|
+
Object.defineProperty(exports, "isCodeFile", { enumerable: true, get: function () { return extractor_js_1.isCodeFile; } });
|
|
126
|
+
var formatCanonicalExport_js_1 = require("./understanding/formatCanonicalExport.js");
|
|
127
|
+
Object.defineProperty(exports, "formatCanonicalAiMarkdown", { enumerable: true, get: function () { return formatCanonicalExport_js_1.formatCanonicalAiMarkdown; } });
|
|
128
|
+
Object.defineProperty(exports, "formatAiHandoffExecutionBlock", { enumerable: true, get: function () { return formatCanonicalExport_js_1.formatAiHandoffExecutionBlock; } });
|
|
129
|
+
Object.defineProperty(exports, "formatNextActionPlain", { enumerable: true, get: function () { return formatCanonicalExport_js_1.formatNextActionPlain; } });
|
|
130
|
+
Object.defineProperty(exports, "normalizeGraphRef", { enumerable: true, get: function () { return formatCanonicalExport_js_1.normalizeGraphRef; } });
|
|
131
|
+
var semiAutoHandoff_js_1 = require("./semiAutoHandoff.js");
|
|
132
|
+
Object.defineProperty(exports, "checkActiveRuntime", { enumerable: true, get: function () { return semiAutoHandoff_js_1.checkActiveRuntime; } });
|
|
133
|
+
Object.defineProperty(exports, "confirmHandoffInjection", { enumerable: true, get: function () { return semiAutoHandoff_js_1.confirmHandoffInjection; } });
|
|
134
|
+
Object.defineProperty(exports, "prepareHandoffInjection", { enumerable: true, get: function () { return semiAutoHandoff_js_1.prepareHandoffInjection; } });
|
|
135
|
+
Object.defineProperty(exports, "readConfirmedHandoffContext", { enumerable: true, get: function () { return semiAutoHandoff_js_1.readConfirmedHandoffContext; } });
|
|
136
|
+
Object.defineProperty(exports, "readHandoffInjectionState", { enumerable: true, get: function () { return semiAutoHandoff_js_1.readHandoffInjectionState; } });
|
|
137
|
+
Object.defineProperty(exports, "skipHandoffInjection", { enumerable: true, get: function () { return semiAutoHandoff_js_1.skipHandoffInjection; } });
|
|
138
|
+
Object.defineProperty(exports, "syncInjectionWithRuntime", { enumerable: true, get: function () { return semiAutoHandoff_js_1.syncInjectionWithRuntime; } });
|
|
139
|
+
Object.defineProperty(exports, "buildInjectionPromptMessage", { enumerable: true, get: function () { return semiAutoHandoff_js_1.buildInjectionPromptMessage; } });
|
|
140
|
+
var version_js_1 = require("./version.js");
|
|
141
|
+
Object.defineProperty(exports, "getContoriumPackageVersion", { enumerable: true, get: function () { return version_js_1.getContoriumPackageVersion; } });
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { WorkspaceScanFacts } from './types.js';
|
|
2
|
+
/** Scan-only L4 snapshot when IDE cognition pipeline is unavailable (MCP/CLI bootstrap). */
|
|
3
|
+
export declare function formatBootstrapSnapshotMarkdown(scan: WorkspaceScanFacts, taskAnchor?: string): string;
|
|
4
|
+
//# sourceMappingURL=minimalSnapshot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minimalSnapshot.d.ts","sourceRoot":"","sources":["../src/minimalSnapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,4FAA4F;AAC5F,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,kBAAkB,EACxB,UAAU,SAAK,GACd,MAAM,CA0DR"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/** Scan-only L4 snapshot when IDE cognition pipeline is unavailable (MCP/CLI bootstrap). */
|
|
2
|
+
export function formatBootstrapSnapshotMarkdown(scan, taskAnchor = '') {
|
|
3
|
+
const modules = [
|
|
4
|
+
...scan.topLevelModules.slice(0, 6),
|
|
5
|
+
...scan.recentFiles.slice(0, 6).map((f) => f.split('/').pop() ?? f),
|
|
6
|
+
];
|
|
7
|
+
const uniqModules = [...new Set(modules)].slice(0, 8);
|
|
8
|
+
const goal = scan.readmeHint?.trim() ||
|
|
9
|
+
(uniqModules.length
|
|
10
|
+
? `develop ${uniqModules.slice(0, 2).join(' and ')} areas`
|
|
11
|
+
: 'ongoing workspace development');
|
|
12
|
+
const lines = [
|
|
13
|
+
'PROJECT SNAPSHOT',
|
|
14
|
+
'',
|
|
15
|
+
'Goal:',
|
|
16
|
+
goal,
|
|
17
|
+
'',
|
|
18
|
+
'Current Stage:',
|
|
19
|
+
scan.isGitRepo ? 'repository scan (tool-agnostic bootstrap)' : 'workspace scan (no git)',
|
|
20
|
+
'',
|
|
21
|
+
'Active Modules:',
|
|
22
|
+
];
|
|
23
|
+
if (uniqModules.length) {
|
|
24
|
+
for (const m of uniqModules) {
|
|
25
|
+
lines.push(`- ${m}`);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
lines.push('(none detected)');
|
|
30
|
+
}
|
|
31
|
+
lines.push('');
|
|
32
|
+
lines.push('Recent Decisions:');
|
|
33
|
+
lines.push('(none yet)');
|
|
34
|
+
lines.push('');
|
|
35
|
+
lines.push('Open Problems:');
|
|
36
|
+
if (scan.gitWorking.length + scan.gitStaged.length >= 6) {
|
|
37
|
+
lines.push('- uncommitted changes across workspace');
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
lines.push('(light or undirected activity)');
|
|
41
|
+
}
|
|
42
|
+
lines.push('');
|
|
43
|
+
lines.push('Completed Milestones:');
|
|
44
|
+
lines.push('(none yet)');
|
|
45
|
+
lines.push('');
|
|
46
|
+
lines.push('Next Actions:');
|
|
47
|
+
lines.push('- review recent file activity');
|
|
48
|
+
if (scan.isGitRepo) {
|
|
49
|
+
lines.push('- review and commit pending changes');
|
|
50
|
+
}
|
|
51
|
+
lines.push('');
|
|
52
|
+
if (taskAnchor.trim()) {
|
|
53
|
+
lines.push('Task anchor (reference only):');
|
|
54
|
+
lines.push(taskAnchor.trim());
|
|
55
|
+
lines.push('');
|
|
56
|
+
}
|
|
57
|
+
lines.push('(generated by Contorium scan-driven bootstrap — IDE events may refine this)');
|
|
58
|
+
lines.push('');
|
|
59
|
+
return lines.join('\n');
|
|
60
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitScan.d.ts","sourceRoot":"","sources":["../../src/scanner/gitScan.ts"],"names":[],"mappings":"AASA,4DAA4D;AAC5D,wBAAsB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;IACrE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC,CAkCD"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scanGitPorcelain = scanGitPorcelain;
|
|
4
|
+
const node_child_process_1 = require("node:child_process");
|
|
5
|
+
const node_util_1 = require("node:util");
|
|
6
|
+
const execFileAsync = (0, node_util_1.promisify)(node_child_process_1.execFile);
|
|
7
|
+
function norm(p) {
|
|
8
|
+
return p.replace(/\\/g, '/');
|
|
9
|
+
}
|
|
10
|
+
/** Git scan without simple-git — for MCP/CLI standalone. */
|
|
11
|
+
async function scanGitPorcelain(workspaceRoot) {
|
|
12
|
+
try {
|
|
13
|
+
const { stdout } = await execFileAsync('git', ['-C', workspaceRoot, 'status', '--porcelain'], { timeout: 15_000, maxBuffer: 2 * 1024 * 1024 });
|
|
14
|
+
const staged = new Set();
|
|
15
|
+
const working = new Set();
|
|
16
|
+
for (const line of stdout.split('\n')) {
|
|
17
|
+
if (line.length < 4) {
|
|
18
|
+
continue;
|
|
19
|
+
}
|
|
20
|
+
const xy = line.slice(0, 2);
|
|
21
|
+
const file = norm(line.slice(3).trim());
|
|
22
|
+
if (!file) {
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
const index = xy[0];
|
|
26
|
+
const work = xy[1];
|
|
27
|
+
if (index !== ' ' && index !== '?') {
|
|
28
|
+
staged.add(file);
|
|
29
|
+
}
|
|
30
|
+
if (work !== ' ' && work !== '?') {
|
|
31
|
+
working.add(file);
|
|
32
|
+
}
|
|
33
|
+
if (xy === '??') {
|
|
34
|
+
working.add(file);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return { staged: [...staged], working: [...working], isRepo: true };
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return { staged: [], working: [], isRepo: false };
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspaceScanner.d.ts","sourceRoot":"","sources":["../../src/scanner/workspaceScanner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AA8FtD,4DAA4D;AAC5D,wBAAsB,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAmBtF"}
|