@mmnto/mcp 1.43.0 → 1.43.2
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.
|
@@ -14,16 +14,24 @@ import { type GitState, type MilestoneState, type RecentPr, type RuleCounts, typ
|
|
|
14
14
|
export declare function extractGitState(cwd: string): GitState;
|
|
15
15
|
/**
|
|
16
16
|
* Resolve the strategy-state pointer for the MCP `describe_project` payload
|
|
17
|
-
* (mmnto-ai/totem#1710). After
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
17
|
+
* (mmnto-ai/totem#1710). After Proposal 282 / ADR-106, journal discovery
|
|
18
|
+
* walks two layers:
|
|
19
|
+
*
|
|
20
|
+
* 1. **Orchestration (active):** the strategy repo's per-repo
|
|
21
|
+
* `.totem/orchestration/strategy-claude/journal/` (Proposal 282).
|
|
22
|
+
* 2. **Substrate (frozen archive):** the legacy
|
|
23
|
+
* `<parent>/totem-substrate/.journal/` clone, with repo-local
|
|
24
|
+
* sediment fallback (ADR-100). Read only when orchestration is
|
|
25
|
+
* empty so historical journals continue to surface during the
|
|
26
|
+
* bootstrap window and afterward.
|
|
27
|
+
*
|
|
28
|
+
* The strategy SHA still resolves through `resolveStrategyRoot`.
|
|
21
29
|
*
|
|
22
30
|
* Two outcomes:
|
|
23
31
|
* - **Resolved:** `{ resolved: true, sha, latestJournal }`. `sha` and
|
|
24
32
|
* `latestJournal` follow the existing graceful-degrade contract — null when
|
|
25
33
|
* `git rev-parse` fails on the strategy repo or when no journal directory
|
|
26
|
-
* resolves. The agent gets a real pointer when one exists.
|
|
34
|
+
* resolves on either layer. The agent gets a real pointer when one exists.
|
|
27
35
|
* - **Unresolved:** `{ resolved: false, reason }`. Strategy resolver couldn't
|
|
28
36
|
* find the strategy repo at all. The agent reads the resolver's actionable
|
|
29
37
|
* reason instead of seeing an empty pointer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-extractors.d.ts","sourceRoot":"","sources":["../src/state-extractors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,
|
|
1
|
+
{"version":3,"file":"state-extractors.d.ts","sourceRoot":"","sources":["../src/state-extractors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,EAQL,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,cAAc,EAEnB,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,eAAe,EAErB,MAAM,+BAA+B,CAAC;AAavC,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CA+BrD;AAID;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,sBAAsB,GAAG,uBAAuB,GACxD,eAAe,CAyEjB;AAID,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkC1E;AAID,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAuB3E;AAID,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CASxE;AAID;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAoCjE;AAID;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE5D;AAID;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAmB,GAAG,QAAQ,EAAE,CAyClF"}
|
package/dist/state-extractors.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*/
|
|
12
12
|
import * as fs from 'node:fs';
|
|
13
13
|
import * as path from 'node:path';
|
|
14
|
-
import { CompiledRulesFileSchema, readJsonSafe, resolveGitRoot, resolveStrategyRoot, resolveSubstratePaths, safeExec, } from '@mmnto/totem';
|
|
14
|
+
import { CompiledRulesFileSchema, readJsonSafe, resolveGitRoot, resolveOrchestrationPaths, resolveStrategyRoot, resolveSubstratePaths, safeExec, } from '@mmnto/totem';
|
|
15
15
|
import { RECENT_PRS_COUNT, UNCOMMITTED_FILES_CAP, } from './schemas/describe-project.js';
|
|
16
16
|
/** Fixed-group package names whose versions show in the briefing. */
|
|
17
17
|
const FIXED_GROUP_PACKAGES = [
|
|
@@ -56,16 +56,24 @@ export function extractGitState(cwd) {
|
|
|
56
56
|
// ─── Strategy pointer ──────────────────────────────────────────────────────
|
|
57
57
|
/**
|
|
58
58
|
* Resolve the strategy-state pointer for the MCP `describe_project` payload
|
|
59
|
-
* (mmnto-ai/totem#1710). After
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
59
|
+
* (mmnto-ai/totem#1710). After Proposal 282 / ADR-106, journal discovery
|
|
60
|
+
* walks two layers:
|
|
61
|
+
*
|
|
62
|
+
* 1. **Orchestration (active):** the strategy repo's per-repo
|
|
63
|
+
* `.totem/orchestration/strategy-claude/journal/` (Proposal 282).
|
|
64
|
+
* 2. **Substrate (frozen archive):** the legacy
|
|
65
|
+
* `<parent>/totem-substrate/.journal/` clone, with repo-local
|
|
66
|
+
* sediment fallback (ADR-100). Read only when orchestration is
|
|
67
|
+
* empty so historical journals continue to surface during the
|
|
68
|
+
* bootstrap window and afterward.
|
|
69
|
+
*
|
|
70
|
+
* The strategy SHA still resolves through `resolveStrategyRoot`.
|
|
63
71
|
*
|
|
64
72
|
* Two outcomes:
|
|
65
73
|
* - **Resolved:** `{ resolved: true, sha, latestJournal }`. `sha` and
|
|
66
74
|
* `latestJournal` follow the existing graceful-degrade contract — null when
|
|
67
75
|
* `git rev-parse` fails on the strategy repo or when no journal directory
|
|
68
|
-
* resolves. The agent gets a real pointer when one exists.
|
|
76
|
+
* resolves on either layer. The agent gets a real pointer when one exists.
|
|
69
77
|
* - **Unresolved:** `{ resolved: false, reason }`. Strategy resolver couldn't
|
|
70
78
|
* find the strategy repo at all. The agent reads the resolver's actionable
|
|
71
79
|
* reason instead of seeing an empty pointer.
|
|
@@ -87,20 +95,57 @@ export function extractStrategyPointer(cwd, config) {
|
|
|
87
95
|
}
|
|
88
96
|
let latestJournal = null;
|
|
89
97
|
try {
|
|
90
|
-
//
|
|
91
|
-
//
|
|
92
|
-
//
|
|
93
|
-
//
|
|
94
|
-
//
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
98
|
+
// Layer 1 — orchestration (active, post-Proposal-282): the strategy
|
|
99
|
+
// repo's per-repo `.totem/orchestration/<agent-id>/journal/` is the
|
|
100
|
+
// live write target. Scan BOTH strategy-claude AND strategy-gemini
|
|
101
|
+
// journals; the strategy repo can host both agents and either may
|
|
102
|
+
// hold the latest entry. Resolver returns source: 'orchestration'
|
|
103
|
+
// when at least one of an agent's subdirs exists; we read `journal`
|
|
104
|
+
// when it's populated and fall through otherwise.
|
|
105
|
+
// Per-agent reads share the outer try/catch — a permission error on one
|
|
106
|
+
// journal correlates strongly with the other (same disk, same mount, same
|
|
107
|
+
// process credentials), so per-agent isolation buys little and would
|
|
108
|
+
// require swallow-and-continue catches that the fail-open-catch ban
|
|
109
|
+
// (Tenet 4) reasonably restricts.
|
|
110
|
+
// Filename sort works WITHIN one agent's directory (same `<model>-NNNN-*`
|
|
111
|
+
// prefix is monotonic by session counter), but breaks ACROSS agents
|
|
112
|
+
// because `claude-9999-*` sorts before `gemini-0001-*`. Pick each agent's
|
|
113
|
+
// latest by filename, then tiebreak across agents by mtime — only N
|
|
114
|
+
// stat() calls (one per agent dir), and the within-agent sort stays cheap.
|
|
115
|
+
const strategyAgents = ['strategy-claude', 'strategy-gemini'];
|
|
116
|
+
const candidates = [];
|
|
117
|
+
for (const agent of strategyAgents) {
|
|
118
|
+
const orchestration = resolveOrchestrationPaths(strategyDir, agent);
|
|
119
|
+
if (orchestration.journal === null)
|
|
120
|
+
continue;
|
|
121
|
+
const journalDir = orchestration.journal;
|
|
122
|
+
const entries = fs.readdirSync(journalDir).filter((f) => f.endsWith('.md'));
|
|
123
|
+
if (entries.length === 0)
|
|
124
|
+
continue;
|
|
125
|
+
entries.sort();
|
|
126
|
+
const latest = entries[entries.length - 1];
|
|
127
|
+
const mtime = fs.statSync(path.join(journalDir, latest)).mtimeMs;
|
|
128
|
+
candidates.push({ entry: latest, mtime });
|
|
129
|
+
}
|
|
130
|
+
if (candidates.length > 0) {
|
|
131
|
+
candidates.sort((a, b) => b.mtime - a.mtime);
|
|
132
|
+
latestJournal = candidates[0].entry;
|
|
133
|
+
}
|
|
134
|
+
// Layer 2 — substrate / sediment (frozen archive, ADR-100): used
|
|
135
|
+
// when orchestration is absent or empty across both strategy agents,
|
|
136
|
+
// so historical journals continue to surface during the bootstrap
|
|
137
|
+
// window and after the cohort cutover for forensic reads.
|
|
138
|
+
if (latestJournal === null) {
|
|
139
|
+
const substrate = resolveSubstratePaths(cwd, { config });
|
|
140
|
+
if (substrate.journalRoot !== null) {
|
|
141
|
+
const entries = fs
|
|
142
|
+
.readdirSync(substrate.journalRoot)
|
|
143
|
+
.filter((f) => f.endsWith('.md'))
|
|
144
|
+
.sort();
|
|
145
|
+
latestJournal = entries.length > 0 ? entries[entries.length - 1] : null;
|
|
146
|
+
}
|
|
102
147
|
}
|
|
103
|
-
// totem-context: ADR-090
|
|
148
|
+
// totem-context: intentional fall-through — orchestration + substrate read paths are best-effort sensors; ADR-090 graceful degradation means we return null for latestJournal rather than crash the whole describe_project payload.
|
|
104
149
|
}
|
|
105
150
|
catch {
|
|
106
151
|
latestJournal = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-extractors.js","sourceRoot":"","sources":["../src/state-extractors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,QAAQ,GAGT,MAAM,cAAc,CAAC;AAEtB,OAAO,EAGL,gBAAgB,EAIhB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AAEvC,qEAAqE;AACrE,MAAM,oBAAoB,GAAG;IAC3B,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,4BAA4B;IAC5B,+BAA+B;CACvB,CAAC;AAEX,8EAA8E;AAE9E,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAClE,CAAC;IAED,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5E,MAAM,GAAG,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QACrC,sFAAsF;IACxF,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,QAAQ,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACtE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,QAAQ,GAAG,SAAS;iBACjB,KAAK,CAAC,OAAO,CAAC;iBACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iBACnC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,iGAAiG;IACnG,CAAC;IAAC,MAAM,CAAC;QACP,QAAQ,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,qBAAqB,CAAC;IAC1D,MAAM,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzF,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC;AACjD,CAAC;AAED,8EAA8E;AAE9E
|
|
1
|
+
{"version":3,"file":"state-extractors.js","sourceRoot":"","sources":["../src/state-extractors.ts"],"names":[],"mappings":"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"}
|
|
@@ -160,6 +160,206 @@ describe('extractStrategyPointer (mmnto-ai/totem#1710)', () => {
|
|
|
160
160
|
fs.rmSync(tmp, RM_OPTS);
|
|
161
161
|
}
|
|
162
162
|
});
|
|
163
|
+
it('prefers per-repo orchestration over substrate (Proposal 282 / ADR-106)', () => {
|
|
164
|
+
// Proposal 282 invariant: when the strategy repo carries a populated
|
|
165
|
+
// `.totem/orchestration/strategy-claude/journal/`, that's the active
|
|
166
|
+
// surface and substrate becomes the frozen-archive fallback. The
|
|
167
|
+
// orchestration entry MUST win even when substrate also resolves with
|
|
168
|
+
// a newer-named file.
|
|
169
|
+
// totem-context: test fixture only; agents do not consume this temp dir.
|
|
170
|
+
const tmp = fs.mkdtempSync(path.join(os.tmpdir(), 'totem-mcp-orch-pref-'));
|
|
171
|
+
try {
|
|
172
|
+
const parent = path.join(tmp, 'parent');
|
|
173
|
+
fs.mkdirSync(parent);
|
|
174
|
+
// Strategy clone with its own orchestration tree (the active layer).
|
|
175
|
+
const strategyDir = path.join(parent, 'totem-strategy-clone');
|
|
176
|
+
fs.mkdirSync(strategyDir);
|
|
177
|
+
const orchestrationJournal = path.join(strategyDir, '.totem', 'orchestration', 'strategy-claude', 'journal');
|
|
178
|
+
fs.mkdirSync(orchestrationJournal, { recursive: true });
|
|
179
|
+
// totem-context: writing test journal markdown to an orchestration journal subdir; not a hooks-manager bypass.
|
|
180
|
+
fs.writeFileSync(path.join(orchestrationJournal, 'claude-0042-orchestration-active.md'), '');
|
|
181
|
+
// Substrate clone with a newer-named entry (proves substrate is the fallback,
|
|
182
|
+
// not preferred — orchestration wins regardless of substrate's file ordering).
|
|
183
|
+
const substrateDir = path.join(parent, 'totem-substrate');
|
|
184
|
+
fs.mkdirSync(substrateDir);
|
|
185
|
+
// totem-context: substrate fixture build — shape gate, not gitRoot probe.
|
|
186
|
+
fs.mkdirSync(path.join(substrateDir, '.git'));
|
|
187
|
+
fs.mkdirSync(path.join(substrateDir, '.handoff'));
|
|
188
|
+
const substrateJournal = path.join(substrateDir, '.journal');
|
|
189
|
+
fs.mkdirSync(substrateJournal);
|
|
190
|
+
// totem-context: writing test journal markdown to a journal subdir; not a hooks-manager bypass.
|
|
191
|
+
fs.writeFileSync(path.join(substrateJournal, '2099-12-31-substrate-newer.md'), '');
|
|
192
|
+
const repo = path.join(parent, 'repo');
|
|
193
|
+
fs.mkdirSync(repo);
|
|
194
|
+
const ptr = extractStrategyPointer(repo, { strategyRoot: strategyDir });
|
|
195
|
+
expect(ptr.resolved).toBe(true);
|
|
196
|
+
if (ptr.resolved) {
|
|
197
|
+
// Orchestration layer wins even though substrate has a newer-named file.
|
|
198
|
+
expect(ptr.latestJournal).toBe('claude-0042-orchestration-active.md');
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
finally {
|
|
202
|
+
// totem-context: matches established cleanup pattern in this file (12 existing instances at lines 31, 81, 209, …); centralization is out-of-scope follow-up.
|
|
203
|
+
fs.rmSync(tmp, RM_OPTS);
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
it('reads from strategy-gemini journal when only the Gemini agent is populated (GCA R2)', () => {
|
|
207
|
+
// Strategy repo can host both strategy-claude and strategy-gemini;
|
|
208
|
+
// the extractor must surface the latest from either. This test
|
|
209
|
+
// covers the Gemini-only case: strategy-claude has no journal tree;
|
|
210
|
+
// strategy-gemini has the live entries.
|
|
211
|
+
// totem-context: test fixture only; agents do not consume this temp dir.
|
|
212
|
+
const tmp = fs.mkdtempSync(path.join(os.tmpdir(), 'totem-mcp-strat-gemini-'));
|
|
213
|
+
try {
|
|
214
|
+
const parent = path.join(tmp, 'parent');
|
|
215
|
+
fs.mkdirSync(parent);
|
|
216
|
+
const strategyDir = path.join(parent, 'totem-strategy-clone');
|
|
217
|
+
fs.mkdirSync(strategyDir);
|
|
218
|
+
// Only strategy-gemini has a populated journal.
|
|
219
|
+
const geminiJournal = path.join(strategyDir, '.totem', 'orchestration', 'strategy-gemini', 'journal');
|
|
220
|
+
fs.mkdirSync(geminiJournal, { recursive: true });
|
|
221
|
+
// totem-context: writing test journal markdown to an orchestration journal subdir; not a hooks-manager bypass.
|
|
222
|
+
fs.writeFileSync(path.join(geminiJournal, 'gemini-0007-strategy-active.md'), '');
|
|
223
|
+
const repo = path.join(parent, 'repo');
|
|
224
|
+
fs.mkdirSync(repo);
|
|
225
|
+
const ptr = extractStrategyPointer(repo, { strategyRoot: strategyDir });
|
|
226
|
+
expect(ptr.resolved).toBe(true);
|
|
227
|
+
if (ptr.resolved) {
|
|
228
|
+
expect(ptr.latestJournal).toBe('gemini-0007-strategy-active.md');
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
finally {
|
|
232
|
+
// totem-context: matches established cleanup pattern in this file (12 existing instances at lines 31, 81, 209, …); centralization is out-of-scope follow-up.
|
|
233
|
+
fs.rmSync(tmp, RM_OPTS);
|
|
234
|
+
}
|
|
235
|
+
});
|
|
236
|
+
it('merges strategy-claude and strategy-gemini journals and returns the latest (GCA R2)', () => {
|
|
237
|
+
// Both strategy agents populated; the extractor returns the most-recent
|
|
238
|
+
// entry across both agents. Within an agent's directory the filename
|
|
239
|
+
// counter is monotonic (same `<model>-NNNN-*` prefix), but ACROSS agents
|
|
240
|
+
// mtime is the only reliable axis — alphabetical sort always puts
|
|
241
|
+
// `gemini-*` after `claude-*`, which would falsely report the newest
|
|
242
|
+
// gemini entry as latest even when claude wrote more recently.
|
|
243
|
+
// totem-context: test fixture only; agents do not consume this temp dir.
|
|
244
|
+
const tmp = fs.mkdtempSync(path.join(os.tmpdir(), 'totem-mcp-strat-merged-'));
|
|
245
|
+
try {
|
|
246
|
+
const parent = path.join(tmp, 'parent');
|
|
247
|
+
fs.mkdirSync(parent);
|
|
248
|
+
const strategyDir = path.join(parent, 'totem-strategy-clone');
|
|
249
|
+
fs.mkdirSync(strategyDir);
|
|
250
|
+
const claudeJournal = path.join(strategyDir, '.totem', 'orchestration', 'strategy-claude', 'journal');
|
|
251
|
+
const geminiJournal = path.join(strategyDir, '.totem', 'orchestration', 'strategy-gemini', 'journal');
|
|
252
|
+
fs.mkdirSync(claudeJournal, { recursive: true });
|
|
253
|
+
fs.mkdirSync(geminiJournal, { recursive: true });
|
|
254
|
+
const claudeOlder = path.join(claudeJournal, 'claude-0050-older.md');
|
|
255
|
+
const geminiOlder = path.join(geminiJournal, 'gemini-0001-also-older.md');
|
|
256
|
+
const geminiNewest = path.join(geminiJournal, 'gemini-0050-newest.md');
|
|
257
|
+
// totem-context: writing test journal markdown to an orchestration journal subdir; not a hooks-manager bypass.
|
|
258
|
+
fs.writeFileSync(claudeOlder, '');
|
|
259
|
+
// totem-context: writing test journal markdown to an orchestration journal subdir; not a hooks-manager bypass.
|
|
260
|
+
fs.writeFileSync(geminiOlder, '');
|
|
261
|
+
// totem-context: writing test journal markdown to an orchestration journal subdir; not a hooks-manager bypass.
|
|
262
|
+
fs.writeFileSync(geminiNewest, '');
|
|
263
|
+
// Explicit mtimes — Windows mtime resolution can tie sequential writes
|
|
264
|
+
// at the same millisecond, which would otherwise leave the
|
|
265
|
+
// candidate.sort stable-by-iteration-order (strategy-claude first).
|
|
266
|
+
const now = Date.now() / 1000;
|
|
267
|
+
fs.utimesSync(claudeOlder, now - 7200, now - 7200);
|
|
268
|
+
fs.utimesSync(geminiOlder, now - 3600, now - 3600);
|
|
269
|
+
fs.utimesSync(geminiNewest, now, now);
|
|
270
|
+
const repo = path.join(parent, 'repo');
|
|
271
|
+
fs.mkdirSync(repo);
|
|
272
|
+
const ptr = extractStrategyPointer(repo, { strategyRoot: strategyDir });
|
|
273
|
+
expect(ptr.resolved).toBe(true);
|
|
274
|
+
if (ptr.resolved) {
|
|
275
|
+
expect(ptr.latestJournal).toBe('gemini-0050-newest.md');
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
finally {
|
|
279
|
+
// totem-context: matches established cleanup pattern in this file (12 existing instances at lines 31, 81, 209, …); centralization is out-of-scope follow-up.
|
|
280
|
+
fs.rmSync(tmp, RM_OPTS);
|
|
281
|
+
}
|
|
282
|
+
});
|
|
283
|
+
it('uses mtime — not filename — to break ties across strategy-claude vs strategy-gemini', () => {
|
|
284
|
+
// Cross-agent merge: filename sort across `claude-*` vs `gemini-*`
|
|
285
|
+
// prefixes always puts gemini last alphabetically, so a naive merge-then-
|
|
286
|
+
// alphabetical-sort would pick the latest gemini entry even when claude
|
|
287
|
+
// wrote more recently. Explicit mtimes drive the tiebreak deterministically.
|
|
288
|
+
// totem-context: test fixture only; agents do not consume this temp dir.
|
|
289
|
+
const tmp = fs.mkdtempSync(path.join(os.tmpdir(), 'totem-mcp-strat-mtime-'));
|
|
290
|
+
try {
|
|
291
|
+
const parent = path.join(tmp, 'parent');
|
|
292
|
+
fs.mkdirSync(parent);
|
|
293
|
+
const strategyDir = path.join(parent, 'totem-strategy-clone');
|
|
294
|
+
fs.mkdirSync(strategyDir);
|
|
295
|
+
const claudeJournal = path.join(strategyDir, '.totem', 'orchestration', 'strategy-claude', 'journal');
|
|
296
|
+
const geminiJournal = path.join(strategyDir, '.totem', 'orchestration', 'strategy-gemini', 'journal');
|
|
297
|
+
fs.mkdirSync(claudeJournal, { recursive: true });
|
|
298
|
+
fs.mkdirSync(geminiJournal, { recursive: true });
|
|
299
|
+
const geminiPath = path.join(geminiJournal, 'gemini-0050-older.md');
|
|
300
|
+
const claudePath = path.join(claudeJournal, 'claude-9999-newer.md');
|
|
301
|
+
// totem-context: writing test journal markdown to an orchestration journal subdir; not a hooks-manager bypass.
|
|
302
|
+
fs.writeFileSync(geminiPath, '');
|
|
303
|
+
// totem-context: writing test journal markdown to an orchestration journal subdir; not a hooks-manager bypass.
|
|
304
|
+
fs.writeFileSync(claudePath, '');
|
|
305
|
+
// Explicit mtime ordering: gemini older (1 hour ago), claude newer (now).
|
|
306
|
+
// Naive alphabetical sort would pick `gemini-0050-older.md` because
|
|
307
|
+
// `'c' < 'g'`; mtime tiebreak picks `claude-9999-newer.md`.
|
|
308
|
+
const now = Date.now() / 1000;
|
|
309
|
+
const oneHourAgo = now - 3600;
|
|
310
|
+
fs.utimesSync(geminiPath, oneHourAgo, oneHourAgo);
|
|
311
|
+
fs.utimesSync(claudePath, now, now);
|
|
312
|
+
const repo = path.join(parent, 'repo');
|
|
313
|
+
fs.mkdirSync(repo);
|
|
314
|
+
const ptr = extractStrategyPointer(repo, { strategyRoot: strategyDir });
|
|
315
|
+
expect(ptr.resolved).toBe(true);
|
|
316
|
+
if (ptr.resolved) {
|
|
317
|
+
expect(ptr.latestJournal).toBe('claude-9999-newer.md');
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
finally {
|
|
321
|
+
// totem-context: matches established cleanup pattern in this file (12 existing instances at lines 31, 81, 209, …); centralization is out-of-scope follow-up.
|
|
322
|
+
fs.rmSync(tmp, RM_OPTS);
|
|
323
|
+
}
|
|
324
|
+
});
|
|
325
|
+
it('falls back to substrate when orchestration tree exists but is empty', () => {
|
|
326
|
+
// Proposal 282 partial-presence: if the strategy repo's orchestration
|
|
327
|
+
// tree exists with no journal entries yet (newly-initialized agent),
|
|
328
|
+
// the extractor must fall through to substrate rather than report
|
|
329
|
+
// an empty active layer as authoritative.
|
|
330
|
+
// totem-context: test fixture only; agents do not consume this temp dir.
|
|
331
|
+
const tmp = fs.mkdtempSync(path.join(os.tmpdir(), 'totem-mcp-orch-empty-'));
|
|
332
|
+
try {
|
|
333
|
+
const parent = path.join(tmp, 'parent');
|
|
334
|
+
fs.mkdirSync(parent);
|
|
335
|
+
const strategyDir = path.join(parent, 'totem-strategy-clone');
|
|
336
|
+
fs.mkdirSync(strategyDir);
|
|
337
|
+
// Empty orchestration journal — directory exists but no .md files.
|
|
338
|
+
const orchestrationJournal = path.join(strategyDir, '.totem', 'orchestration', 'strategy-claude', 'journal');
|
|
339
|
+
fs.mkdirSync(orchestrationJournal, { recursive: true });
|
|
340
|
+
// Substrate with an entry — should be the source when orchestration is empty.
|
|
341
|
+
const substrateDir = path.join(parent, 'totem-substrate');
|
|
342
|
+
fs.mkdirSync(substrateDir);
|
|
343
|
+
// totem-context: substrate fixture build — shape gate, not gitRoot probe.
|
|
344
|
+
fs.mkdirSync(path.join(substrateDir, '.git'));
|
|
345
|
+
fs.mkdirSync(path.join(substrateDir, '.handoff'));
|
|
346
|
+
const substrateJournal = path.join(substrateDir, '.journal');
|
|
347
|
+
fs.mkdirSync(substrateJournal);
|
|
348
|
+
// totem-context: writing test journal markdown to a journal subdir; not a hooks-manager bypass.
|
|
349
|
+
fs.writeFileSync(path.join(substrateJournal, '2026-05-04-substrate-archive.md'), '');
|
|
350
|
+
const repo = path.join(parent, 'repo');
|
|
351
|
+
fs.mkdirSync(repo);
|
|
352
|
+
const ptr = extractStrategyPointer(repo, { strategyRoot: strategyDir });
|
|
353
|
+
expect(ptr.resolved).toBe(true);
|
|
354
|
+
if (ptr.resolved) {
|
|
355
|
+
expect(ptr.latestJournal).toBe('2026-05-04-substrate-archive.md');
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
finally {
|
|
359
|
+
// totem-context: matches established cleanup pattern in this file (12 existing instances at lines 31, 81, 209, …); centralization is out-of-scope follow-up.
|
|
360
|
+
fs.rmSync(tmp, RM_OPTS);
|
|
361
|
+
}
|
|
362
|
+
});
|
|
163
363
|
it('falls back to repo-local sediment when substrate is unreachable', () => {
|
|
164
364
|
// Phase C ADR-090 invariant: when substrate is absent, latestJournal
|
|
165
365
|
// reads from repo-local sediment (the now-frozen pre-extraction path).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-extractors.test.js","sourceRoot":"","sources":["../src/state-extractors.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"state-extractors.test.js","sourceRoot":"","sources":["../src/state-extractors.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mmnto/mcp",
|
|
3
|
-
"version": "1.43.
|
|
3
|
+
"version": "1.43.2",
|
|
4
4
|
"description": "MCP server for Totem — AI persistent memory and context layer",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"dotenv": "^16.4.0",
|
|
20
20
|
"jiti": "^2.4.0",
|
|
21
21
|
"zod": "^3.24.0",
|
|
22
|
-
"@mmnto/totem": "1.43.
|
|
22
|
+
"@mmnto/totem": "1.43.2"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@types/node": "^22.0.0",
|