@gmickel/gno 2.6.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/README.md +25 -30
  2. package/assets/skill/SKILL.md +5 -3
  3. package/assets/skill/cli-reference.md +9 -2
  4. package/assets/skill/mcp-reference.md +2 -1
  5. package/assets/spa-production.json.gz +0 -0
  6. package/browser-extension/artifacts/{gno-browser-clipper-v2.6.0.zip → gno-browser-clipper-v2.7.1.zip} +0 -0
  7. package/browser-extension/artifacts/gno-browser-clipper-v2.7.1.zip.sha256 +1 -0
  8. package/browser-extension/dist/manifest.json +1 -1
  9. package/package.json +2 -1
  10. package/spec/cli.md +109 -18
  11. package/spec/mcp.md +36 -2
  12. package/spec/output-schemas/ask.schema.json +1 -1
  13. package/spec/output-schemas/capture-receipt.schema.json +1 -1
  14. package/spec/output-schemas/collection-list.schema.json +2 -2
  15. package/spec/output-schemas/doctor.schema.json +88 -0
  16. package/spec/output-schemas/error.schema.json +11 -2
  17. package/spec/output-schemas/get.schema.json +1 -1
  18. package/spec/output-schemas/mcp-capture-result.schema.json +1 -2
  19. package/spec/output-schemas/memory-remember.schema.json +2 -2
  20. package/spec/output-schemas/multi-get.schema.json +4 -1
  21. package/spec/output-schemas/peek.schema.json +2 -9
  22. package/spec/output-schemas/resident-status.schema.json +22 -0
  23. package/spec/output-schemas/search-result.schema.json +1 -1
  24. package/spec/output-schemas/search-results.schema.json +1 -1
  25. package/spec/output-schemas/status.schema.json +110 -16
  26. package/src/cli/commands/ask.ts +31 -12
  27. package/src/cli/commands/doctor.ts +54 -20
  28. package/src/cli/commands/embed.ts +41 -3
  29. package/src/cli/commands/ls.ts +6 -1
  30. package/src/cli/commands/query.ts +5 -0
  31. package/src/cli/commands/status.ts +63 -5
  32. package/src/cli/commands/vec.ts +54 -0
  33. package/src/cli/detach.ts +29 -1
  34. package/src/cli/errors.ts +13 -9
  35. package/src/cli/program.ts +53 -1
  36. package/src/core/capture-sync.ts +9 -2
  37. package/src/core/host-paths.ts +49 -0
  38. package/src/core/memory-remember.ts +4 -3
  39. package/src/core/request-receipts.ts +63 -9
  40. package/src/core/shutdown-budget.ts +6 -0
  41. package/src/core/vector-partition-status.ts +52 -0
  42. package/src/core/windows-private-path.ts +136 -1
  43. package/src/embed/backlog.ts +145 -27
  44. package/src/embed/fingerprint.ts +6 -3
  45. package/src/embed/retry.ts +66 -27
  46. package/src/embed/variant-backlog.ts +48 -18
  47. package/src/embed/variant-retry.ts +31 -22
  48. package/src/index.ts +21 -2
  49. package/src/llm/inference-scope.ts +18 -0
  50. package/src/llm/native-worker/dispatcher.ts +2 -0
  51. package/src/llm/native-worker/embedding-identity.ts +42 -0
  52. package/src/llm/native-worker/protocol.ts +1 -0
  53. package/src/llm/types.ts +3 -0
  54. package/src/mcp/context.ts +9 -0
  55. package/src/mcp/resources/index.ts +6 -5
  56. package/src/mcp/tool-descriptions-core.ts +1 -1
  57. package/src/mcp/tools/capture.ts +1 -3
  58. package/src/mcp/tools/index.ts +11 -4
  59. package/src/mcp/tools/memory-remember.ts +1 -1
  60. package/src/mcp/tools/status.ts +23 -6
  61. package/src/pipeline/hybrid.ts +37 -7
  62. package/src/pipeline/vsearch.ts +14 -2
  63. package/src/serve/embed-scheduler.ts +133 -19
  64. package/src/serve/host-path-redaction.ts +116 -0
  65. package/src/serve/public/components/BootstrapStatus.tsx +5 -3
  66. package/src/serve/public/components/CaptureModal.tsx +1 -1
  67. package/src/serve/public/components/CollectionModelDialog.tsx +16 -13
  68. package/src/serve/public/components/CollectionsEmptyState.tsx +5 -3
  69. package/src/serve/public/components/FirstRunWizard.tsx +4 -2
  70. package/src/serve/public/components/sessions/SessionSearch.tsx +2 -2
  71. package/src/serve/public/components/sessions/SourcesPanel.tsx +77 -60
  72. package/src/serve/public/globals.built.css +1 -1
  73. package/src/serve/public/hooks/use-api.ts +17 -2
  74. package/src/serve/public/lib/request-intent.ts +8 -0
  75. package/src/serve/public/{components/sessions → lib}/snippet.tsx +2 -3
  76. package/src/serve/public/pages/Collections.tsx +16 -13
  77. package/src/serve/public/pages/Connectors.tsx +7 -4
  78. package/src/serve/public/pages/Dashboard.tsx +16 -11
  79. package/src/serve/public/pages/DocView.tsx +10 -5
  80. package/src/serve/public/pages/DocumentEditor.tsx +91 -14
  81. package/src/serve/public/pages/Search.tsx +1 -41
  82. package/src/serve/resident-runtime.ts +33 -1
  83. package/src/serve/resident-status.ts +13 -1
  84. package/src/serve/routes/sessions.ts +61 -5
  85. package/src/serve/server.ts +15 -12
  86. package/src/serve/status-model.ts +26 -6
  87. package/src/serve/status.ts +4 -7
  88. package/src/serve/watch-reconciliation-shared.ts +3 -0
  89. package/src/serve/watch-service-events.ts +3 -2
  90. package/src/serve/watch-service-run-flush.ts +35 -2
  91. package/src/serve/watch-service.ts +5 -0
  92. package/src/store/migrations/031-runtime-independent-vectors.ts +29 -0
  93. package/src/store/migrations/032-vector-runtime-callers.ts +17 -0
  94. package/src/store/migrations/index.ts +4 -0
  95. package/src/store/sqlite/adapter.ts +24 -3
  96. package/src/store/sqlite/change-journal-store.ts +1 -1
  97. package/src/store/sqlite/legacy-vector-ownership.ts +2 -1
  98. package/src/store/types.ts +11 -1
  99. package/src/store/vector/lazy.ts +46 -43
  100. package/src/store/vector/runtime-compat.ts +651 -0
  101. package/src/store/vector/sqlite-vec.ts +20 -2
  102. package/src/store/vector/status.ts +276 -35
  103. package/src/store/vector/types.ts +2 -0
  104. package/src/store/vector/variant-search.ts +71 -23
  105. package/src/store/vector/variants.ts +49 -14
  106. package/browser-extension/artifacts/gno-browser-clipper-v2.6.0.zip.sha256 +0 -1
@@ -5,7 +5,7 @@ import type { EmbeddingPort } from "../../llm/types";
5
5
  import type { VectorIndexPort } from "./types";
6
6
 
7
7
  import { getStoredEmbeddingDimensions } from "./freshness";
8
- import { createVectorIndexPort } from "./sqlite-vec";
8
+ import { bindVectorIndexDatabase, createVectorIndexPort } from "./sqlite-vec";
9
9
 
10
10
  export async function createLazyVectorIndex(
11
11
  db: Database,
@@ -35,47 +35,50 @@ export async function createLazyVectorIndex(
35
35
  });
36
36
  return loading;
37
37
  };
38
- return {
39
- model,
40
- get dimensions() {
41
- return current?.dimensions ?? embedPort.dimensions();
38
+ return bindVectorIndexDatabase(
39
+ {
40
+ model,
41
+ get dimensions() {
42
+ return current?.dimensions ?? embedPort.dimensions();
43
+ },
44
+ get searchAvailable() {
45
+ return current?.searchAvailable ?? true;
46
+ },
47
+ get loadError() {
48
+ return current?.loadError;
49
+ },
50
+ get guidance() {
51
+ return current?.guidance;
52
+ },
53
+ get vecDirty() {
54
+ return current?.vecDirty ?? dirty;
55
+ },
56
+ set vecDirty(value) {
57
+ dirty = value;
58
+ if (current) current.vecDirty = value;
59
+ },
60
+ async upsertVectors(rows) {
61
+ return (await get()).upsertVectors(rows);
62
+ },
63
+ async upsertVectorsChecked(rows, checkpoint) {
64
+ const port = await get();
65
+ if (!port.upsertVectorsChecked)
66
+ throw new Error("Atomic vector checkpoint unavailable");
67
+ return port.upsertVectorsChecked(rows, checkpoint);
68
+ },
69
+ async deleteVectorsForMirror(hash) {
70
+ return (await get()).deleteVectorsForMirror(hash);
71
+ },
72
+ async searchNearest(embedding, k, options) {
73
+ return (await get()).searchNearest(embedding, k, options);
74
+ },
75
+ async rebuildVecIndex() {
76
+ return (await get()).rebuildVecIndex();
77
+ },
78
+ async syncVecIndex() {
79
+ return (await get()).syncVecIndex();
80
+ },
42
81
  },
43
- get searchAvailable() {
44
- return current?.searchAvailable ?? true;
45
- },
46
- get loadError() {
47
- return current?.loadError;
48
- },
49
- get guidance() {
50
- return current?.guidance;
51
- },
52
- get vecDirty() {
53
- return current?.vecDirty ?? dirty;
54
- },
55
- set vecDirty(value) {
56
- dirty = value;
57
- if (current) current.vecDirty = value;
58
- },
59
- async upsertVectors(rows) {
60
- return (await get()).upsertVectors(rows);
61
- },
62
- async upsertVectorsChecked(rows, checkpoint) {
63
- const port = await get();
64
- if (!port.upsertVectorsChecked)
65
- throw new Error("Atomic vector checkpoint unavailable");
66
- return port.upsertVectorsChecked(rows, checkpoint);
67
- },
68
- async deleteVectorsForMirror(hash) {
69
- return (await get()).deleteVectorsForMirror(hash);
70
- },
71
- async searchNearest(embedding, k, options) {
72
- return (await get()).searchNearest(embedding, k, options);
73
- },
74
- async rebuildVecIndex() {
75
- return (await get()).rebuildVecIndex();
76
- },
77
- async syncVecIndex() {
78
- return (await get()).syncVecIndex();
79
- },
80
- };
82
+ db
83
+ );
81
84
  }