laminark 2.21.7 → 2.21.9

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 (52) hide show
  1. package/README.md +36 -71
  2. package/package.json +9 -7
  3. package/plugin/.claude-plugin/plugin.json +1 -1
  4. package/plugin/CLAUDE.md +10 -0
  5. package/plugin/commands/recall.md +55 -0
  6. package/plugin/commands/remember.md +34 -0
  7. package/plugin/commands/resume.md +45 -0
  8. package/plugin/commands/stash.md +34 -0
  9. package/plugin/commands/status.md +33 -0
  10. package/plugin/dist/hooks/handler.d.ts +3 -1
  11. package/plugin/dist/hooks/handler.d.ts.map +1 -1
  12. package/plugin/dist/hooks/handler.js +312 -23
  13. package/plugin/dist/hooks/handler.js.map +1 -1
  14. package/plugin/dist/index.d.ts +3 -1
  15. package/plugin/dist/index.d.ts.map +1 -1
  16. package/plugin/dist/index.js +2111 -525
  17. package/plugin/dist/index.js.map +1 -1
  18. package/plugin/dist/{observations-Ch0nc47i.d.mts → observations-CorAAc1A.d.mts} +23 -1
  19. package/plugin/dist/observations-CorAAc1A.d.mts.map +1 -0
  20. package/plugin/dist/{tool-registry-CZ3mJ4iR.mjs → tool-registry-D8un_AcG.mjs} +932 -13
  21. package/plugin/dist/tool-registry-D8un_AcG.mjs.map +1 -0
  22. package/plugin/hooks/hooks.json +6 -6
  23. package/plugin/laminark.db +0 -0
  24. package/plugin/package.json +17 -0
  25. package/plugin/scripts/README.md +19 -1
  26. package/plugin/scripts/bump-version.sh +24 -19
  27. package/plugin/scripts/dev-sync.sh +58 -0
  28. package/plugin/scripts/ensure-deps.sh +5 -2
  29. package/plugin/scripts/install.sh +115 -39
  30. package/plugin/scripts/local-install.sh +93 -58
  31. package/plugin/scripts/uninstall.sh +76 -38
  32. package/plugin/scripts/update.sh +20 -69
  33. package/plugin/scripts/verify-install.sh +69 -25
  34. package/plugin/ui/activity.js +12 -0
  35. package/plugin/ui/app.js +24 -54
  36. package/plugin/ui/graph.js +413 -186
  37. package/plugin/ui/help/activity-feed.png +0 -0
  38. package/plugin/ui/help/analysis-panel.png +0 -0
  39. package/plugin/ui/help/graph-toolbar.png +0 -0
  40. package/plugin/ui/help/graph-view.png +0 -0
  41. package/plugin/ui/help/settings.png +0 -0
  42. package/plugin/ui/help/timeline.png +0 -0
  43. package/plugin/ui/help.js +876 -172
  44. package/plugin/ui/index.html +506 -242
  45. package/plugin/ui/settings.js +781 -17
  46. package/plugin/ui/styles.css +990 -44
  47. package/plugin/ui/timeline.js +2 -2
  48. package/plugin/ui/tools.js +826 -0
  49. package/.claude-plugin/marketplace.json +0 -15
  50. package/plugin/dist/observations-Ch0nc47i.d.mts.map +0 -1
  51. package/plugin/dist/tool-registry-CZ3mJ4iR.mjs.map +0 -1
  52. package/plugin/scripts/setup-tmpdir.sh +0 -65
@@ -1,3 +1,4 @@
1
+ import * as better_sqlite30 from "better-sqlite3";
1
2
  import Database from "better-sqlite3";
2
3
  import { z } from "zod";
3
4
 
@@ -86,8 +87,18 @@ declare class ObservationRepository {
86
87
  * Validates input with Zod at runtime.
87
88
  */
88
89
  create(input: ObservationInsert): Observation;
90
+ /**
91
+ * Resolves a full or prefix ID to the full 32-char ID.
92
+ * Observation IDs are 32-char hex strings. Search results display only the
93
+ * first 8 chars via shortId(). This method allows callers to pass either
94
+ * a full ID or an 8-char (or any-length) prefix and get the full ID back.
95
+ * Returns null if no unique match is found.
96
+ */
97
+ private resolveId;
89
98
  /**
90
99
  * Gets an observation by ID, scoped to this project.
100
+ * Accepts full 32-char IDs or shorter prefix strings (e.g. the 8-char
101
+ * display IDs shown in search results).
91
102
  * Returns null if not found or soft-deleted.
92
103
  */
93
104
  getById(id: string): Observation | null;
@@ -111,11 +122,15 @@ declare class ObservationRepository {
111
122
  update(id: string, updates: Partial<Pick<Observation, 'content' | 'embedding' | 'embeddingModel' | 'embeddingVersion'>>): Observation | null;
112
123
  /**
113
124
  * Soft-deletes an observation by setting deleted_at.
125
+ * Accepts full 32-char IDs or shorter prefix strings (e.g. the 8-char
126
+ * display IDs shown in search results).
114
127
  * Returns true if the observation was found and deleted.
115
128
  */
116
129
  softDelete(id: string): boolean;
117
130
  /**
118
131
  * Restores a soft-deleted observation by clearing deleted_at.
132
+ * Accepts full 32-char IDs or shorter prefix strings (e.g. the 8-char
133
+ * display IDs shown in search results).
119
134
  * Returns true if the observation was found and restored.
120
135
  */
121
136
  restore(id: string): boolean;
@@ -134,6 +149,11 @@ declare class ObservationRepository {
134
149
  * Returns observations ordered by created_at ASC (oldest first).
135
150
  */
136
151
  listUnclassified(limit?: number): Observation[];
152
+ /**
153
+ * Lists unclassified observations across ALL projects.
154
+ * Used by HaikuProcessor to avoid missing observations from other projects.
155
+ */
156
+ static listAllUnclassified(db: better_sqlite30.Database, limit?: number): Observation[];
137
157
  /**
138
158
  * Fetches observations surrounding a given timestamp for classification context.
139
159
  * Returns observations regardless of classification status.
@@ -145,6 +165,8 @@ declare class ObservationRepository {
145
165
  count(): number;
146
166
  /**
147
167
  * Gets an observation by ID, including soft-deleted observations.
168
+ * Accepts full 32-char IDs or shorter prefix strings (e.g. the 8-char
169
+ * display IDs shown in search results).
148
170
  * Used by the recall tool for restore operations (must find purged items).
149
171
  */
150
172
  getByIdIncludingDeleted(id: string): Observation | null;
@@ -167,4 +189,4 @@ declare class ObservationRepository {
167
189
  }
168
190
  //#endregion
169
191
  export { SearchResult as a, ObservationInsert as i, DatabaseConfig as n, Session as o, Observation as r, ObservationRepository as t };
170
- //# sourceMappingURL=observations-Ch0nc47i.d.mts.map
192
+ //# sourceMappingURL=observations-CorAAc1A.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observations-CorAAc1A.d.mts","names":[],"sources":["../../src/shared/types.ts","../../src/storage/observations.ts"],"mappings":";;;;;;;;;;KA0DY,yBAAA;AAAA,KAEA,eAAA;AAAA,UAEK,WAAA;EACf,KAAA;EACA,EAAA;EACA,WAAA;EACA,OAAA;EACA,KAAA;EACA,MAAA;EACA,SAAA;EACA,IAAA,EAAM,eAAA;EACN,SAAA,EAAW,YAAA;EACX,cAAA;EACA,gBAAA;EACA,cAAA,EAAgB,yBAAA;EAChB,YAAA;EACA,SAAA;EACA,SAAA;EACA,SAAA;AAAA;;;;;cAWW,uBAAA,EAAuB,CAAA,CAAA,SAAA;;;;;;;;;;KAWxB,iBAAA,GAAoB,CAAA,CAAE,KAAA,QAAa,uBAAA;AAAA,UAM9B,OAAA;EACf,EAAA;EACA,WAAA;EACA,SAAA;EACA,OAAA;EACA,OAAA;AAAA;AAAA,UAOe,YAAA;EACf,WAAA,EAAa,WAAA;EACb,KAAA;EACA,SAAA;EACA,OAAA;AAAA;AAAA,UAOe,cAAA;EACf,MAAA;EACA,WAAA;AAAA;;;;;;AAzEF;;;;;AAEA;;cCrCa,qBAAA;EAAA,iBACM,EAAA;EAAA,iBACA,WAAA;EAAA,iBAGA,UAAA;EAAA,iBACA,WAAA;EAAA,iBACA,2BAAA;EAAA,iBACA,cAAA;EAAA,iBACA,WAAA;EAAA,iBACA,SAAA;cAEL,EAAA,EAAI,QAAA,CAAc,QAAA,EAAU,WAAA;EDuCC;;;;ECIzC,MAAA,CAAO,KAAA,EAAO,iBAAA,GAAoB,WAAA;EDXlC;;;;;;;EAAA,QC2DQ,SAAA;EDrDR;;;;;;EC+EA,OAAA,CAAQ,EAAA,WAAa,WAAA;ED1EZ;;AAWX;;EC4EE,IAAA,CAAK,OAAA;IACH,KAAA;IACA,MAAA;IACA,SAAA;IACA,KAAA;IACA,IAAA;IACA,mBAAA;EAAA,IACE,WAAA;;;;;;EA6CJ,MAAA,CACE,EAAA,UACA,OAAA,EAAS,OAAA,CACP,IAAA,CACE,WAAA,sEAIH,WAAA;;;;;;;EAuDH,UAAA,CAAW,EAAA;;;;;;;EAcX,OAAA,CAAQ,EAAA;ED7M0B;;;;ECuNlC,oBAAA,CACE,EAAA,UACA,cAAA,EAAgB,yBAAA;;;;;EAgBlB,gBAAA,CAAiB,KAAA,EAAO,iBAAA,EAAmB,cAAA,EAAgB,yBAAA,GAA4B,WAAA;;;;;EAWvF,gBAAA,CAAiB,KAAA,YAAqB,WAAA;;;;;SAe/B,mBAAA,CAAoB,EAAA,EAfsB,eAAA,CAeO,QAAA,EAAU,KAAA,YAAqB,WAAA;;;;;EAevF,WAAA,CAAY,UAAA,UAAoB,UAAA,YAAyB,WAAA;;;;EAsCzD,KAAA,CAAA;;;;;;;EAWA,uBAAA,CAAwB,EAAA,WAAa,WAAA;;;;;EA8BrC,oBAAA,CAAqB,OAAA;IACnB,KAAA;IACA,MAAA;EAAA,IACE,WAAA;;;;;EAuBJ,UAAA,CACE,KAAA,UACA,OAAA;IAAY,KAAA;IAAgB,aAAA;EAAA,IAC3B,WAAA;AAAA"}