@mneme-ai/core 2.19.32 → 2.19.34

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 (94) hide show
  1. package/dist/apostille/apostille.test.d.ts +2 -0
  2. package/dist/apostille/apostille.test.d.ts.map +1 -0
  3. package/dist/apostille/apostille.test.js +279 -0
  4. package/dist/apostille/apostille.test.js.map +1 -0
  5. package/dist/apostille/index.d.ts +166 -0
  6. package/dist/apostille/index.d.ts.map +1 -0
  7. package/dist/apostille/index.js +432 -0
  8. package/dist/apostille/index.js.map +1 -0
  9. package/dist/autonomic_scheduler/b4_context_shift.test.d.ts +12 -0
  10. package/dist/autonomic_scheduler/b4_context_shift.test.d.ts.map +1 -0
  11. package/dist/autonomic_scheduler/b4_context_shift.test.js +213 -0
  12. package/dist/autonomic_scheduler/b4_context_shift.test.js.map +1 -0
  13. package/dist/autonomic_scheduler/index.d.ts +44 -0
  14. package/dist/autonomic_scheduler/index.d.ts.map +1 -1
  15. package/dist/autonomic_scheduler/index.js +68 -1
  16. package/dist/autonomic_scheduler/index.js.map +1 -1
  17. package/dist/conversation_compiler/b1_extract_decisions.test.d.ts +2 -0
  18. package/dist/conversation_compiler/b1_extract_decisions.test.d.ts.map +1 -0
  19. package/dist/conversation_compiler/b1_extract_decisions.test.js +150 -0
  20. package/dist/conversation_compiler/b1_extract_decisions.test.js.map +1 -0
  21. package/dist/conversation_compiler/index.d.ts +19 -1
  22. package/dist/conversation_compiler/index.d.ts.map +1 -1
  23. package/dist/conversation_compiler/index.js +128 -39
  24. package/dist/conversation_compiler/index.js.map +1 -1
  25. package/dist/cosmic/aurelian_v1933.test.d.ts +2 -0
  26. package/dist/cosmic/aurelian_v1933.test.d.ts.map +1 -0
  27. package/dist/cosmic/aurelian_v1933.test.js +82 -0
  28. package/dist/cosmic/aurelian_v1933.test.js.map +1 -0
  29. package/dist/cosmic/aurelian_v1934.test.d.ts +2 -0
  30. package/dist/cosmic/aurelian_v1934.test.d.ts.map +1 -0
  31. package/dist/cosmic/aurelian_v1934.test.js +83 -0
  32. package/dist/cosmic/aurelian_v1934.test.js.map +1 -0
  33. package/dist/cosmic/v1933_integration.test.d.ts +2 -0
  34. package/dist/cosmic/v1933_integration.test.d.ts.map +1 -0
  35. package/dist/cosmic/v1933_integration.test.js +128 -0
  36. package/dist/cosmic/v1933_integration.test.js.map +1 -0
  37. package/dist/cosmic/v1934_integration.test.d.ts +2 -0
  38. package/dist/cosmic/v1934_integration.test.d.ts.map +1 -0
  39. package/dist/cosmic/v1934_integration.test.js +150 -0
  40. package/dist/cosmic/v1934_integration.test.js.map +1 -0
  41. package/dist/eternity/eternity.test.d.ts +2 -0
  42. package/dist/eternity/eternity.test.d.ts.map +1 -0
  43. package/dist/eternity/eternity.test.js +177 -0
  44. package/dist/eternity/eternity.test.js.map +1 -0
  45. package/dist/eternity/index.d.ts +183 -0
  46. package/dist/eternity/index.d.ts.map +1 -0
  47. package/dist/eternity/index.js +255 -0
  48. package/dist/eternity/index.js.map +1 -0
  49. package/dist/index.d.ts +6 -0
  50. package/dist/index.d.ts.map +1 -1
  51. package/dist/index.js +14 -0
  52. package/dist/index.js.map +1 -1
  53. package/dist/outcome_market/index.d.ts +212 -0
  54. package/dist/outcome_market/index.d.ts.map +1 -0
  55. package/dist/outcome_market/index.js +344 -0
  56. package/dist/outcome_market/index.js.map +1 -0
  57. package/dist/outcome_market/outcome_market.test.d.ts +2 -0
  58. package/dist/outcome_market/outcome_market.test.d.ts.map +1 -0
  59. package/dist/outcome_market/outcome_market.test.js +236 -0
  60. package/dist/outcome_market/outcome_market.test.js.map +1 -0
  61. package/dist/tool_browser/index.d.ts +128 -0
  62. package/dist/tool_browser/index.d.ts.map +1 -0
  63. package/dist/tool_browser/index.js +218 -0
  64. package/dist/tool_browser/index.js.map +1 -0
  65. package/dist/tool_browser/tool_browser.test.d.ts +2 -0
  66. package/dist/tool_browser/tool_browser.test.d.ts.map +1 -0
  67. package/dist/tool_browser/tool_browser.test.js +167 -0
  68. package/dist/tool_browser/tool_browser.test.js.map +1 -0
  69. package/dist/tool_tier/index.d.ts.map +1 -1
  70. package/dist/tool_tier/index.js +23 -5
  71. package/dist/tool_tier/index.js.map +1 -1
  72. package/dist/truth_sensor_pack/index.d.ts +105 -0
  73. package/dist/truth_sensor_pack/index.d.ts.map +1 -0
  74. package/dist/truth_sensor_pack/index.js +201 -0
  75. package/dist/truth_sensor_pack/index.js.map +1 -0
  76. package/dist/truth_sensor_pack/truth_sensor_pack.test.d.ts +2 -0
  77. package/dist/truth_sensor_pack/truth_sensor_pack.test.d.ts.map +1 -0
  78. package/dist/truth_sensor_pack/truth_sensor_pack.test.js +153 -0
  79. package/dist/truth_sensor_pack/truth_sensor_pack.test.js.map +1 -0
  80. package/dist/whats_new.d.ts.map +1 -1
  81. package/dist/whats_new.js +16 -0
  82. package/dist/whats_new.js.map +1 -1
  83. package/dist/wrapper_genesis/index.d.ts.map +1 -1
  84. package/dist/wrapper_genesis/index.js +62 -0
  85. package/dist/wrapper_genesis/index.js.map +1 -1
  86. package/dist/zk_fairness/index.d.ts +217 -0
  87. package/dist/zk_fairness/index.d.ts.map +1 -0
  88. package/dist/zk_fairness/index.js +349 -0
  89. package/dist/zk_fairness/index.js.map +1 -0
  90. package/dist/zk_fairness/zk_fairness.test.d.ts +2 -0
  91. package/dist/zk_fairness/zk_fairness.test.d.ts.map +1 -0
  92. package/dist/zk_fairness/zk_fairness.test.js +223 -0
  93. package/dist/zk_fairness/zk_fairness.test.js.map +1 -0
  94. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/outcome_market/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=outcome_market.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outcome_market.test.d.ts","sourceRoot":"","sources":["../../src/outcome_market/outcome_market.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,236 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { postTask, submitBid, verifyBid, verifyTask, pickWinner, scoreOutcome, freshReputation, updateReputation, reputationScore, bayesianMean, injectTrickTest, shouldInjectTrick, federatedLeaderboard, computeMarketStats, formatMarketLine, OUTCOME_MARKET_TUNABLES, } from "./index.js";
3
+ const SECRET = "market-test-99";
4
+ describe("v2.19.34 OUTCOME MARKET -- task + bid + verify", () => {
5
+ it("postTask creates HMAC-signed task; verifyTask passes", () => {
6
+ const t = postTask({ intent: "audit my PR", acceptanceCriteria: ["tests pass"], maxBudgetCents: 100, postedBy: "user", postedAtMs: 1, secret: SECRET });
7
+ expect(verifyTask(t, SECRET)).toBe(true);
8
+ expect(t.auctionType).toBe("vickrey");
9
+ });
10
+ it("submitBid returns null on price>budget / future ts / negative price", () => {
11
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 100, postedBy: "u", postedAtMs: 1, bidWindowMs: 100, secret: SECRET });
12
+ expect(submitBid({ task: t, vendor: "v", priceCents: 200, estimatedLatencyMs: 1, confidence: 0.5, submittedAtMs: 50, secret: SECRET })).toBeNull();
13
+ expect(submitBid({ task: t, vendor: "v", priceCents: 50, estimatedLatencyMs: 1, confidence: 0.5, submittedAtMs: 9999, secret: SECRET })).toBeNull();
14
+ expect(submitBid({ task: t, vendor: "v", priceCents: -1, estimatedLatencyMs: 1, confidence: 0.5, submittedAtMs: 50, secret: SECRET })).toBeNull();
15
+ expect(submitBid({ task: t, vendor: "v", priceCents: 50, estimatedLatencyMs: 1, confidence: 1.5, submittedAtMs: 50, secret: SECRET })).toBeNull();
16
+ expect(submitBid({ task: t, vendor: "", priceCents: 50, estimatedLatencyMs: 1, confidence: 0.5, submittedAtMs: 50, secret: SECRET })).toBeNull();
17
+ });
18
+ it("verifyBid passes on legit + rejects tamper", () => {
19
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 100, postedBy: "u", postedAtMs: 1, secret: SECRET });
20
+ const b = submitBid({ task: t, vendor: "v", priceCents: 10, estimatedLatencyMs: 1, confidence: 0.7, submittedAtMs: 2, secret: SECRET });
21
+ expect(verifyBid(b, SECRET)).toBe(true);
22
+ const tampered = { ...b, priceCents: 1 };
23
+ expect(verifyBid(tampered, SECRET)).toBe(false);
24
+ });
25
+ });
26
+ describe("v2.19.34 OUTCOME MARKET -- Vickrey 2nd-price auction", () => {
27
+ it("Vickrey: winner pays SECOND-lowest score's PRICE (not own bid)", () => {
28
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 1000, postedBy: "u", postedAtMs: 1, secret: SECRET, bidWindowMs: 100 });
29
+ const bids = [
30
+ submitBid({ task: t, vendor: "v1", priceCents: 100, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 50, secret: SECRET }),
31
+ submitBid({ task: t, vendor: "v2", priceCents: 200, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 50, secret: SECRET }),
32
+ submitBid({ task: t, vendor: "v3", priceCents: 300, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 50, secret: SECRET }),
33
+ ];
34
+ const r = pickWinner({ task: t, bids, secret: SECRET });
35
+ expect(r.winnerVendor).toBe("v1"); // lowest price
36
+ expect(r.effectivePriceCents).toBe(200); // pays 2nd-lowest price
37
+ expect(r.rationale).toContain("vickrey");
38
+ });
39
+ it("first-price auction: winner pays own bid", () => {
40
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 1000, postedBy: "u", postedAtMs: 1, auctionType: "first_price", secret: SECRET });
41
+ const bids = [
42
+ submitBid({ task: t, vendor: "v1", priceCents: 100, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 2, secret: SECRET }),
43
+ submitBid({ task: t, vendor: "v2", priceCents: 200, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 2, secret: SECRET }),
44
+ ];
45
+ const r = pickWinner({ task: t, bids, secret: SECRET });
46
+ expect(r.effectivePriceCents).toBe(100);
47
+ expect(r.rationale).toContain("first-price");
48
+ });
49
+ it("single-bid Vickrey falls back to first-price", () => {
50
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 1000, postedBy: "u", postedAtMs: 1, secret: SECRET });
51
+ const bids = [submitBid({ task: t, vendor: "v", priceCents: 50, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 2, secret: SECRET })];
52
+ const r = pickWinner({ task: t, bids, secret: SECRET });
53
+ expect(r.effectivePriceCents).toBe(50);
54
+ });
55
+ it("no bids → winnerVendor=null", () => {
56
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 100, postedBy: "u", postedAtMs: 1, secret: SECRET });
57
+ const r = pickWinner({ task: t, bids: [], secret: SECRET });
58
+ expect(r.winnerVendor).toBeNull();
59
+ expect(r.validBidCount).toBe(0);
60
+ });
61
+ it("bond = effectivePriceCents (winner must post collateral)", () => {
62
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 1000, postedBy: "u", postedAtMs: 1, secret: SECRET });
63
+ const bids = [
64
+ submitBid({ task: t, vendor: "v1", priceCents: 100, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 2, secret: SECRET }),
65
+ submitBid({ task: t, vendor: "v2", priceCents: 200, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 2, secret: SECRET }),
66
+ ];
67
+ const r = pickWinner({ task: t, bids, secret: SECRET });
68
+ expect(r.bondCents).toBe(r.effectivePriceCents);
69
+ });
70
+ it("forged bids dropped silently", () => {
71
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 1000, postedBy: "u", postedAtMs: 1, secret: SECRET });
72
+ const real = submitBid({ task: t, vendor: "v1", priceCents: 100, estimatedLatencyMs: 10, confidence: 0.9, submittedAtMs: 2, secret: SECRET });
73
+ const forged = { ...real, vendor: "evil" };
74
+ const r = pickWinner({ task: t, bids: [real, forged], secret: SECRET });
75
+ expect(r.validBidCount).toBe(1);
76
+ });
77
+ });
78
+ describe("v2.19.34 OUTCOME MARKET -- reputation Bayesian half-life", () => {
79
+ it("freshReputation has prior alpha=1 beta=1 → mean 0.5", () => {
80
+ const r = freshReputation("v", SECRET);
81
+ expect(bayesianMean(r.alpha, r.beta)).toBe(0.5);
82
+ });
83
+ it("success increments alpha; failure increments beta", () => {
84
+ let r = freshReputation("v", SECRET);
85
+ for (let i = 0; i < 5; i++) {
86
+ const outcome = {
87
+ v: 1, taskId: `t${i}`, vendor: "v", success: true, latencyActualMs: 100,
88
+ costActualCents: 50, caughtLying: false, scoredAtMs: i, sig: "x".repeat(64),
89
+ };
90
+ r = updateReputation({ reputation: r, outcome, nowMs: i, secret: SECRET });
91
+ }
92
+ expect(r.alpha).toBeGreaterThan(r.beta);
93
+ expect(bayesianMean(r.alpha, r.beta)).toBeGreaterThan(0.5);
94
+ });
95
+ it("HALF-LIFE: 90 days later, alpha/beta decay 50% toward prior", () => {
96
+ let r = freshReputation("v", SECRET);
97
+ const start = 1_000_000_000_000;
98
+ for (let i = 0; i < 10; i++) {
99
+ const outcome = {
100
+ v: 1, taskId: `t${i}`, vendor: "v", success: true, latencyActualMs: 100,
101
+ costActualCents: 50, caughtLying: false, scoredAtMs: start, sig: "x".repeat(64),
102
+ };
103
+ r = updateReputation({ reputation: r, outcome, nowMs: start, secret: SECRET });
104
+ }
105
+ const before = r.alpha;
106
+ // Update 90 days later
107
+ const noopOutcome = {
108
+ v: 1, taskId: "t", vendor: "v", success: true, latencyActualMs: 0,
109
+ costActualCents: 0, caughtLying: false, scoredAtMs: start + 90 * 86400 * 1000, sig: "x".repeat(64),
110
+ };
111
+ r = updateReputation({ reputation: r, outcome: noopOutcome, nowMs: start + 90 * 86400 * 1000, secret: SECRET });
112
+ // alpha should be ~ (before - 1) * 0.5 + 1 + 1 (the +1 for success)
113
+ const expected = (before - 1) * 0.5 + 1 + 1;
114
+ expect(Math.abs(r.alpha - expected)).toBeLessThan(0.01);
115
+ });
116
+ it("caughtLying adds LIAR_PENALTY (=50) strikes", () => {
117
+ let r = freshReputation("v", SECRET);
118
+ const out = {
119
+ v: 1, taskId: "t", vendor: "v", success: false, latencyActualMs: 0,
120
+ costActualCents: 0, caughtLying: true, scoredAtMs: 0, sig: "x".repeat(64),
121
+ };
122
+ r = updateReputation({ reputation: r, outcome: out, nowMs: 0, secret: SECRET });
123
+ expect(r.liarStrikes).toBe(OUTCOME_MARKET_TUNABLES.LIAR_PENALTY);
124
+ expect(reputationScore(r)).toBeLessThan(0.5);
125
+ });
126
+ });
127
+ describe("v2.19.34 OUTCOME MARKET -- trick test injection", () => {
128
+ it("shouldInjectTrick fires on every Nth task (N=TRICK_TEST_INTERVAL)", () => {
129
+ expect(shouldInjectTrick(0)).toBe(false);
130
+ expect(shouldInjectTrick(1)).toBe(false);
131
+ expect(shouldInjectTrick(OUTCOME_MARKET_TUNABLES.TRICK_TEST_INTERVAL)).toBe(true);
132
+ expect(shouldInjectTrick(OUTCOME_MARKET_TUNABLES.TRICK_TEST_INTERVAL * 2)).toBe(true);
133
+ });
134
+ it("injectTrickTest appends a deterministic trick on N-th task", () => {
135
+ const r = injectTrickTest(["normal criterion"], OUTCOME_MARKET_TUNABLES.TRICK_TEST_INTERVAL);
136
+ expect(r.criteria.length).toBe(2);
137
+ expect(r.trickAtIndex).toBe(1);
138
+ expect(r.trickText).toBeTruthy();
139
+ });
140
+ it("injectTrickTest no-op on non-Nth", () => {
141
+ const r = injectTrickTest(["x"], 1);
142
+ expect(r.criteria.length).toBe(1);
143
+ expect(r.trickAtIndex).toBe(-1);
144
+ });
145
+ it("DETERMINISTIC: same ordinal → same trick", () => {
146
+ const a = injectTrickTest(["x"], OUTCOME_MARKET_TUNABLES.TRICK_TEST_INTERVAL);
147
+ const b = injectTrickTest(["x"], OUTCOME_MARKET_TUNABLES.TRICK_TEST_INTERVAL);
148
+ expect(a.trickText).toBe(b.trickText);
149
+ });
150
+ });
151
+ describe("v2.19.34 OUTCOME MARKET -- federated leaderboard", () => {
152
+ it("sorts by reputationScore desc, then taskCount desc, then alpha", () => {
153
+ const reps = [
154
+ { ...freshReputation("zoro", SECRET), alpha: 9, beta: 1, totalTasksWon: 10 },
155
+ { ...freshReputation("ace", SECRET), alpha: 5, beta: 5, totalTasksWon: 20 },
156
+ { ...freshReputation("bob", SECRET), alpha: 5, beta: 5, totalTasksWon: 10 },
157
+ ];
158
+ const board = federatedLeaderboard({ reputations: reps, nowMs: 0 });
159
+ expect(board[0].vendor).toBe("zoro"); // highest mean
160
+ expect(board[1].vendor).toBe("ace"); // same mean as bob but more tasks
161
+ expect(board[2].vendor).toBe("bob");
162
+ });
163
+ it("limit honored", () => {
164
+ const reps = Array.from({ length: 10 }, (_, i) => freshReputation(`v${i}`, SECRET));
165
+ const b = federatedLeaderboard({ reputations: reps, limit: 3 });
166
+ expect(b.length).toBe(3);
167
+ });
168
+ });
169
+ describe("v2.19.34 OUTCOME MARKET -- 25,000 FUZZ ITERATIONS", () => {
170
+ it("25,000 random tasks + bids + outcomes never crash + integrity preserved", () => {
171
+ const N = 25_000;
172
+ const reps = new Map();
173
+ let totalTasks = 0, totalBids = 0, totalOutcomes = 0;
174
+ for (let i = 0; i < N; i++) {
175
+ const t = postTask({
176
+ intent: `task ${i}`, acceptanceCriteria: ["x"],
177
+ maxBudgetCents: 100 + (i % 1000), postedBy: `u${i % 100}`,
178
+ postedAtMs: i, bidWindowMs: 10_000, secret: SECRET,
179
+ });
180
+ totalTasks++;
181
+ const bids = [];
182
+ const bidderCount = 1 + (i % 5);
183
+ for (let j = 0; j < bidderCount; j++) {
184
+ const vendor = `v${(i + j) % 20}`;
185
+ if (!reps.has(vendor))
186
+ reps.set(vendor, freshReputation(vendor, SECRET));
187
+ const b = submitBid({
188
+ task: t, vendor,
189
+ priceCents: 1 + ((i + j) % t.maxBudgetCents),
190
+ estimatedLatencyMs: 10 + ((i + j) % 1000),
191
+ confidence: ((i + j) % 100) / 100,
192
+ submittedAtMs: i + j,
193
+ secret: SECRET,
194
+ });
195
+ if (b) {
196
+ bids.push(b);
197
+ totalBids++;
198
+ }
199
+ }
200
+ const winner = pickWinner({ task: t, bids, reputations: Array.from(reps.values()), secret: SECRET });
201
+ if (winner.winnerVendor) {
202
+ const outcome = scoreOutcome({
203
+ task: t, result: winner,
204
+ success: i % 7 !== 0, // ~85% success rate
205
+ latencyActualMs: 50,
206
+ costActualCents: winner.effectivePriceCents,
207
+ caughtLying: i % 100 === 0,
208
+ scoredAtMs: i + 100,
209
+ secret: SECRET,
210
+ });
211
+ totalOutcomes++;
212
+ const r = reps.get(winner.winnerVendor);
213
+ reps.set(winner.winnerVendor, updateReputation({ reputation: r, outcome, nowMs: i + 100, secret: SECRET }));
214
+ }
215
+ }
216
+ expect(totalTasks).toBe(N);
217
+ expect(totalBids).toBeGreaterThan(0);
218
+ expect(totalOutcomes).toBeGreaterThan(0);
219
+ const board = federatedLeaderboard({ reputations: Array.from(reps.values()) });
220
+ expect(board.length).toBeGreaterThan(0);
221
+ }, 60_000);
222
+ it("computeMarketStats counts correctly across 1000 ops", () => {
223
+ const tasks = [];
224
+ const bids = [];
225
+ const outcomes = [];
226
+ const reps = [];
227
+ for (let i = 0; i < 1000; i++) {
228
+ const t = postTask({ intent: "x", acceptanceCriteria: [], maxBudgetCents: 100, postedBy: "u", postedAtMs: i, secret: SECRET });
229
+ tasks.push(t);
230
+ }
231
+ const s = computeMarketStats({ tasks, bids, outcomes, reputations: reps });
232
+ expect(s.totalTasks).toBe(1000);
233
+ expect(formatMarketLine(s)).toContain("MARKET");
234
+ });
235
+ });
236
+ //# sourceMappingURL=outcome_market.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outcome_market.test.js","sourceRoot":"","sources":["../../src/outcome_market/outcome_market.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ /**
2
+ * v2.19.33 B3 fix — MNEME TOOL BROWSER (discoverability for 600+ tools)
3
+ *
4
+ * User-audit diagnosis (2026-05-17):
5
+ * "STARTER tier เล็กไป (13/594 = 2.2%) ... 97.8% hidden from default view.
6
+ * ปัญหาแม่นยำคือ discoverability ไม่ใช่ catalog size.
7
+ * Wisdom fix:
8
+ * - expand STARTER ไป ~30-40 tools (~5-7%)
9
+ * - เพิ่ม mneme browse — interactive TUI explorer ของ 594 tools
10
+ * - เพิ่ม mneme suggest — repo-aware tool recommendations
11
+ * - wisdom: discoverability = curated tour, not just curated subset"
12
+ *
13
+ * v2.19.33 ships two pure-function helpers + 2 MCP wrappers:
14
+ *
15
+ * browseCatalog({tier?, family?, query?, limit?, offset?})
16
+ * → paginated list of tool descriptions filtered + sorted by tier
17
+ * → caller (CLI / MCP) renders the page
18
+ *
19
+ * suggestTools({recentActions?, repoSignals?, intent?, limit?})
20
+ * → returns top-N tool recommendations based on:
21
+ * - recent CLI activity (tail of .mneme/cli-activity.jsonl)
22
+ * - repo signals (presence of package.json / Cargo.toml / git history)
23
+ * - explicit intent string
24
+ * → SCORED + sorted; deterministic given the same input
25
+ *
26
+ * Both stay pure (no I/O). The caller supplies the catalog snapshot +
27
+ * activity tail; this module ranks + filters.
28
+ *
29
+ * Composes onto:
30
+ * - v2.19.24 TOOL TIER (consumes Tier classification)
31
+ * - v2.19.32 HANDOFF SNAPSHOT (recentActivity format reused)
32
+ *
33
+ * Honest scope:
34
+ * - PURE FUNCTION. Never throws. Caller supplies I/O.
35
+ * - Deterministic ranking (no Math.random in scoring).
36
+ * - 24/7 safe: 1000 random browse/suggest calls never crash.
37
+ */
38
+ declare const PROTOCOL_VERSION: 1;
39
+ export interface ToolCatalogEntry {
40
+ name: string;
41
+ description?: string;
42
+ category?: string;
43
+ tier?: "starter" | "explorer" | "deep" | "experimental";
44
+ triggers?: string[];
45
+ }
46
+ export interface BrowsePage {
47
+ v: typeof PROTOCOL_VERSION;
48
+ totalMatches: number;
49
+ pageOffset: number;
50
+ pageLimit: number;
51
+ entries: ToolCatalogEntry[];
52
+ /** ASCII summary line — "🔎 BROWSE 32 of 647 tools (page 1/21)". */
53
+ pulseLine: string;
54
+ }
55
+ export interface BrowseInput {
56
+ catalog: ToolCatalogEntry[];
57
+ /** Filter to a tier; default = all tiers. */
58
+ tier?: "starter" | "explorer" | "deep" | "experimental";
59
+ /** Filter to a family prefix (e.g., "synapse" matches mneme.synapse.*). */
60
+ family?: string;
61
+ /** Substring search across name + description + triggers. */
62
+ query?: string;
63
+ /** Max entries per page (default 30). */
64
+ limit?: number;
65
+ /** Pagination offset (default 0). */
66
+ offset?: number;
67
+ }
68
+ /** Paginated catalog browse. Pure; no I/O. */
69
+ export declare function browseCatalog(input: BrowseInput): BrowsePage;
70
+ export interface ActivityRecord {
71
+ action: string;
72
+ ts: number;
73
+ }
74
+ export interface RepoSignals {
75
+ hasPackageJson?: boolean;
76
+ hasCargoToml?: boolean;
77
+ hasGoMod?: boolean;
78
+ hasPyprojectToml?: boolean;
79
+ hasDotGit?: boolean;
80
+ hasGithubActions?: boolean;
81
+ hasDockerfile?: boolean;
82
+ recentCommitCount?: number;
83
+ hasUncommittedChanges?: boolean;
84
+ /** Languages detected (caller fills from file scan). */
85
+ languages?: string[];
86
+ }
87
+ export interface SuggestInput {
88
+ catalog: ToolCatalogEntry[];
89
+ recentActions?: ActivityRecord[];
90
+ repoSignals?: RepoSignals;
91
+ /** Optional natural-language intent ("I want to audit my last commit"). */
92
+ intent?: string;
93
+ /** Max suggestions to return (default 5). */
94
+ limit?: number;
95
+ }
96
+ export interface SuggestionEntry {
97
+ tool: ToolCatalogEntry;
98
+ score: number;
99
+ reasons: string[];
100
+ }
101
+ export interface SuggestionResult {
102
+ v: typeof PROTOCOL_VERSION;
103
+ suggestions: SuggestionEntry[];
104
+ pulseLine: string;
105
+ }
106
+ /**
107
+ * Suggest top-N tools for the caller's current context.
108
+ * Deterministic scoring: same inputs → same suggestions in same order.
109
+ */
110
+ export declare function suggestTools(input: SuggestInput): SuggestionResult;
111
+ export interface BrowseStats {
112
+ starterCount: number;
113
+ explorerCount: number;
114
+ deepCount: number;
115
+ experimentalCount: number;
116
+ totalTools: number;
117
+ starterPct: number;
118
+ }
119
+ export declare function computeBrowseStats(catalog: ToolCatalogEntry[]): BrowseStats;
120
+ export declare function formatBrowseStatsLine(s: BrowseStats): string;
121
+ export declare const TOOL_BROWSER_TUNABLES: Readonly<{
122
+ PROTOCOL_VERSION: 1;
123
+ DEFAULT_PAGE_LIMIT: 30;
124
+ MAX_PAGE_LIMIT: 200;
125
+ DEFAULT_SUGGEST_LIMIT: 5;
126
+ }>;
127
+ export {};
128
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tool_browser/index.ts"],"names":[],"mappings":"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"}