@cortexkit/opencode-magic-context 0.49.23 → 0.49.24

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 (102) hide show
  1. package/README.md +0 -26
  2. package/dist/agents/permissions.d.ts +8 -3
  3. package/dist/agents/permissions.d.ts.map +1 -1
  4. package/dist/auto-search-worker.js +4 -4
  5. package/dist/chunk-embedding-write-worker.js +4 -4
  6. package/dist/{compartment-chunk-embedding-he60aaa2.js → compartment-chunk-embedding-eypvn607.js} +3 -3
  7. package/dist/{conflict-warning-hook-2r32hyx6.js → conflict-warning-hook-a27bhggg.js} +4 -4
  8. package/dist/{context-j7hp43a0.js → context-tvrjhnmj.js} +17 -17
  9. package/dist/{embedding-backfill-dtke6tck.js → embedding-backfill-vddgmem3.js} +5 -5
  10. package/dist/features/magic-context/dreamer/primer-seed.d.ts.map +1 -1
  11. package/dist/hooks/magic-context/ask-answer-notice.d.ts +25 -0
  12. package/dist/hooks/magic-context/ask-answer-notice.d.ts.map +1 -0
  13. package/dist/hooks/magic-context/compartment-runner-incremental.d.ts +1 -1
  14. package/dist/hooks/magic-context/compartment-runner-incremental.d.ts.map +1 -1
  15. package/dist/hooks/magic-context/module-wire.d.ts.map +1 -1
  16. package/dist/hooks/magic-context/protected-tail-boundary.d.ts +8 -0
  17. package/dist/hooks/magic-context/protected-tail-boundary.d.ts.map +1 -1
  18. package/dist/hooks/magic-context/read-session-chunk.d.ts.map +1 -1
  19. package/dist/hooks/magic-context/read-session-raw.d.ts +10 -0
  20. package/dist/hooks/magic-context/read-session-raw.d.ts.map +1 -1
  21. package/dist/{index-syaazvy2.js → index-21bkd3m6.js} +5 -5
  22. package/dist/{index-1gtfne2c.js → index-2haxh8h3.js} +1 -1
  23. package/dist/{index-m32esgmj.js → index-3d5wnkq7.js} +1 -1
  24. package/dist/{index-j32jj2t8.js → index-57jf5ztp.js} +3 -3
  25. package/dist/{index-11gzxvf4.js → index-6g7tyb6e.js} +39 -34
  26. package/dist/{index-jmq8kfe7.js → index-7516anfj.js} +4 -4
  27. package/dist/{index-jfem3dgz.js → index-7tdtpqrg.js} +5 -1
  28. package/dist/{index-1kbznkft.js → index-8e9qsnrw.js} +7 -7
  29. package/dist/{index-ksq50rg0.js → index-c9zrgcnt.js} +1 -1
  30. package/dist/{index-y76rhsnr.js → index-dds7cxhz.js} +44 -25
  31. package/dist/{index-66eby7hx.js → index-jcr6pe7z.js} +1 -1
  32. package/dist/{index-ffzhwfzy.js → index-jd0y50w3.js} +3 -3
  33. package/dist/{index-a9zvn5fe.js → index-jrjr58ez.js} +2 -2
  34. package/dist/{index-mnnkgq0q.js → index-p6evxfcc.js} +3 -3
  35. package/dist/{index-x6cbrv9h.js → index-szf8r0ba.js} +1 -1
  36. package/dist/{index-mnhcdfxg.js → index-t1zk694n.js} +78 -6
  37. package/dist/{index-rxqr723x.js → index-t6j3qxnd.js} +1 -1
  38. package/dist/{index-zy67whjr.js → index-z05n7702.js} +1 -1
  39. package/dist/{index-3svaejkh.js → index-z928hmnp.js} +1 -1
  40. package/dist/index.js +31 -31
  41. package/dist/{message-fts-rowid-map-e79b7b6x.js → message-fts-rowid-map-9e1getgs.js} +2 -2
  42. package/dist/{message-index-4q8ek2fc.js → message-index-1sgzev6c.js} +6 -6
  43. package/dist/{message-index-bounded-rydsg9r5.js → message-index-bounded-k8pgrxad.js} +6 -6
  44. package/dist/migration-worker.js +3 -3
  45. package/dist/{project-embedding-registry-hn529988.js → project-embedding-registry-rstzmb60.js} +4 -4
  46. package/dist/raw-ordinal-warmup-worker.js +6 -6
  47. package/dist/{read-session-chunk-t039f0m5.js → read-session-chunk-q9z6s48t.js} +3 -3
  48. package/dist/{read-session-raw-aw6jgvwg.js → read-session-raw-s4amywnh.js} +3 -1
  49. package/dist/{recomp-orchestrator-hbm53jj5.js → recomp-orchestrator-hr8ddk8z.js} +13 -13
  50. package/dist/{search-hea079d7.js → search-3zjjmc60.js} +10 -10
  51. package/dist/{search-archive-weh164mh.js → search-archive-c00etw7k.js} +4 -4
  52. package/dist/{send-session-notification-gqzkz7da.js → send-session-notification-ygj4mja0.js} +3 -3
  53. package/dist/shared/slow-test.d.ts +7 -0
  54. package/dist/shared/slow-test.d.ts.map +1 -0
  55. package/dist/tools/ctx-memory/tools.d.ts.map +1 -1
  56. package/dist/tools/ctx-note/tools.d.ts.map +1 -1
  57. package/dist/tools/parameter-descriptions.d.ts +6 -6
  58. package/dist/tools/parameter-descriptions.d.ts.map +1 -1
  59. package/dist/{transform-postprocess-phase-0b04tm1p.js → transform-postprocess-phase-rredw6bz.js} +13 -13
  60. package/dist/v2/auto-search-worker.js +4 -4
  61. package/dist/v2/chunk-embedding-write-worker.js +4 -4
  62. package/dist/v2/{compartment-chunk-embedding-8jjmcgeg.js → compartment-chunk-embedding-tk6g4q80.js} +3 -3
  63. package/dist/v2/{context-ea3x7smm.js → context-zbydzq4g.js} +37 -32
  64. package/dist/v2/{embedding-backfill-5e74ae0m.js → embedding-backfill-w5qp7t28.js} +5 -5
  65. package/dist/v2/{message-fts-rowid-map-n8fdg2ja.js → message-fts-rowid-map-pqk3a55v.js} +2 -2
  66. package/dist/v2/{message-index-qz9wdp82.js → message-index-5gnnn64b.js} +5 -5
  67. package/dist/v2/{message-index-bounded-8rcd7qq9.js → message-index-bounded-a9xa8wsq.js} +5 -5
  68. package/dist/v2/migration-worker.js +3 -3
  69. package/dist/v2/{project-embedding-registry-v38q4xd5.js → project-embedding-registry-e7zftfvj.js} +4 -4
  70. package/dist/v2/raw-ordinal-warmup-worker.js +6 -6
  71. package/dist/v2/{read-session-chunk-wazfyxcg.js → read-session-chunk-qqvda7zv.js} +2 -2
  72. package/dist/v2/{read-session-raw-b70cpwzj.js → read-session-raw-ppjxnqk4.js} +3 -1
  73. package/dist/v2/{recomp-orchestrator-b12zaptj.js → recomp-orchestrator-nmt9y25j.js} +10 -10
  74. package/dist/v2/{search-hza9x72a.js → search-6dawx2gt.js} +9 -9
  75. package/dist/v2/{search-archive-x64rtz1z.js → search-archive-dhqj1w31.js} +3 -3
  76. package/dist/v2/{send-session-notification-8eqe259v.js → send-session-notification-f8scq6ae.js} +1 -1
  77. package/dist/v2/{server-132h8twc.js → server-16dpnz56.js} +2 -2
  78. package/dist/v2/{server-qteg2kt9.js → server-8j2e7t31.js} +1 -1
  79. package/dist/v2/{server-33nqbqkw.js → server-9e55n4wx.js} +5 -5
  80. package/dist/v2/{server-d48x3m4x.js → server-9xbbaekh.js} +1 -1
  81. package/dist/v2/{server-m4bfaevz.js → server-gwmshgx9.js} +77 -5
  82. package/dist/v2/{server-ppcd1qxh.js → server-mefps930.js} +3 -3
  83. package/dist/v2/{server-62g58aaz.js → server-pw21ypwb.js} +1 -1
  84. package/dist/v2/{server-ad18djzs.js → server-q5z0gag0.js} +1 -1
  85. package/dist/v2/{server-zg5y109h.js → server-r209n2fk.js} +39 -21
  86. package/dist/v2/{server-4kjmrjn4.js → server-swvhxhxz.js} +5 -1
  87. package/dist/v2/{server-dtp8hcjh.js → server-wxrdher8.js} +1 -1
  88. package/dist/v2/{server-j8h7bsca.js → server-y9ncq4ck.js} +2 -2
  89. package/dist/v2/server.js +5 -5
  90. package/dist/v2/{wrapup-orchestrator-3ssd5yy1.js → wrapup-orchestrator-9z81xj66.js} +10 -10
  91. package/dist/{wrapup-orchestrator-5vpcd1zx.js → wrapup-orchestrator-dbnb530w.js} +14 -14
  92. package/package.json +4 -4
  93. package/src/agents/permissions.ts +22 -6
  94. package/src/agents/smart-notes-dreamer-gate.golden.json +241 -241
  95. package/src/agents/smart-notes-on.golden.json +4 -4
  96. package/src/config/compaction-accessor-guard.test.ts +0 -5
  97. package/src/config/removed-config-keys.test.ts +12 -26
  98. package/src/shared/announcement.test.ts +55 -59
  99. package/src/shared/prompt-surface-a1-golden.md +6 -7
  100. package/src/shared/slow-test.ts +24 -0
  101. package/src/shared/stable-json-linear.test.ts +18 -10
  102. package/src/config/latch-permanence-guard.test.ts +0 -258
@@ -7,41 +7,41 @@ import {
7
7
  setRecompTerminal2,
8
8
  buildRecompDeps2,
9
9
  runManagedRecomp2
10
- } from "./index-ffzhwfzy.js";
11
- import"./index-y76rhsnr.js";
10
+ } from "./index-jd0y50w3.js";
11
+ import"./index-dds7cxhz.js";
12
12
  import"./index-qgh1qwjj.js";
13
- import"./index-3svaejkh.js";
14
- import"./index-mnnkgq0q.js";
13
+ import"./index-z928hmnp.js";
14
+ import"./index-p6evxfcc.js";
15
15
  import"./index-sd3egckz.js";
16
- import"./index-rxqr723x.js";
17
- import"./index-zy67whjr.js";
16
+ import"./index-t6j3qxnd.js";
17
+ import"./index-z05n7702.js";
18
18
  import"./index-jjvbk92s.js";
19
19
  import"./index-4dhv7mqz.js";
20
20
  import"./index-spwjbkc7.js";
21
- import"./index-66eby7hx.js";
21
+ import"./index-jcr6pe7z.js";
22
22
  import"./index-qt1qqasc.js";
23
- import"./index-mnhcdfxg.js";
23
+ import"./index-t1zk694n.js";
24
24
  import"./index-whcgcfrv.js";
25
25
  import"./index-1zx87sdm.js";
26
- import"./index-ksq50rg0.js";
26
+ import"./index-c9zrgcnt.js";
27
27
  import"./index-x8a7jmkh.js";
28
28
  import"./index-rrv26qjz.js";
29
29
  import"./index-51rdvtkz.js";
30
30
  import"./index-nxrsns5x.js";
31
31
  import"./index-kfyb3k6n.js";
32
- import"./index-m32esgmj.js";
32
+ import"./index-3d5wnkq7.js";
33
33
  import"./index-wfybj1dw.js";
34
- import"./index-a9zvn5fe.js";
34
+ import"./index-jrjr58ez.js";
35
35
  import"./index-fb3zxn06.js";
36
36
  import"./index-9q1g3c5q.js";
37
37
  import"./index-kq5w68dp.js";
38
- import"./index-x6cbrv9h.js";
38
+ import"./index-szf8r0ba.js";
39
39
  import"./index-fr0wbhdn.js";
40
40
  import"./index-c7phnbvk.js";
41
41
  import"./index-j76ah6d7.js";
42
42
  import"./index-x9k3mqrf.js";
43
43
  import"./index-58e3y90n.js";
44
- import"./index-jfem3dgz.js";
44
+ import"./index-7tdtpqrg.js";
45
45
  import"./index-v0p37hm2.js";
46
46
  import"./index-t5pck3ss.js";
47
47
  import"./index-b88dwwrh.js";
@@ -5,33 +5,33 @@ import {
5
5
  resolveMemoriesByIdsForSearch2,
6
6
  unifiedSearch2,
7
7
  formatSearchResults2
8
- } from "./index-syaazvy2.js";
8
+ } from "./index-21bkd3m6.js";
9
9
  import"./index-kaqs6h31.js";
10
- import"./index-3svaejkh.js";
11
- import"./index-mnnkgq0q.js";
12
- import"./index-rxqr723x.js";
13
- import"./index-zy67whjr.js";
10
+ import"./index-z928hmnp.js";
11
+ import"./index-p6evxfcc.js";
12
+ import"./index-t6j3qxnd.js";
13
+ import"./index-z05n7702.js";
14
14
  import"./index-jjvbk92s.js";
15
15
  import"./index-4dhv7mqz.js";
16
16
  import"./index-qt1qqasc.js";
17
- import"./index-mnhcdfxg.js";
17
+ import"./index-t1zk694n.js";
18
18
  import"./index-whcgcfrv.js";
19
19
  import"./index-1zx87sdm.js";
20
- import"./index-ksq50rg0.js";
20
+ import"./index-c9zrgcnt.js";
21
21
  import"./index-51rdvtkz.js";
22
22
  import"./index-nxrsns5x.js";
23
23
  import"./index-kfyb3k6n.js";
24
- import"./index-m32esgmj.js";
24
+ import"./index-3d5wnkq7.js";
25
25
  import"./index-wfybj1dw.js";
26
26
  import"./index-9q1g3c5q.js";
27
27
  import"./index-kq5w68dp.js";
28
- import"./index-x6cbrv9h.js";
28
+ import"./index-szf8r0ba.js";
29
29
  import"./index-fr0wbhdn.js";
30
30
  import"./index-c7phnbvk.js";
31
31
  import"./index-j76ah6d7.js";
32
32
  import"./index-x9k3mqrf.js";
33
33
  import"./index-58e3y90n.js";
34
- import"./index-jfem3dgz.js";
34
+ import"./index-7tdtpqrg.js";
35
35
  import"./index-v0p37hm2.js";
36
36
  import"./index-t5pck3ss.js";
37
37
  import"./index-b88dwwrh.js";
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  renderSearchArchive2,
3
3
  renderSearchArchiveOffThread2
4
- } from "./index-j32jj2t8.js";
4
+ } from "./index-57jf5ztp.js";
5
5
  import"./index-kaqs6h31.js";
6
- import"./index-mnhcdfxg.js";
6
+ import"./index-t1zk694n.js";
7
7
  import"./index-whcgcfrv.js";
8
8
  import"./index-1zx87sdm.js";
9
- import"./index-ksq50rg0.js";
9
+ import"./index-c9zrgcnt.js";
10
10
  import"./index-nxrsns5x.js";
11
11
  import"./index-j76ah6d7.js";
12
12
  import"./index-x9k3mqrf.js";
13
13
  import"./index-58e3y90n.js";
14
- import"./index-jfem3dgz.js";
14
+ import"./index-7tdtpqrg.js";
15
15
  import"./index-v0p37hm2.js";
16
16
  import"./index-t5pck3ss.js";
17
17
  import"./index-b88dwwrh.js";
@@ -8,12 +8,12 @@ import {
8
8
  clearIgnoredMessages2,
9
9
  observeIgnoredNotificationEvent2,
10
10
  sendStatusNotification2
11
- } from "./index-66eby7hx.js";
11
+ } from "./index-jcr6pe7z.js";
12
12
  import"./index-qt1qqasc.js";
13
- import"./index-ksq50rg0.js";
13
+ import"./index-c9zrgcnt.js";
14
14
  import"./index-rrv26qjz.js";
15
15
  import"./index-58e3y90n.js";
16
- import"./index-jfem3dgz.js";
16
+ import"./index-7tdtpqrg.js";
17
17
  import"./index-v0p37hm2.js";
18
18
  import"./index-gzy5w8ya.js";
19
19
  import"./index-h7tgn49j.js";
@@ -0,0 +1,7 @@
1
+ export declare const slowLane: boolean;
2
+ export declare const slowPrefix = "[slow] ";
3
+ /** Run the same behavioral oracle at unit scale or at its full scheduled scale. */
4
+ export declare function scaleTest(name: string, run: (slow: boolean) => void | Promise<void>, timeout?: number): void;
5
+ /** Measurement calibration and production-duration sentinels have no fast substitute. */
6
+ export declare function slowOnlyTest(name: string, run: () => void | Promise<void>, timeout?: number): void;
7
+ //# sourceMappingURL=slow-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slow-test.d.ts","sourceRoot":"","sources":["../../src/shared/slow-test.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,SAAoC,CAAC;AAC1D,eAAO,MAAM,UAAU,YAAY,CAAC;AAQpC,mFAAmF;AACnF,wBAAgB,SAAS,CACrB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAC5C,OAAO,SAAS,QAGnB;AAED,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,SAAS,QAE3F"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/tools/ctx-memory/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAQ,MAAM,qBAAqB,CAAC;AA0DhE,OAAO,EAKH,KAAK,iBAAiB,EACzB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAq7BrE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAI5F;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAIhG"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/tools/ctx-memory/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAQ,MAAM,qBAAqB,CAAC;AA0DhE,OAAO,EAKH,KAAK,iBAAiB,EACzB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAi7BrE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAI5F;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAIhG"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/tools/ctx-note/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAQ,MAAM,qBAAqB,CAAC;AA+BhE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAiBpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC5B,EAAE,EAAE,QAAQ,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC/D,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACvC;AA6YD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAIxF"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/tools/ctx-note/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAQ,MAAM,qBAAqB,CAAC;AA+BhE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAiBpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC5B,EAAE,EAAE,QAAQ,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC/D,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACvC;AAiZD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAIxF"}
@@ -11,18 +11,18 @@ export declare const FULL_PARAMETER_DESCRIPTIONS: {
11
11
  readonly message: "Message ordinal from a <session-history> heading or a ctx_search hit, not a tag number. Returns that one message in full. Use alone.";
12
12
  };
13
13
  readonly ctx_note: {
14
- readonly action: "write | read | update | dismiss. Defaults to write when content is given, else read.";
14
+ readonly action: "write | read | update | dismiss.";
15
15
  readonly content: "Note text for write/update: first line is the title (under 80 chars), then the detail.";
16
16
  readonly surface_condition: "Makes this a smart note: a condition an outside checker can verify on its own, periodically — repository state, releases, web pages, anything it can look up — never something only this conversation knows. The note is parked until the condition holds.";
17
17
  readonly filter: "Read filter: all, active, pending (unsurfaced smart notes), ready, dismissed. Omitted, it shows active session notes plus every current smart note (pending included); active shows only notes whose stored status is active.";
18
18
  readonly limit: "Rows per read (default 25).";
19
19
  readonly offset: "Skip this many newest rows (default 0).";
20
- readonly note_ids: "Note ids: one for update, 1–50 for dismiss or read (read returns full bodies). Ignored by write.";
20
+ readonly note_ids: "Note ids: one for update, 1–50 for dismiss, or 1–50 to read those notes in full. Write and a plain read take an empty list.";
21
21
  };
22
22
  readonly ctx_memory: {
23
23
  readonly action: "write | update | archive | merge | get";
24
24
  readonly content: "The memory text — one standalone fact (write, update, merge).";
25
- readonly category: "Kind of fact (required for write; on update/merge optional, omitted keeps the current category).";
25
+ readonly category: "Kind of fact (required for write; on update/merge, pass the memory's current category to keep it).";
26
26
  readonly ids: "Memory ids from <project-memory>: one for update, one or more for archive, two or more for merge, 1–20 for get.";
27
27
  readonly reason: "Why it is being archived (optional).";
28
28
  };
@@ -46,18 +46,18 @@ export declare const LIGHT_PARAMETER_DESCRIPTIONS: {
46
46
  readonly message: "Message ordinal from a <session-history> heading or a ctx_search hit, not a tag number. Returns that one message in full. Use alone.";
47
47
  };
48
48
  readonly ctx_note: {
49
- readonly action: "write | read | update | dismiss (default: write with content, else read).";
49
+ readonly action: "write | read | update | dismiss.";
50
50
  readonly content: "Note text: first line title (<80 chars), then detail.";
51
51
  readonly surface_condition: "A condition an outside checker can verify on its own, periodically (repository, releases, web — anything it can look up); never something only this conversation knows.";
52
52
  readonly filter: "Read filter: all, active, pending, ready, dismissed. Omitted: active notes plus every current smart note (pending included); active: only active-status notes.";
53
53
  readonly limit: "Rows per read (default 25).";
54
54
  readonly offset: "Skip newest rows (default 0).";
55
- readonly note_ids: "One id for update, 1–50 for dismiss or read (full bodies). Ignored by write.";
55
+ readonly note_ids: "One id for update, 1–50 for dismiss, or 1–50 to read those notes in full. Write and a plain read take an empty list.";
56
56
  };
57
57
  readonly ctx_memory: {
58
58
  readonly action: "write | update | archive | merge | get";
59
59
  readonly content: "One standalone fact (write, update, merge).";
60
- readonly category: "Kind of fact (required for write; optional on update/merge).";
60
+ readonly category: "Kind of fact (required for write; on update/merge pass the current category to keep it).";
61
61
  readonly ids: "Ids from <project-memory>: one for update, 1+ for archive, 2+ for merge, 1–20 for get.";
62
62
  readonly reason: "Why it is archived (optional).";
63
63
  };
@@ -1 +1 @@
1
- {"version":3,"file":"parameter-descriptions.d.ts","sourceRoot":"","sources":["../../src/tools/parameter-descriptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC9B,CAAC;AAEX,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoC/B,CAAC;AAEX,MAAM,MAAM,4BAA4B,GAAG,MAAM,OAAO,2BAA2B,CAAC;AAEpF,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,UAAO,GACzB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAS9C;AAED,wBAAgB,oCAAoC,CAChD,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,UAAO,GACzB,IAAI,CAWN"}
1
+ {"version":3,"file":"parameter-descriptions.d.ts","sourceRoot":"","sources":["../../src/tools/parameter-descriptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGpE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC9B,CAAC;AAEX,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsC/B,CAAC;AAEX,MAAM,MAAM,4BAA4B,GAAG,MAAM,OAAO,2BAA2B,CAAC;AAEpF,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,UAAO,GACzB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAS9C;AAED,wBAAgB,oCAAoC,CAChD,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,mBAAmB,EAC3B,iBAAiB,UAAO,GACzB,IAAI,CAWN"}
@@ -19,41 +19,41 @@ import {
19
19
  finalizeMessageRepresentation2,
20
20
  runPostTransformPhase2,
21
21
  checkM0MutationDriftAndSignal2
22
- } from "./index-1kbznkft.js";
23
- import"./index-y76rhsnr.js";
22
+ } from "./index-8e9qsnrw.js";
23
+ import"./index-dds7cxhz.js";
24
24
  import"./index-qgh1qwjj.js";
25
- import"./index-3svaejkh.js";
26
- import"./index-mnnkgq0q.js";
25
+ import"./index-z928hmnp.js";
26
+ import"./index-p6evxfcc.js";
27
27
  import"./index-sd3egckz.js";
28
- import"./index-rxqr723x.js";
29
- import"./index-zy67whjr.js";
28
+ import"./index-t6j3qxnd.js";
29
+ import"./index-z05n7702.js";
30
30
  import"./index-jjvbk92s.js";
31
31
  import"./index-4dhv7mqz.js";
32
32
  import"./index-spwjbkc7.js";
33
- import"./index-66eby7hx.js";
33
+ import"./index-jcr6pe7z.js";
34
34
  import"./index-qt1qqasc.js";
35
- import"./index-mnhcdfxg.js";
35
+ import"./index-t1zk694n.js";
36
36
  import"./index-whcgcfrv.js";
37
37
  import"./index-1zx87sdm.js";
38
- import"./index-ksq50rg0.js";
38
+ import"./index-c9zrgcnt.js";
39
39
  import"./index-x8a7jmkh.js";
40
40
  import"./index-rrv26qjz.js";
41
41
  import"./index-51rdvtkz.js";
42
42
  import"./index-nxrsns5x.js";
43
43
  import"./index-kfyb3k6n.js";
44
- import"./index-m32esgmj.js";
44
+ import"./index-3d5wnkq7.js";
45
45
  import"./index-wfybj1dw.js";
46
- import"./index-a9zvn5fe.js";
46
+ import"./index-jrjr58ez.js";
47
47
  import"./index-fb3zxn06.js";
48
48
  import"./index-9q1g3c5q.js";
49
49
  import"./index-kq5w68dp.js";
50
- import"./index-x6cbrv9h.js";
50
+ import"./index-szf8r0ba.js";
51
51
  import"./index-fr0wbhdn.js";
52
52
  import"./index-c7phnbvk.js";
53
53
  import"./index-j76ah6d7.js";
54
54
  import"./index-x9k3mqrf.js";
55
55
  import"./index-58e3y90n.js";
56
- import"./index-jfem3dgz.js";
56
+ import"./index-7tdtpqrg.js";
57
57
  import"./index-v0p37hm2.js";
58
58
  import"./index-t5pck3ss.js";
59
59
  import"./index-b88dwwrh.js";
@@ -24,12 +24,12 @@ var [
24
24
  { Database, registerSqliteDiagnosticSink },
25
25
  { log }
26
26
  ] = await Promise.all([
27
- import("./embedding-backfill-5e74ae0m.js"),
27
+ import("./embedding-backfill-w5qp7t28.js"),
28
28
  import("./embedding-cache-mgyr73ef.js"),
29
29
  import("./storage-memory-e6a7mb0k.js"),
30
- import("./project-embedding-registry-v38q4xd5.js"),
31
- import("./search-hza9x72a.js"),
32
- import("./compartment-chunk-embedding-8jjmcgeg.js"),
30
+ import("./project-embedding-registry-e7zftfvj.js"),
31
+ import("./search-6dawx2gt.js"),
32
+ import("./compartment-chunk-embedding-tk6g4q80.js"),
33
33
  import("./embedding-activity-g1dhes6g.js"),
34
34
  import("./harness-e4avh192.js"),
35
35
  import("./sqlite-zdgm52sv.js"),
@@ -15,14 +15,14 @@ import"./server-3mz2qh5a.js";
15
15
  import"./server-6495nmn9.js";
16
16
  import"./server-ab1g0wn9.js";
17
17
  import"./server-51779zs2.js";
18
- import"./server-4kjmrjn4.js";
19
- import"./server-dtp8hcjh.js";
18
+ import"./server-swvhxhxz.js";
19
+ import"./server-wxrdher8.js";
20
20
  import {
21
21
  replaceCompartmentChunkEmbeddings2,
22
22
  recordChunkEmbedBackoff2,
23
23
  loadUnembeddedSessionChunkCandidates2,
24
24
  countUnembeddedSessionCompartments2
25
- } from "./server-62g58aaz.js";
25
+ } from "./server-pw21ypwb.js";
26
26
  import {
27
27
  acquireGitSweepLease,
28
28
  renewGitSweepLease,
@@ -34,7 +34,7 @@ import"./server-k3t06fxr.js";
34
34
  import {
35
35
  LATEST_SUPPORTED_VERSION,
36
36
  enforceSchemaFence
37
- } from "./server-j8h7bsca.js";
37
+ } from "./server-y9ncq4ck.js";
38
38
  import"./server-wwaw5npa.js";
39
39
  import"./server-rqebawx1.js";
40
40
  import"./server-fr0wbhdn.js";
@@ -24,10 +24,10 @@ import {
24
24
  countSessionCompartmentEmbedCoverage2,
25
25
  countSessionCompartmentEmbedCoveragePolite2,
26
26
  countUnembeddedSessionCompartmentsPolite2
27
- } from "./server-62g58aaz.js";
27
+ } from "./server-pw21ypwb.js";
28
28
  import"./server-ab1g0wn9.js";
29
- import"./server-dtp8hcjh.js";
30
- import"./server-4kjmrjn4.js";
29
+ import"./server-wxrdher8.js";
30
+ import"./server-swvhxhxz.js";
31
31
  import"./server-51779zs2.js";
32
32
  import"./server-gyy4k6mf.js";
33
33
  import"./server-3mz2qh5a.js";
@@ -286,7 +286,7 @@ import {
286
286
  startCompartmentAgent,
287
287
  setRecompStarting2,
288
288
  setRecompTerminal2
289
- } from "./server-zg5y109h.js";
289
+ } from "./server-r209n2fk.js";
290
290
  import {
291
291
  resolveHistorianModel2
292
292
  } from "./server-5kym00ag.js";
@@ -311,7 +311,7 @@ import {
311
311
  openDatabaseAsync,
312
312
  isDatabasePersisted,
313
313
  getDatabasePersistenceError
314
- } from "./server-j8h7bsca.js";
314
+ } from "./server-y9ncq4ck.js";
315
315
  import {
316
316
  pruneMissingProjectIdentities,
317
317
  setHomeProjectPermission,
@@ -362,7 +362,7 @@ import {
362
362
  clearIndexedMessages2,
363
363
  indexMessagesAfterOrdinal2,
364
364
  sweepOrphanedOpenCodeMessageIndexesCooperatively2
365
- } from "./server-ppcd1qxh.js";
365
+ } from "./server-mefps930.js";
366
366
  import"./server-51779zs2.js";
367
367
  import {
368
368
  inRootAsyncContext2,
@@ -382,12 +382,13 @@ import {
382
382
  createWorkerShutdown
383
383
  } from "./server-cpjk5jd2.js";
384
384
  import {
385
+ areRustHistorianSyntheticParts2,
385
386
  isRawCompactionSummaryInfo2,
386
387
  extractInMemoryMessageViews2,
387
388
  buildInMemoryTailRawMessages2,
388
389
  RawOrdinalsNotReady2,
389
390
  runSessionWarmupWorker
390
- } from "./server-4kjmrjn4.js";
391
+ } from "./server-swvhxhxz.js";
391
392
  import {
392
393
  resolveOpenCodeDbPath,
393
394
  assertOpenCodeStoreGeneration,
@@ -520,6 +521,7 @@ import {
520
521
  } from "./server-3vhxy2k5.js";
521
522
  import {
522
523
  expandToolPart,
524
+ askAnswerLines,
523
525
  markHostUnservedRow,
524
526
  markCoveredInstructionRow,
525
527
  isCoveredInstructionRow,
@@ -715,13 +717,13 @@ import {
715
717
  readRawSessionMessageById2,
716
718
  readSessionChunk2,
717
719
  readRawSessionSeedTail2
718
- } from "./server-m4bfaevz.js";
720
+ } from "./server-gwmshgx9.js";
719
721
  import {
720
722
  getCurrentToolSetHash,
721
723
  recordToolDefinition,
722
724
  getMeasuredToolDefinitionTokens
723
725
  } from "./server-d1dzgvwd.js";
724
- import"./server-dtp8hcjh.js";
726
+ import"./server-wxrdher8.js";
725
727
  import {
726
728
  SubcClient,
727
729
  connectionFileExists,
@@ -732,7 +734,7 @@ import {
732
734
  } from "./server-ab1g0wn9.js";
733
735
  import {
734
736
  deleteChunkEmbedBackoffForSession2
735
- } from "./server-62g58aaz.js";
737
+ } from "./server-pw21ypwb.js";
736
738
  import {
737
739
  embedPauseBySession,
738
740
  embedRunStateBySession,
@@ -762,7 +764,7 @@ import {
762
764
  embedSessionCompartmentChunks2,
763
765
  getEmbeddingCoverageStatus2,
764
766
  getAutoEmbeddingSessionCoverage2
765
- } from "./server-ad18djzs.js";
767
+ } from "./server-q5z0gag0.js";
766
768
  import {
767
769
  V2_MEMORY_CATEGORIES,
768
770
  CATEGORY_PRIORITY
@@ -821,7 +823,7 @@ import {
821
823
  readGitFileChangeTimesSince,
822
824
  verificationFileExists,
823
825
  normalizeVerificationFiles
824
- } from "./server-d48x3m4x.js";
826
+ } from "./server-9xbbaekh.js";
825
827
  import {
826
828
  deriveTriggerBudget2,
827
829
  deriveHistorianChunkTokens2,
@@ -855,7 +857,7 @@ import {
855
857
  } from "./server-vr4szghm.js";
856
858
  import {
857
859
  cosineSimilarity
858
- } from "./server-qteg2kt9.js";
860
+ } from "./server-8j2e7t31.js";
859
861
  import {
860
862
  computeCueContentHash,
861
863
  hasMuralCueColumns,
@@ -912,14 +914,14 @@ import {
912
914
  resolveMemoriesByIdsForSearch2,
913
915
  unifiedSearch2,
914
916
  formatSearchResults2
915
- } from "./server-33nqbqkw.js";
917
+ } from "./server-9e55n4wx.js";
916
918
  import {
917
919
  resolvePromptContext2
918
920
  } from "./server-fmsr7v69.js";
919
921
  import"./server-kaqs6h31.js";
920
922
  import {
921
923
  renderSearchArchiveOffThread2
922
- } from "./server-132h8twc.js";
924
+ } from "./server-16dpnz56.js";
923
925
  import {
924
926
  compareSemverCore
925
927
  } from "./server-84w6rvvf.js";
@@ -13937,8 +13939,7 @@ function encodeOpenCodeMessagesToCk(messages) {
13937
13939
  const createdAtMs = typeof time.created === "number" ? time.created : typeof info.time_created === "number" ? info.time_created : typeof info.timeCreated === "number" ? info.timeCreated : undefined;
13938
13940
  const completedAtMs = typeof time.completed === "number" ? time.completed : typeof info.time_completed === "number" ? info.time_completed : typeof info.timeCompleted === "number" ? info.timeCompleted : undefined;
13939
13941
  const parts = Array.isArray(raw.parts) ? raw.parts : [];
13940
- const syntheticParts = parts.filter((part) => part === null || typeof part !== "object" || part.type !== "compaction");
13941
- const synthetic = syntheticParts.length > 0 && syntheticParts.every((part) => part !== null && typeof part === "object" && (part.synthetic === true || part.syntheticTodoMarker === true));
13942
+ const synthetic = areRustHistorianSyntheticParts2(parts);
13942
13943
  const content = [];
13943
13944
  const recoveryToolTitles = {};
13944
13945
  const userAnswerBlocks = [];
@@ -23779,8 +23780,8 @@ function registerRpcHandlers(rpcServer, args) {
23779
23780
  const db = readDatabase();
23780
23781
  if (!db)
23781
23782
  return { ok: false, error: "db unavailable" };
23782
- const { runManagedRecomp } = await importPluginModule(() => import("./recomp-orchestrator-b12zaptj.js"));
23783
- const { sendIgnoredMessage } = await importPluginModule(() => import("./send-session-notification-8eqe259v.js"));
23783
+ const { runManagedRecomp } = await importPluginModule(() => import("./recomp-orchestrator-nmt9y25j.js"));
23784
+ const { sendIgnoredMessage } = await importPluginModule(() => import("./send-session-notification-f8scq6ae.js"));
23784
23785
  log2(`[rpc] recomp requested for session ${sessionId}`);
23785
23786
  if (!args.client && !args.hiddenCompletionExecutor) {
23786
23787
  return {
@@ -23864,7 +23865,7 @@ function registerRpcHandlers(rpcServer, args) {
23864
23865
  const db = readDatabase();
23865
23866
  if (!db)
23866
23867
  return { ok: false, error: "db unavailable" };
23867
- const { runManagedWrapup } = await importPluginModule(() => import("./wrapup-orchestrator-3ssd5yy1.js"));
23868
+ const { runManagedWrapup } = await importPluginModule(() => import("./wrapup-orchestrator-9z81xj66.js"));
23868
23869
  const model = liveSessionState.liveModelBySession.get(sessionId);
23869
23870
  const contextLimit = model ? resolveContextLimit(model.providerID, model.modelID, { db, sessionID: sessionId }) : 128000;
23870
23871
  const ctx = {
@@ -24608,18 +24609,18 @@ var FULL_PARAMETER_DESCRIPTIONS = {
24608
24609
  message: "Message ordinal from a <session-history> heading or a ctx_search hit, not a tag number. Returns that one message in full. Use alone."
24609
24610
  },
24610
24611
  ctx_note: {
24611
- action: "write | read | update | dismiss. Defaults to write when content is given, else read.",
24612
+ action: "write | read | update | dismiss.",
24612
24613
  content: "Note text for write/update: first line is the title (under 80 chars), then the detail.",
24613
24614
  surface_condition: "Makes this a smart note: a condition an outside checker can verify on its own, periodically — repository state, releases, web pages, anything it can look up — never something only this conversation knows. The note is parked until the condition holds.",
24614
24615
  filter: "Read filter: all, active, pending (unsurfaced smart notes), ready, dismissed. Omitted, it shows active session notes plus every current smart note (pending included); active shows only notes whose stored status is active.",
24615
24616
  limit: "Rows per read (default 25).",
24616
24617
  offset: "Skip this many newest rows (default 0).",
24617
- note_ids: "Note ids: one for update, 1–50 for dismiss or read (read returns full bodies). Ignored by write."
24618
+ note_ids: "Note ids: one for update, 1–50 for dismiss, or 1–50 to read those notes in full. Write and a plain read take an empty list."
24618
24619
  },
24619
24620
  ctx_memory: {
24620
24621
  action: "write | update | archive | merge | get",
24621
24622
  content: "The memory text — one standalone fact (write, update, merge).",
24622
- category: "Kind of fact (required for write; on update/merge optional, omitted keeps the current category).",
24623
+ category: "Kind of fact (required for write; on update/merge, pass the memory's current category to keep it).",
24623
24624
  ids: "Memory ids from <project-memory>: one for update, one or more for archive, two or more for merge, 1–20 for get.",
24624
24625
  reason: "Why it is being archived (optional)."
24625
24626
  },
@@ -24643,18 +24644,18 @@ var LIGHT_PARAMETER_DESCRIPTIONS = {
24643
24644
  message: "Message ordinal from a <session-history> heading or a ctx_search hit, not a tag number. Returns that one message in full. Use alone."
24644
24645
  },
24645
24646
  ctx_note: {
24646
- action: "write | read | update | dismiss (default: write with content, else read).",
24647
+ action: "write | read | update | dismiss.",
24647
24648
  content: "Note text: first line title (<80 chars), then detail.",
24648
24649
  surface_condition: "A condition an outside checker can verify on its own, periodically (repository, releases, web — anything it can look up); never something only this conversation knows.",
24649
24650
  filter: "Read filter: all, active, pending, ready, dismissed. Omitted: active notes plus every current smart note (pending included); active: only active-status notes.",
24650
24651
  limit: "Rows per read (default 25).",
24651
24652
  offset: "Skip newest rows (default 0).",
24652
- note_ids: "One id for update, 1–50 for dismiss or read (full bodies). Ignored by write."
24653
+ note_ids: "One id for update, 1–50 for dismiss, or 1–50 to read those notes in full. Write and a plain read take an empty list."
24653
24654
  },
24654
24655
  ctx_memory: {
24655
24656
  action: "write | update | archive | merge | get",
24656
24657
  content: "One standalone fact (write, update, merge).",
24657
- category: "Kind of fact (required for write; optional on update/merge).",
24658
+ category: "Kind of fact (required for write; on update/merge pass the current category to keep it).",
24658
24659
  ids: "Ids from <project-memory>: one for update, 1+ for archive, 2+ for merge, 1–20 for get.",
24659
24660
  reason: "Why it is archived (optional)."
24660
24661
  },
@@ -32610,7 +32611,10 @@ function orientationRenderer(capTokens) {
32610
32611
  sawMessage = true;
32611
32612
  const out = [];
32612
32613
  if (msg.role === "user" && hasMeaningfulUserText2(msg.parts)) {
32613
- const text = extractTexts2(msg.parts).map((t) => cleanUserText2(t)).map(normalizeText).filter((t) => t.length > 0).join(" / ");
32614
+ const rawTexts = extractTexts2(msg.parts);
32615
+ const parts = rawTexts.map((t) => cleanUserText2(t)).map(normalizeText).filter((t) => t.length > 0);
32616
+ parts.push(...rawTexts.flatMap((t) => askAnswerLines(t)).map(normalizeText));
32617
+ const text = parts.filter((t) => t.length > 0).join(" / ");
32614
32618
  if (text)
32615
32619
  out.push(`U: ${text}`);
32616
32620
  }
@@ -50841,10 +50845,10 @@ function updateMemoryContentInCurrentTransaction(db, memory, content, normalized
50841
50845
  invalidateMemory2(memory.projectPath, memory.id);
50842
50846
  }
50843
50847
  var ctxMemoryArgsShape = {
50844
- action: tool.schema.enum([...CTX_MEMORY_ACTIONS]).optional().describe("write | update | archive | merge | get"),
50845
- content: tool.schema.string().optional().describe("The memory text — one standalone fact (write, update, merge)."),
50846
- category: tool.schema.enum([...V2_MEMORY_CATEGORIES]).optional().describe("Kind of fact (required for write; on update/merge optional, omitted keeps the current category)."),
50847
- ids: tool.schema.array(tool.schema.number()).optional().describe("Memory ids from <project-memory>: one for update, one or more for archive, two or more for merge, 1–20 for get."),
50848
+ action: tool.schema.enum([...CTX_MEMORY_ACTIONS]).describe("write | update | archive | merge | get"),
50849
+ content: tool.schema.string().describe("The memory text — one standalone fact (write, update, merge)."),
50850
+ category: tool.schema.enum([...V2_MEMORY_CATEGORIES]).describe("Kind of fact (required for write; on update/merge, pass the memory's current category to keep it)."),
50851
+ ids: tool.schema.array(tool.schema.number()).describe("Memory ids from <project-memory>: one for update, one or more for archive, two or more for merge, 1–20 for get."),
50848
50852
  reason: tool.schema.string().optional().describe("Why it is being archived (optional).")
50849
50853
  };
50850
50854
  var ctxMemoryListArgsShape = {
@@ -51799,13 +51803,13 @@ function writeTray(db, sessionId) {
51799
51803
  return { activeCount: active.length, oldestTouchedAt: oldest };
51800
51804
  }
51801
51805
  var ctxNoteArgsShape = {
51802
- action: tool.schema.enum(["write", "read", "dismiss", "update"]).optional().describe("write | read | update | dismiss. Defaults to write when content is given, else read."),
51803
- content: tool.schema.string().optional().describe("Note text for write/update: first line is the title (under 80 chars), then the detail."),
51806
+ action: tool.schema.enum(["write", "read", "dismiss", "update"]).describe("write | read | update | dismiss."),
51807
+ content: tool.schema.string().describe("Note text for write/update: first line is the title (under 80 chars), then the detail."),
51804
51808
  surface_condition: tool.schema.string().optional().describe("Makes this a smart note: a condition an outside checker can verify on its own, periodically — repository state, releases, web pages, anything it can look up — never something only this conversation knows. The note is parked until the condition holds."),
51805
51809
  filter: tool.schema.enum(["all", "active", "pending", "ready", "dismissed"]).optional().describe("Read filter: all, active, pending (unsurfaced smart notes), ready, dismissed. Omitted, it shows active session notes plus every current smart note (pending included); active shows only notes whose stored status is active."),
51806
51810
  limit: tool.schema.number().optional().describe("Rows per read (default 25)."),
51807
51811
  offset: tool.schema.number().optional().describe("Skip this many newest rows (default 0)."),
51808
- note_ids: tool.schema.array(tool.schema.number().int().min(1)).min(1).max(50).optional().describe("Note ids: one for update, 1–50 for dismiss or read (read returns full bodies). Ignored by write.")
51812
+ note_ids: tool.schema.array(tool.schema.number().int().min(1)).max(50).describe("Note ids: one for update, 1–50 for dismiss, or 1–50 to read those notes in full. Write and a plain read take an empty list.")
51809
51813
  };
51810
51814
  var ctxNoteArgsSchema = tool.schema.object(ctxNoteArgsShape).passthrough();
51811
51815
  function formatDismissResults(results) {
@@ -51853,7 +51857,8 @@ function createCtxNoteTool(deps) {
51853
51857
  }
51854
51858
  const sessionId = toolContext.sessionID;
51855
51859
  const action = args.action ?? (args.content?.trim() ? "write" : "read");
51856
- const noteIds = action === "dismiss" || action === "update" || action === "read" && args.note_ids !== undefined ? parseNoteIds(action, args.note_ids) : undefined;
51860
+ const targetedReadIds = action === "read" && Array.isArray(args.note_ids) && args.note_ids.length === 0 ? undefined : args.note_ids;
51861
+ const noteIds = action === "dismiss" || action === "update" || action === "read" && targetedReadIds !== undefined ? parseNoteIds(action, targetedReadIds) : undefined;
51857
51862
  if (typeof noteIds === "string")
51858
51863
  return noteIds;
51859
51864
  const wakePlaneActive = action === "write" && Boolean(args.surface_condition?.trim()) && await wakePlaneStatus() === "present";
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  ensureMemoryEmbeddings2
3
- } from "./server-qteg2kt9.js";
4
- import"./server-ad18djzs.js";
3
+ } from "./server-8j2e7t31.js";
4
+ import"./server-q5z0gag0.js";
5
5
  import"./server-4dhv7mqz.js";
6
6
  import"./server-qt1qqasc.js";
7
7
  import"./server-vr4szghm.js";
8
8
  import"./server-24g8r2d0.js";
9
9
  import"./server-bsgd4dk1.js";
10
- import"./server-62g58aaz.js";
10
+ import"./server-pw21ypwb.js";
11
11
  import"./server-ab1g0wn9.js";
12
12
  import"./server-qjvk4a9t.js";
13
- import"./server-dtp8hcjh.js";
14
- import"./server-4kjmrjn4.js";
13
+ import"./server-wxrdher8.js";
14
+ import"./server-swvhxhxz.js";
15
15
  import"./server-51779zs2.js";
16
16
  import"./server-gyy4k6mf.js";
17
17
  import"./server-3mz2qh5a.js";
@@ -6,8 +6,8 @@ import {
6
6
  messageFtsOrdinalRangeIsMapped2,
7
7
  getMessageFtsRowidMapBackfillProgress2,
8
8
  deleteUnmappedMessageFtsRows2
9
- } from "./server-dtp8hcjh.js";
10
- import"./server-4kjmrjn4.js";
9
+ } from "./server-wxrdher8.js";
10
+ import"./server-swvhxhxz.js";
11
11
  import"./server-51779zs2.js";
12
12
  import"./server-gyy4k6mf.js";
13
13
  import"./server-gzy5w8ya.js";