instar 1.3.467 → 1.3.469

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.
Files changed (86) hide show
  1. package/dist/commands/init.js +5 -0
  2. package/dist/commands/init.js.map +1 -1
  3. package/dist/commands/server.d.ts.map +1 -1
  4. package/dist/commands/server.js +11 -1
  5. package/dist/commands/server.js.map +1 -1
  6. package/dist/config/ConfigDefaults.d.ts.map +1 -1
  7. package/dist/config/ConfigDefaults.js +18 -0
  8. package/dist/config/ConfigDefaults.js.map +1 -1
  9. package/dist/core/CartographerTree.d.ts +124 -0
  10. package/dist/core/CartographerTree.d.ts.map +1 -0
  11. package/dist/core/CartographerTree.js +360 -0
  12. package/dist/core/CartographerTree.js.map +1 -0
  13. package/dist/core/EscalationGovernor.d.ts +138 -0
  14. package/dist/core/EscalationGovernor.d.ts.map +1 -0
  15. package/dist/core/EscalationGovernor.js +308 -0
  16. package/dist/core/EscalationGovernor.js.map +1 -0
  17. package/dist/core/ModelSwapService.d.ts +116 -0
  18. package/dist/core/ModelSwapService.d.ts.map +1 -0
  19. package/dist/core/ModelSwapService.js +266 -0
  20. package/dist/core/ModelSwapService.js.map +1 -0
  21. package/dist/core/ModelTierEscalation.d.ts +128 -0
  22. package/dist/core/ModelTierEscalation.d.ts.map +1 -0
  23. package/dist/core/ModelTierEscalation.js +232 -0
  24. package/dist/core/ModelTierEscalation.js.map +1 -0
  25. package/dist/core/PostUpdateMigrator.d.ts +3 -1
  26. package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
  27. package/dist/core/PostUpdateMigrator.js +321 -1
  28. package/dist/core/PostUpdateMigrator.js.map +1 -1
  29. package/dist/core/ProjectMapper.d.ts.map +1 -1
  30. package/dist/core/ProjectMapper.js +3 -5
  31. package/dist/core/ProjectMapper.js.map +1 -1
  32. package/dist/core/SessionManager.d.ts +5 -0
  33. package/dist/core/SessionManager.d.ts.map +1 -1
  34. package/dist/core/SessionManager.js +9 -4
  35. package/dist/core/SessionManager.js.map +1 -1
  36. package/dist/core/skipDirs.d.ts +9 -0
  37. package/dist/core/skipDirs.d.ts.map +1 -0
  38. package/dist/core/skipDirs.js +13 -0
  39. package/dist/core/skipDirs.js.map +1 -0
  40. package/dist/core/types.d.ts +14 -0
  41. package/dist/core/types.d.ts.map +1 -1
  42. package/dist/core/types.js.map +1 -1
  43. package/dist/monitoring/BurnDetector.d.ts +10 -0
  44. package/dist/monitoring/BurnDetector.d.ts.map +1 -1
  45. package/dist/monitoring/BurnDetector.js +6 -0
  46. package/dist/monitoring/BurnDetector.js.map +1 -1
  47. package/dist/monitoring/GuardPostureTripwire.d.ts +3 -0
  48. package/dist/monitoring/GuardPostureTripwire.d.ts.map +1 -1
  49. package/dist/monitoring/GuardPostureTripwire.js +44 -0
  50. package/dist/monitoring/GuardPostureTripwire.js.map +1 -1
  51. package/dist/monitoring/TokenLedger.d.ts +7 -0
  52. package/dist/monitoring/TokenLedger.d.ts.map +1 -1
  53. package/dist/monitoring/TokenLedger.js +17 -0
  54. package/dist/monitoring/TokenLedger.js.map +1 -1
  55. package/dist/monitoring/UltraSessionCapMonitor.d.ts +61 -0
  56. package/dist/monitoring/UltraSessionCapMonitor.d.ts.map +1 -0
  57. package/dist/monitoring/UltraSessionCapMonitor.js +103 -0
  58. package/dist/monitoring/UltraSessionCapMonitor.js.map +1 -0
  59. package/dist/scaffold/templates.d.ts.map +1 -1
  60. package/dist/scaffold/templates.js +5 -0
  61. package/dist/scaffold/templates.js.map +1 -1
  62. package/dist/server/AgentServer.d.ts +3 -0
  63. package/dist/server/AgentServer.d.ts.map +1 -1
  64. package/dist/server/AgentServer.js +121 -1
  65. package/dist/server/AgentServer.js.map +1 -1
  66. package/dist/server/CapabilityIndex.d.ts.map +1 -1
  67. package/dist/server/CapabilityIndex.js +16 -0
  68. package/dist/server/CapabilityIndex.js.map +1 -1
  69. package/dist/server/routes.d.ts +7 -0
  70. package/dist/server/routes.d.ts.map +1 -1
  71. package/dist/server/routes.js +113 -6
  72. package/dist/server/routes.js.map +1 -1
  73. package/package.json +1 -1
  74. package/src/data/builtin-manifest.json +84 -68
  75. package/src/scaffold/templates.ts +5 -0
  76. package/src/templates/hooks/model-tier-reconciler.js +137 -0
  77. package/src/templates/hooks/model-tier-skill-entry.sh +72 -0
  78. package/src/templates/hooks/settings-template.json +15 -0
  79. package/upgrades/1.3.468.md +25 -0
  80. package/upgrades/1.3.469.md +71 -0
  81. package/upgrades/session-mgmt-buildctx-race.eli16.md +9 -0
  82. package/upgrades/side-effects/cartographer-doc-tree-schema.md +82 -0
  83. package/upgrades/side-effects/model-tier-escalation.md +267 -0
  84. package/upgrades/side-effects/session-mgmt-buildctx-race.md +48 -0
  85. package/upgrades/side-effects/watchdog-launchctl-test-guard.md +84 -0
  86. package/upgrades/watchdog-launchctl-test-guard.eli16.md +9 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigDefaults.d.ts","sourceRoot":"","sources":["../../src/config/ConfigDefaults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA4rBH,MAAM,MAAM,SAAS,GAAG,iBAAiB,GAAG,YAAY,CAAC;AAEzD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAO7E;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIlF;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAuC5D"}
1
+ {"version":3,"file":"ConfigDefaults.d.ts","sourceRoot":"","sources":["../../src/config/ConfigDefaults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA+sBH,MAAM,MAAM,SAAS,GAAG,iBAAiB,GAAG,YAAY,CAAC;AAEzD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAO7E;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIlF;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAuC5D"}
@@ -13,8 +13,20 @@
13
13
  * port, authToken, dashboardPin, stateDir, projectDir, tmuxPath, claudePath,
14
14
  * chatId, botToken, appToken, token (any credential), webhookUrl
15
15
  */
16
+ import { DEFAULT_TIER_ESCALATION_CONFIG } from '../core/ModelTierEscalation.js';
16
17
  /** Fields shared across ALL agent types and contexts (init + migration) */
17
18
  const SHARED_DEFAULTS = {
19
+ // Model-Tier Escalation (FABLE-MODEL-ESCALATION-SPEC §9/§10). Ships DARK
20
+ // fleet-wide (enabled:false, dryRun:true); dev agents (Echo/Codey) are
21
+ // flipped by hand in the same ship, gated on the §5.3 pre-enable canary.
22
+ // The block is the §9 schema verbatim via the single source of truth in
23
+ // ModelTierEscalation.ts. applyDefaults is add-missing-only with deep
24
+ // recursion, so an operator's existing `enabled`/`dryRun` (or any other
25
+ // field) is NEVER overwritten on migration (round-1 Lessons-H2, the
26
+ // burn-alert clobber incident) — missing sub-fields are backfilled.
27
+ models: {
28
+ tierEscalation: DEFAULT_TIER_ESCALATION_CONFIG,
29
+ },
18
30
  monitoring: {
19
31
  memoryMonitoring: true,
20
32
  healthCheckIntervalMs: 30000,
@@ -618,6 +630,12 @@ const SHARED_DEFAULTS = {
618
630
  markerFieldMaxChars: 500,
619
631
  },
620
632
  },
633
+ // Cartographer doc-tree — hierarchical semantic map with git-hash staleness
634
+ // (cartographer-doc-tree-schema spec #1). Ships dark; routes 503 when disabled.
635
+ cartographer: {
636
+ enabled: false,
637
+ maxDepth: 12,
638
+ },
621
639
  };
622
640
  /**
623
641
  * Fields that differ between agent types at INIT time.
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigDefaults.js","sourceRoot":"","sources":["../../src/config/ConfigDefaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfigDefaults.js","sourceRoot":"","sources":["../../src/config/ConfigDefaults.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,124 @@
1
+ export type NodeKind = 'dir' | 'file';
2
+ export type StalenessStatus = 'fresh' | 'stale' | 'never-authored' | 'path-gone' | 'dirty';
3
+ export interface CartographerNodeProvenance {
4
+ framework?: string;
5
+ /** Size tier of the model that authored the summary — never a vendor name. */
6
+ modelTier?: 'light' | 'standard';
7
+ }
8
+ export interface CartographerNode {
9
+ /** Repo-relative POSIX path this node covers ('' = repo root). */
10
+ path: string;
11
+ kind: NodeKind;
12
+ /** Plain-language description of what the code here does. '' until authored. */
13
+ summary: string;
14
+ /** ISO timestamp the summary was last authored; null = never. */
15
+ summaryUpdatedAt: string | null;
16
+ /** The git object id of the covered code AT authoring time (dir→tree, file→blob). null = never. */
17
+ codeHash: string | null;
18
+ /** Short HEAD sha when the summary was authored (provenance only). */
19
+ codeRev: string | null;
20
+ /** Child node paths (dirs only; sorted, repo-relative). */
21
+ children: string[];
22
+ /** Provenance marker — this file is cartographer state, not a user file. */
23
+ builtinKind: 'cartographer-node';
24
+ provenance?: CartographerNodeProvenance;
25
+ /** True if codeHash was a working-tree hash rather than a committed oid. */
26
+ dirtyAtAuthor?: boolean;
27
+ }
28
+ export interface CartographerIndexEntry {
29
+ kind: NodeKind;
30
+ summaryUpdatedAt: string | null;
31
+ codeHash: string | null;
32
+ hasChildren: boolean;
33
+ }
34
+ export interface CartographerIndex {
35
+ schemaVersion: number;
36
+ root: string;
37
+ generatedAt: string;
38
+ nodes: Record<string, CartographerIndexEntry>;
39
+ }
40
+ export interface CartographerStaleEntry {
41
+ path: string;
42
+ status: StalenessStatus;
43
+ reason: string;
44
+ }
45
+ export interface CartographerConfig {
46
+ /** Project root directory (the repo to map). */
47
+ projectDir: string;
48
+ /** Instar state directory (cartographer state nests under here). */
49
+ stateDir: string;
50
+ /** Hard cap on descent depth (default 12). */
51
+ maxDepth?: number;
52
+ /** File extensions that become leaf nodes (default ts/js/mjs/cjs). */
53
+ leafExtensions?: string[];
54
+ /** Substrings that exclude a file from being a leaf (default test/spec/.d.ts). */
55
+ excludeSubstrings?: string[];
56
+ }
57
+ export declare class CartographerTree {
58
+ private readonly projectDir;
59
+ private readonly cartoDir;
60
+ private readonly nodesDir;
61
+ private readonly indexPath;
62
+ private readonly maxDepth;
63
+ private readonly leafExtensions;
64
+ private readonly excludeSubstrings;
65
+ constructor(config: CartographerConfig);
66
+ /** Collision-free, opaque node-file slug. The index is the authoritative reverse lookup. */
67
+ private slug;
68
+ private nodeFilePath;
69
+ /** Atomic write — temp file + rename (atomic on POSIX) so a reader never sees a torn file. */
70
+ private atomicWrite;
71
+ private ensureDirs;
72
+ private git;
73
+ /**
74
+ * ONE batched call: every tracked tree (dir) and blob (file) oid in HEAD, keyed
75
+ * by repo-relative path. Plus the root tree oid (key ''). The make-or-break perf
76
+ * primitive — no per-node `git rev-parse`.
77
+ */
78
+ private currentOids;
79
+ /** Single-path current oid (for setSummary capture) — `git rev-parse HEAD:<path>`. */
80
+ private currentOid;
81
+ private headShort;
82
+ private isLeafFile;
83
+ /**
84
+ * (Re)build the structural skeleton from a directory walk. Preserves an existing
85
+ * node's authored summary/codeHash/codeRev (so staleness still reflects time of
86
+ * authoring); only structure (kind/children) is refreshed. New nodes start
87
+ * never-authored (codeHash null). Honors skip-set, maxDepth, and a symlink-loop
88
+ * guard (visited real paths).
89
+ */
90
+ scaffold(): CartographerIndex;
91
+ /** Merge structure into a node, preserving any existing authored fields. */
92
+ private upsertNode;
93
+ private rewriteAll;
94
+ private buildIndex;
95
+ private nowIso;
96
+ private readNodeFile;
97
+ loadIndex(): CartographerIndex | null;
98
+ getNode(nodePath: string): CartographerNode | null;
99
+ getChildren(nodePath: string): CartographerNode[];
100
+ /**
101
+ * Author/refresh a node's summary, capturing the current code oid so future
102
+ * staleness reflects time-of-authoring. Writes the node file first, then patches
103
+ * the index (so a reader never sees an index entry ahead of its node file).
104
+ */
105
+ setSummary(nodePath: string, summary: string, opts?: {
106
+ codeHash?: string;
107
+ codeRev?: string;
108
+ provenance?: CartographerNodeProvenance;
109
+ }): CartographerNode;
110
+ /** Derive staleness for the whole tree from ONE batched git read. */
111
+ staleNodes(): CartographerStaleEntry[];
112
+ /** Derive staleness for a single node. */
113
+ computeStaleness(nodePath: string): StalenessStatus;
114
+ private deriveStatus;
115
+ private statusReason;
116
+ health(): {
117
+ nodeCount: number;
118
+ authoredCount: number;
119
+ neverAuthoredCount: number;
120
+ staleCount: number;
121
+ generatedAt: string | null;
122
+ };
123
+ }
124
+ //# sourceMappingURL=CartographerTree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CartographerTree.d.ts","sourceRoot":"","sources":["../../src/core/CartographerTree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,360 @@
1
+ /**
2
+ * CartographerTree — the substrate of the cartographer-conformance project
3
+ * (spec #1, docs/specs/CARTOGRAPHER-DOC-TREE-SCHEMA.md).
4
+ *
5
+ * A hierarchical, semantic doc-tree of the codebase: one node per directory or
6
+ * significant file, each carrying a plain-language `summary` plus a git object-id
7
+ * fingerprint (`codeHash`) captured when the summary was authored. Staleness is
8
+ * DERIVED — never stored — by comparing each node's stored `codeHash` to the
9
+ * code's current git oid, obtained from ONE batched `git ls-tree -r -t HEAD`
10
+ * (plus one `rev-parse` for the root tree). Pure git/filesystem, zero LLM.
11
+ *
12
+ * This module is the schema + storage + staleness + read/update primitives only.
13
+ * Bulk summary authoring (the freshness sweep) is spec #2; this layer just stores
14
+ * and serves. Summaries are LLM-authored and semantically UNVERIFIED here —
15
+ * downstream consumers must re-ground against the code before acting on one.
16
+ */
17
+ import fs from 'node:fs';
18
+ import path from 'node:path';
19
+ import crypto from 'node:crypto';
20
+ import { SafeGitExecutor } from './SafeGitExecutor.js';
21
+ import { SafeFsExecutor } from './SafeFsExecutor.js';
22
+ import { DEFAULT_SKIP_DIRS } from './skipDirs.js';
23
+ const SCHEMA_VERSION = 1;
24
+ const DEFAULT_MAX_DEPTH = 12;
25
+ const DEFAULT_LEAF_EXTENSIONS = ['.ts', '.js', '.mjs', '.cjs'];
26
+ const DEFAULT_EXCLUDE_SUBSTRINGS = ['.test.', '.spec.', '.d.ts'];
27
+ const GIT_OP = 'cartographer-tree';
28
+ export class CartographerTree {
29
+ projectDir;
30
+ cartoDir;
31
+ nodesDir;
32
+ indexPath;
33
+ maxDepth;
34
+ leafExtensions;
35
+ excludeSubstrings;
36
+ constructor(config) {
37
+ this.projectDir = config.projectDir;
38
+ this.cartoDir = path.join(config.stateDir, 'cartographer');
39
+ this.nodesDir = path.join(this.cartoDir, 'nodes');
40
+ this.indexPath = path.join(this.cartoDir, 'index.json');
41
+ this.maxDepth = config.maxDepth ?? DEFAULT_MAX_DEPTH;
42
+ this.leafExtensions = config.leafExtensions ?? DEFAULT_LEAF_EXTENSIONS;
43
+ this.excludeSubstrings = config.excludeSubstrings ?? DEFAULT_EXCLUDE_SUBSTRINGS;
44
+ }
45
+ // ---- slug + atomic IO -----------------------------------------------------
46
+ /** Collision-free, opaque node-file slug. The index is the authoritative reverse lookup. */
47
+ slug(nodePath) {
48
+ return crypto.createHash('sha256').update(nodePath, 'utf8').digest('hex').slice(0, 40);
49
+ }
50
+ nodeFilePath(nodePath) {
51
+ return path.join(this.nodesDir, `${this.slug(nodePath)}.json`);
52
+ }
53
+ /** Atomic write — temp file + rename (atomic on POSIX) so a reader never sees a torn file. */
54
+ atomicWrite(filePath, contents) {
55
+ const tmp = `${filePath}.${process.pid}.tmp`;
56
+ fs.writeFileSync(tmp, contents);
57
+ fs.renameSync(tmp, filePath);
58
+ }
59
+ ensureDirs() {
60
+ fs.mkdirSync(this.nodesDir, { recursive: true });
61
+ }
62
+ // ---- git plumbing (read-only, batched) ------------------------------------
63
+ git(args) {
64
+ try {
65
+ return SafeGitExecutor.readSync(args, { cwd: this.projectDir, operation: GIT_OP });
66
+ }
67
+ catch {
68
+ // @silent-fallback-ok — absent git/HEAD yields no oids; callers treat as unknown.
69
+ return null;
70
+ }
71
+ }
72
+ /**
73
+ * ONE batched call: every tracked tree (dir) and blob (file) oid in HEAD, keyed
74
+ * by repo-relative path. Plus the root tree oid (key ''). The make-or-break perf
75
+ * primitive — no per-node `git rev-parse`.
76
+ */
77
+ currentOids() {
78
+ const map = new Map();
79
+ const rootTree = this.git(['rev-parse', 'HEAD^{tree}']);
80
+ if (rootTree)
81
+ map.set('', rootTree.trim());
82
+ const out = this.git(['ls-tree', '-r', '-t', '-z', 'HEAD']);
83
+ if (!out)
84
+ return map;
85
+ for (const entry of out.split('\0')) {
86
+ if (!entry)
87
+ continue;
88
+ // format: "<mode> <type> <oid>\t<path>"
89
+ const tab = entry.indexOf('\t');
90
+ if (tab < 0)
91
+ continue;
92
+ const meta = entry.slice(0, tab).split(' ');
93
+ const p = entry.slice(tab + 1);
94
+ const oid = meta[2];
95
+ if (oid && p)
96
+ map.set(p, oid);
97
+ }
98
+ return map;
99
+ }
100
+ /** Single-path current oid (for setSummary capture) — `git rev-parse HEAD:<path>`. */
101
+ currentOid(nodePath) {
102
+ const rev = nodePath === '' ? 'HEAD^{tree}' : `HEAD:${nodePath}`;
103
+ const out = this.git(['rev-parse', rev]);
104
+ return out ? out.trim() : null;
105
+ }
106
+ headShort() {
107
+ const out = this.git(['rev-parse', '--short', 'HEAD']);
108
+ return out ? out.trim() : null;
109
+ }
110
+ // ---- scaffold (structural skeleton) ---------------------------------------
111
+ isLeafFile(name) {
112
+ if (this.excludeSubstrings.some((s) => name.includes(s)))
113
+ return false;
114
+ return this.leafExtensions.some((ext) => name.endsWith(ext));
115
+ }
116
+ /**
117
+ * (Re)build the structural skeleton from a directory walk. Preserves an existing
118
+ * node's authored summary/codeHash/codeRev (so staleness still reflects time of
119
+ * authoring); only structure (kind/children) is refreshed. New nodes start
120
+ * never-authored (codeHash null). Honors skip-set, maxDepth, and a symlink-loop
121
+ * guard (visited real paths).
122
+ */
123
+ scaffold() {
124
+ this.ensureDirs();
125
+ const visitedReal = new Set();
126
+ const nodes = new Map();
127
+ const relPosix = (abs) => path.relative(this.projectDir, abs).split(path.sep).join('/');
128
+ const walk = (absDir, depth) => {
129
+ // returns sorted child node paths of absDir
130
+ let real;
131
+ try {
132
+ real = fs.realpathSync(absDir);
133
+ }
134
+ catch {
135
+ // @silent-fallback-ok — an unresolvable path is simply not mapped; the
136
+ // scaffold skips it and continues. No degraded state to report.
137
+ return [];
138
+ }
139
+ if (visitedReal.has(real))
140
+ return [];
141
+ visitedReal.add(real);
142
+ if (depth > this.maxDepth)
143
+ return [];
144
+ let entries;
145
+ try {
146
+ entries = fs.readdirSync(absDir, { withFileTypes: true });
147
+ }
148
+ catch {
149
+ // @silent-fallback-ok — an unreadable directory contributes no child
150
+ // nodes; the scaffold treats it as empty and moves on (read-only map).
151
+ return [];
152
+ }
153
+ const children = [];
154
+ for (const e of entries.sort((a, b) => a.name.localeCompare(b.name))) {
155
+ if (e.isDirectory()) {
156
+ if (DEFAULT_SKIP_DIRS.has(e.name))
157
+ continue;
158
+ const childAbs = path.join(absDir, e.name);
159
+ const childRel = relPosix(childAbs);
160
+ const grandChildren = walk(childAbs, depth + 1);
161
+ this.upsertNode(nodes, childRel, 'dir', grandChildren);
162
+ children.push(childRel);
163
+ }
164
+ else if (e.isFile() && this.isLeafFile(e.name)) {
165
+ const childAbs = path.join(absDir, e.name);
166
+ const childRel = relPosix(childAbs);
167
+ this.upsertNode(nodes, childRel, 'file', []);
168
+ children.push(childRel);
169
+ }
170
+ }
171
+ return children;
172
+ };
173
+ const rootChildren = walk(this.projectDir, 0);
174
+ this.upsertNode(nodes, '', 'dir', rootChildren);
175
+ // Prune stale node files (paths that disappeared) and write the surviving set.
176
+ this.rewriteAll(nodes);
177
+ return this.buildIndex(nodes);
178
+ }
179
+ /** Merge structure into a node, preserving any existing authored fields. */
180
+ upsertNode(nodes, nodePath, kind, children) {
181
+ const existing = this.readNodeFile(nodePath);
182
+ nodes.set(nodePath, {
183
+ path: nodePath,
184
+ kind,
185
+ summary: existing?.summary ?? '',
186
+ summaryUpdatedAt: existing?.summaryUpdatedAt ?? null,
187
+ codeHash: existing?.codeHash ?? null,
188
+ codeRev: existing?.codeRev ?? null,
189
+ children,
190
+ builtinKind: 'cartographer-node',
191
+ provenance: existing?.provenance,
192
+ dirtyAtAuthor: existing?.dirtyAtAuthor,
193
+ });
194
+ }
195
+ rewriteAll(nodes) {
196
+ // Remove node files for paths no longer present.
197
+ if (fs.existsSync(this.nodesDir)) {
198
+ const keep = new Set();
199
+ for (const p of nodes.keys())
200
+ keep.add(`${this.slug(p)}.json`);
201
+ for (const f of fs.readdirSync(this.nodesDir)) {
202
+ if (f.endsWith('.json') && !keep.has(f)) {
203
+ try {
204
+ SafeFsExecutor.safeUnlinkSync(path.join(this.nodesDir, f), {
205
+ operation: 'cartographer-prune-stale-node',
206
+ });
207
+ }
208
+ catch { /* best-effort prune */ }
209
+ }
210
+ }
211
+ }
212
+ for (const node of nodes.values()) {
213
+ this.atomicWrite(this.nodeFilePath(node.path), JSON.stringify(node, null, 2));
214
+ }
215
+ }
216
+ buildIndex(nodes) {
217
+ const index = {
218
+ schemaVersion: SCHEMA_VERSION,
219
+ root: '',
220
+ generatedAt: this.nowIso(),
221
+ nodes: {},
222
+ };
223
+ for (const node of nodes.values()) {
224
+ index.nodes[node.path] = {
225
+ kind: node.kind,
226
+ summaryUpdatedAt: node.summaryUpdatedAt,
227
+ codeHash: node.codeHash,
228
+ hasChildren: node.children.length > 0,
229
+ };
230
+ }
231
+ this.atomicWrite(this.indexPath, JSON.stringify(index, null, 2));
232
+ return index;
233
+ }
234
+ nowIso() {
235
+ // Wall clock is acceptable here (authoring timestamp); not on a resume-critical path.
236
+ return new Date().toISOString();
237
+ }
238
+ // ---- read / update --------------------------------------------------------
239
+ readNodeFile(nodePath) {
240
+ const fp = this.nodeFilePath(nodePath);
241
+ if (!fs.existsSync(fp))
242
+ return null;
243
+ try {
244
+ return JSON.parse(fs.readFileSync(fp, 'utf8'));
245
+ }
246
+ catch {
247
+ // @silent-fallback-ok — a corrupt/partial node file reads as "absent"; the
248
+ // next scaffold/sweep re-authors it. Treating it as null is the recovery.
249
+ return null;
250
+ }
251
+ }
252
+ loadIndex() {
253
+ if (!fs.existsSync(this.indexPath))
254
+ return null;
255
+ try {
256
+ return JSON.parse(fs.readFileSync(this.indexPath, 'utf8'));
257
+ }
258
+ catch {
259
+ // @silent-fallback-ok — a corrupt index reads as "no index yet"; callers
260
+ // then scaffold() a fresh one. Treating it as null is the recovery path.
261
+ return null;
262
+ }
263
+ }
264
+ getNode(nodePath) {
265
+ return this.readNodeFile(nodePath);
266
+ }
267
+ getChildren(nodePath) {
268
+ const node = this.readNodeFile(nodePath);
269
+ if (!node)
270
+ return [];
271
+ return node.children
272
+ .map((c) => this.readNodeFile(c))
273
+ .filter((n) => n !== null);
274
+ }
275
+ /**
276
+ * Author/refresh a node's summary, capturing the current code oid so future
277
+ * staleness reflects time-of-authoring. Writes the node file first, then patches
278
+ * the index (so a reader never sees an index entry ahead of its node file).
279
+ */
280
+ setSummary(nodePath, summary, opts = {}) {
281
+ this.ensureDirs();
282
+ const existing = this.readNodeFile(nodePath);
283
+ if (!existing) {
284
+ throw new Error(`CartographerTree.setSummary: no node at path "${nodePath}" — run scaffold() first`);
285
+ }
286
+ const codeHash = opts.codeHash ?? this.currentOid(nodePath);
287
+ const node = {
288
+ ...existing,
289
+ summary,
290
+ summaryUpdatedAt: this.nowIso(),
291
+ codeHash,
292
+ codeRev: opts.codeRev ?? this.headShort(),
293
+ provenance: opts.provenance ?? existing.provenance,
294
+ };
295
+ this.atomicWrite(this.nodeFilePath(nodePath), JSON.stringify(node, null, 2));
296
+ // Patch the index entry (node file already on disk).
297
+ const index = this.loadIndex();
298
+ if (index && index.nodes[nodePath]) {
299
+ index.nodes[nodePath].summaryUpdatedAt = node.summaryUpdatedAt;
300
+ index.nodes[nodePath].codeHash = node.codeHash;
301
+ this.atomicWrite(this.indexPath, JSON.stringify(index, null, 2));
302
+ }
303
+ return node;
304
+ }
305
+ /** Derive staleness for the whole tree from ONE batched git read. */
306
+ staleNodes() {
307
+ const index = this.loadIndex();
308
+ if (!index)
309
+ return [];
310
+ const current = this.currentOids();
311
+ const out = [];
312
+ for (const [nodePath, entry] of Object.entries(index.nodes)) {
313
+ const status = this.deriveStatus(entry.codeHash, current.get(nodePath));
314
+ if (status !== 'fresh') {
315
+ out.push({ path: nodePath, status, reason: this.statusReason(status) });
316
+ }
317
+ }
318
+ return out;
319
+ }
320
+ /** Derive staleness for a single node. */
321
+ computeStaleness(nodePath) {
322
+ const node = this.readNodeFile(nodePath);
323
+ if (!node)
324
+ return 'path-gone';
325
+ return this.deriveStatus(node.codeHash, this.currentOid(nodePath) ?? undefined);
326
+ }
327
+ deriveStatus(storedHash, currentOid) {
328
+ if (storedHash == null)
329
+ return 'never-authored';
330
+ if (currentOid == null)
331
+ return 'path-gone';
332
+ return currentOid === storedHash ? 'fresh' : 'stale';
333
+ }
334
+ statusReason(status) {
335
+ switch (status) {
336
+ case 'never-authored': return 'no summary authored yet';
337
+ case 'path-gone': return 'covered path no longer in HEAD';
338
+ case 'stale': return 'code changed since the summary was authored';
339
+ case 'dirty': return 'uncommitted changes under this path';
340
+ default: return '';
341
+ }
342
+ }
343
+ // ---- observability --------------------------------------------------------
344
+ health() {
345
+ const index = this.loadIndex();
346
+ if (!index) {
347
+ return { nodeCount: 0, authoredCount: 0, neverAuthoredCount: 0, staleCount: 0, generatedAt: null };
348
+ }
349
+ const entries = Object.values(index.nodes);
350
+ const authoredCount = entries.filter((e) => e.codeHash != null).length;
351
+ return {
352
+ nodeCount: entries.length,
353
+ authoredCount,
354
+ neverAuthoredCount: entries.length - authoredCount,
355
+ staleCount: this.staleNodes().filter((s) => s.status === 'stale').length,
356
+ generatedAt: index.generatedAt,
357
+ };
358
+ }
359
+ }
360
+ //# sourceMappingURL=CartographerTree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CartographerTree.js","sourceRoot":"","sources":["../../src/core/CartographerTree.ts"],"names":[],"mappings":"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"}