@jamesaphoenix/tx-test-utils 0.5.10 → 0.6.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.
package/README.md CHANGED
@@ -48,7 +48,7 @@ Composable primitives that handle the hard parts. You keep control of the orches
48
48
  ├─────────────────────────────────────────────────────────┤
49
49
  │ tx primitives │
50
50
  │ │
51
- │ tx ready tx done tx context tx learn
51
+ │ tx ready tx done tx context tx memory
52
52
  │ tx claim tx block tx sync tx trace │
53
53
  │ │
54
54
  └─────────────────────────────────────────────────────────┘
@@ -60,12 +60,36 @@ Composable primitives that handle the hard parts. You keep control of the orches
60
60
 
61
61
  ### Memory
62
62
 
63
- Learnings that persist and surface when relevant.
63
+ Filesystem-backed knowledge that persists, links, and surfaces when relevant.
64
+
65
+ ```bash
66
+ # Register a directory of markdown files
67
+ tx memory source add ./docs
68
+
69
+ # Index and search your knowledge
70
+ tx memory index
71
+ tx memory search "authentication patterns"
72
+ tx memory search "auth" --semantic --expand # BM25 + vector + graph
73
+
74
+ # Create, tag, and link documents
75
+ tx memory add "JWT Guide" --tags auth,security
76
+ tx memory tag mem-a7f3bc12 reviewed
77
+ tx memory link mem-a7f3bc12 mem-b8e4cd56
78
+
79
+ # Navigate the knowledge graph
80
+ tx memory links mem-a7f3bc12 # Outgoing wikilinks + edges
81
+ tx memory backlinks mem-a7f3bc12 # What links to this?
82
+ ```
83
+
84
+ Three search modes: BM25 keyword search, vector similarity (`--semantic`), and graph expansion (`--expand`) via wikilinks and `frontmatter.related`. Combined with RRF fusion for best results.
85
+
86
+ ### Learnings
87
+
88
+ Structured insights that attach to tasks and file paths.
64
89
 
65
90
  ```bash
66
91
  # Store knowledge
67
92
  tx learning:add "Use bcrypt for passwords, not SHA256"
68
- tx learning:add "Redis cache invalidation has race conditions" -c database
69
93
 
70
94
  # Attach learnings to file paths
71
95
  tx learn "src/auth/*.ts" "Services must use Effect-TS patterns"
@@ -217,7 +241,7 @@ Detailed rollout, detached service setup, rollback, and troubleshooting:
217
241
  |---|---|---|---|
218
242
  | **Persistence** | Session-scoped | File grows forever | Git-native, branch-aware |
219
243
  | **Multi-agent** | Collisions | Manual coordination | Claim with lease expiry |
220
- | **Knowledge** | Lost each session | Static dump | Hybrid search, contextual retrieval |
244
+ | **Knowledge** | Lost each session | Static dump | Filesystem memory, hybrid search, graph links |
221
245
  | **Orchestration** | None | None | Primitives for any pattern |
222
246
 
223
247
  ---
@@ -270,6 +294,25 @@ tx unblock <id> <blocker> # Remove dependency
270
294
  tx children <id> # List child tasks
271
295
  tx tree <id> # Show hierarchy
272
296
 
297
+ # Memory (filesystem-backed .md search)
298
+ tx memory source add <dir> # Register directory
299
+ tx memory source rm <dir> # Unregister directory
300
+ tx memory source list # Show registered directories
301
+ tx memory add <title> # Create .md file (--content, --tags, --dir)
302
+ tx memory index # Index all sources (--incremental, --status)
303
+ tx memory search <query> # BM25 search (--semantic, --expand, --tags, --prop)
304
+ tx memory show <id> # Display document
305
+ tx memory tag <id> <tags> # Add tags to frontmatter
306
+ tx memory untag <id> <t> # Remove tags
307
+ tx memory relate <id> <t> # Add to frontmatter.related
308
+ tx memory set <id> <k> <v> # Set property
309
+ tx memory unset <id> <k> # Remove property
310
+ tx memory props <id> # Show properties
311
+ tx memory links <id> # Outgoing wikilinks + edges
312
+ tx memory backlinks <id> # Incoming links
313
+ tx memory list # List documents (--source, --tags)
314
+ tx memory link <src> <tgt> # Create explicit edge
315
+
273
316
  # Context & Learnings
274
317
  tx learning:add <content> # Store knowledge
275
318
  tx learning:search <query> # Search learnings
@@ -56,7 +56,7 @@ export interface SharedTestLayer<L> {
56
56
  * ```
57
57
  */
58
58
  export declare const createSharedTestLayer: () => Promise<{
59
- layer: Layer.Layer<import("@jamesaphoenix/tx-core").MigrationService | import("@jamesaphoenix/tx-core").SqliteClient | import("@jamesaphoenix/tx-core").TaskRepository | import("@jamesaphoenix/tx-core").DependencyRepository | import("@jamesaphoenix/tx-core").LearningRepository | import("@jamesaphoenix/tx-core").FileLearningRepository | import("@jamesaphoenix/tx-core").AttemptRepository | import("@jamesaphoenix/tx-core").RunRepository | import("@jamesaphoenix/tx-core").AnchorRepository | import("@jamesaphoenix/tx-core").EdgeRepository | import("@jamesaphoenix/tx-core").DeduplicationRepository | import("@jamesaphoenix/tx-core").CandidateRepository | import("@jamesaphoenix/tx-core").TrackedProjectRepository | import("@jamesaphoenix/tx-core").WorkerRepository | import("@jamesaphoenix/tx-core").ClaimRepository | import("@jamesaphoenix/tx-core").OrchestratorStateRepository | import("@jamesaphoenix/tx-core").TaskService | import("@jamesaphoenix/tx-core").DependencyService | import("@jamesaphoenix/tx-core").ReadyService | import("@jamesaphoenix/tx-core").HierarchyService | import("@jamesaphoenix/tx-core").EdgeService | import("@jamesaphoenix/tx-core").GraphExpansionService | import("@jamesaphoenix/tx-core").FeedbackTrackerService | import("@jamesaphoenix/tx-core").DiversifierService | import("@jamesaphoenix/tx-core").RetrieverService | import("@jamesaphoenix/tx-core").LearningService | import("@jamesaphoenix/tx-core").FileLearningService | import("@jamesaphoenix/tx-core").AttemptService | import("@jamesaphoenix/tx-core").AnchorVerificationService | import("@jamesaphoenix/tx-core").AnchorService | import("@jamesaphoenix/tx-core").DeduplicationService | import("@jamesaphoenix/tx-core").SyncService | import("@jamesaphoenix/tx-core").SwarmVerificationService | import("@jamesaphoenix/tx-core").PromotionService | import("@jamesaphoenix/tx-core").WorkerService | import("@jamesaphoenix/tx-core").RunHeartbeatService | import("@jamesaphoenix/tx-core").ClaimService | import("@jamesaphoenix/tx-core").OrchestratorService | import("@jamesaphoenix/tx-core").DaemonService | import("@jamesaphoenix/tx-core").TracingService | import("@jamesaphoenix/tx-core").CompactionRepository | import("@jamesaphoenix/tx-core").CompactionService | import("@jamesaphoenix/tx-core").ValidationService | import("@jamesaphoenix/tx-core").MessageRepository | import("@jamesaphoenix/tx-core").MessageService | import("@jamesaphoenix/tx-core").DocRepository | import("@jamesaphoenix/tx-core").DocService, import("@jamesaphoenix/tx-core").DatabaseError, never>;
59
+ layer: Layer.Layer<import("@jamesaphoenix/tx-core").MigrationService | import("@jamesaphoenix/tx-core").SqliteClient | import("@jamesaphoenix/tx-core").TaskRepository | import("@jamesaphoenix/tx-core").DependencyRepository | import("@jamesaphoenix/tx-core").LearningRepository | import("@jamesaphoenix/tx-core").FileLearningRepository | import("@jamesaphoenix/tx-core").AttemptRepository | import("@jamesaphoenix/tx-core").RunRepository | import("@jamesaphoenix/tx-core").AnchorRepository | import("@jamesaphoenix/tx-core").EdgeRepository | import("@jamesaphoenix/tx-core").DeduplicationRepository | import("@jamesaphoenix/tx-core").CandidateRepository | import("@jamesaphoenix/tx-core").TrackedProjectRepository | import("@jamesaphoenix/tx-core").WorkerRepository | import("@jamesaphoenix/tx-core").ClaimRepository | import("@jamesaphoenix/tx-core").OrchestratorStateRepository | import("@jamesaphoenix/tx-core").TaskService | import("@jamesaphoenix/tx-core").DependencyService | import("@jamesaphoenix/tx-core").ReadyService | import("@jamesaphoenix/tx-core").HierarchyService | import("@jamesaphoenix/tx-core").EdgeService | import("@jamesaphoenix/tx-core").GraphExpansionService | import("@jamesaphoenix/tx-core").FeedbackTrackerService | import("@jamesaphoenix/tx-core").DiversifierService | import("@jamesaphoenix/tx-core").RetrieverService | import("@jamesaphoenix/tx-core").LearningService | import("@jamesaphoenix/tx-core").FileLearningService | import("@jamesaphoenix/tx-core").AttemptService | import("@jamesaphoenix/tx-core").AnchorVerificationService | import("@jamesaphoenix/tx-core").AnchorService | import("@jamesaphoenix/tx-core").DeduplicationService | import("@jamesaphoenix/tx-core").PinRepository | import("@jamesaphoenix/tx-core").DocRepository | import("@jamesaphoenix/tx-core").SyncService | import("@jamesaphoenix/tx-core").SwarmVerificationService | import("@jamesaphoenix/tx-core").PromotionService | import("@jamesaphoenix/tx-core").WorkerService | import("@jamesaphoenix/tx-core").RunHeartbeatService | import("@jamesaphoenix/tx-core").ClaimService | import("@jamesaphoenix/tx-core").OrchestratorService | import("@jamesaphoenix/tx-core").DaemonService | import("@jamesaphoenix/tx-core").TracingService | import("@jamesaphoenix/tx-core").CompactionRepository | import("@jamesaphoenix/tx-core").CompactionService | import("@jamesaphoenix/tx-core").ValidationService | import("@jamesaphoenix/tx-core").MessageRepository | import("@jamesaphoenix/tx-core").MessageService | import("@jamesaphoenix/tx-core").DocService | import("@jamesaphoenix/tx-core").MemoryDocumentRepository | import("@jamesaphoenix/tx-core").MemoryLinkRepository | import("@jamesaphoenix/tx-core").MemoryPropertyRepository | import("@jamesaphoenix/tx-core").MemorySourceRepository | import("@jamesaphoenix/tx-core").MemoryService | import("@jamesaphoenix/tx-core").MemoryRetrieverService | import("@jamesaphoenix/tx-core").PinService, import("@jamesaphoenix/tx-core").DatabaseError, never>;
60
60
  reset: () => Promise<void>;
61
61
  close: () => Promise<void>;
62
62
  getDb: () => Database;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jamesaphoenix/tx-test-utils",
3
- "version": "0.5.10",
3
+ "version": "0.6.1",
4
4
  "description": "Test utilities, factories, fixtures, and helpers for tx monorepo",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",