mrplex 0.1.0 → 0.2.0
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 +165 -118
- package/dist/cli/config.d.ts +0 -4
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/main.js +56 -11
- package/dist/cli/main.js.map +1 -1
- package/dist/embed/cmd-hook.d.ts +3 -3
- package/dist/embed/cmd-hook.js +3 -3
- package/dist/embed/config.d.ts +3 -17
- package/dist/embed/config.js +6 -38
- package/dist/embed/config.js.map +1 -1
- package/dist/embed/hook.d.ts +4 -3
- package/dist/embed/hook.js +4 -3
- package/dist/embed/hook.js.map +1 -1
- package/dist/embed/http-hook.d.ts +3 -2
- package/dist/embed/http-hook.js +3 -2
- package/dist/embed/http-hook.js.map +1 -1
- package/dist/sync/reconcile.js +47 -3
- package/dist/sync/reconcile.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,90 +2,165 @@
|
|
|
2
2
|
|
|
3
3
|
*Markdown Repos, plexed.*
|
|
4
4
|
|
|
5
|
-
mrplex
|
|
5
|
+
mrplex turns a folder of Markdown files into a queryable, versioned knowledge store — without taking your files hostage. Your notes stay ordinary `.md` on disk, readable and editable by any tool you already use. On top of that folder mrplex adds four things a plain directory can't give you:
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
- **Search** over your YAML frontmatter — filter with a small expression language, run full-text search across bodies, and (optionally) rank by meaning.
|
|
8
|
+
- **Versions** — every write is kept, so you can see history, diff two points, and never lose an overwrite to a race.
|
|
9
|
+
- **A link graph** that tracks how your documents connect and survives renames, so moving a file doesn't break the links pointing at it.
|
|
10
|
+
- **One model over three surfaces** — the same store is reachable from the CLI, from an MCP server, and over REST.
|
|
8
11
|
|
|
9
|
-
|
|
12
|
+
That last point is the reason mrplex exists: it gives an AI agent a way to *explore and maintain* a vault the way a person would — by asking precise questions and following relationships — instead of grepping around and guessing.
|
|
10
13
|
|
|
11
|
-
##
|
|
14
|
+
## Quickstart
|
|
12
15
|
|
|
13
|
-
Node
|
|
16
|
+
Install it (Node 20.11 or newer):
|
|
14
17
|
|
|
15
|
-
```
|
|
16
|
-
npm install -g mrplex
|
|
18
|
+
```sh
|
|
19
|
+
$ npm install -g mrplex
|
|
17
20
|
```
|
|
18
21
|
|
|
19
|
-
|
|
22
|
+
Point it at a folder of Markdown and start asking questions:
|
|
23
|
+
|
|
24
|
+
```sh
|
|
25
|
+
$ mrplex repos create notes
|
|
26
|
+
created repo notes
|
|
27
|
+
$ mrplex config set-repo notes # remember the default; no more -r on every command
|
|
28
|
+
config: repo set
|
|
29
|
+
$ mrplex sync ~/notes --once
|
|
30
|
+
sync notes @ ~/notes: through=v0 actions=128 feed=0
|
|
31
|
+
$ mrplex query --text 'that thing you half remember'
|
|
32
|
+
$path
|
|
33
|
+
---------------------------
|
|
34
|
+
projects/roadmap.md
|
|
35
|
+
meeting-notes/2026-08-12.md
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
That's the whole loop: create a repo, load a folder into it, then query. A repo is just a named collection of documents inside one database (which defaults to `./mrplex.db` — no configuration needed). Any folder of `.md` works, Obsidian vaults included.
|
|
20
39
|
|
|
21
|
-
|
|
40
|
+
`sync` is two-way. With `--once` it reconciles the folder and the store a single time and exits; drop the flag and it keeps running, watching for changes on both sides. To do that it records a little bookkeeping — two keys, `$version` and `$content_hash` — in each file's frontmatter. That's how a file on disk remembers which stored version it came from, so edits made outside mrplex are matched up correctly on the next sync.
|
|
22
41
|
|
|
23
|
-
##
|
|
42
|
+
## A guided tour: the USS Meridian
|
|
24
43
|
|
|
25
|
-
The
|
|
44
|
+
The repository ships a demo vault in `fixtures/starship/` — the crew, missions, logs, and equipment of a fictional survey starship, all short interlinked notes. It's the easiest way to see what the queries actually do.
|
|
26
45
|
|
|
27
|
-
|
|
28
|
-
git clone https://github.com/usergenic/mrplex
|
|
29
|
-
cd mrplex
|
|
30
|
-
npm install && npm link
|
|
46
|
+
First copy it out of the checkout and load it. (Copy rather than sync in place: `sync` writes those `$version` tracking keys into the files, and there's no reason to dirty the committed fixture.)
|
|
31
47
|
|
|
32
|
-
|
|
33
|
-
|
|
48
|
+
```sh
|
|
49
|
+
$ git clone https://github.com/usergenic/mrplex
|
|
50
|
+
$ cp -r mrplex/fixtures/starship .
|
|
51
|
+
$ mrplex repos create starship
|
|
52
|
+
created repo starship
|
|
53
|
+
$ mrplex config set-repo starship
|
|
54
|
+
config: repo set
|
|
55
|
+
$ mrplex sync starship --once
|
|
56
|
+
sync starship @ starship: through=v0 actions=30 feed=0
|
|
34
57
|
```
|
|
35
58
|
|
|
36
|
-
|
|
59
|
+
### Ask about your frontmatter
|
|
60
|
+
|
|
61
|
+
Filters are written in [CEL](https://cel.dev/) — a small, safe expression language — and evaluated against each document's frontmatter, plus a few built-in fields like `$path` and `$body`. So "what equipment is broken right now?" is a plain boolean expression over the `status` field. Use `-s` (repeatable) to choose which fields come back in the table:
|
|
37
62
|
|
|
38
|
-
|
|
63
|
+
```sh
|
|
64
|
+
$ mrplex query --filter 'status == "damaged" || status == "offline"' -s title -s status -s maintainer
|
|
65
|
+
title status maintainer
|
|
66
|
+
---------------------------- ------- -------------------
|
|
67
|
+
Shuttle Corvid offline /crew/dax-thorne.md
|
|
68
|
+
Number Three Plasma Manifold damaged /crew/bexley-orr.md
|
|
69
|
+
```
|
|
39
70
|
|
|
40
|
-
|
|
41
|
-
# What's broken?
|
|
42
|
-
mrplex -r starship query --filter 'status == "damaged" || status == "offline"'
|
|
71
|
+
### Ask about the links between documents
|
|
43
72
|
|
|
44
|
-
|
|
45
|
-
mrplex -r starship query --filter '$has("crew/kestrel-vance.md", "reports_to")'
|
|
73
|
+
Some questions are about *relationships* rather than fields — "who reports to the captain?" The frontmatter in each crew file has a `reports_to` link, and mrplex indexes those into a graph you can query directly. `$has(target, field)` means "which documents link to `target` through `field`":
|
|
46
74
|
|
|
47
|
-
|
|
48
|
-
mrplex
|
|
75
|
+
```sh
|
|
76
|
+
$ mrplex query --filter '$has("crew/kestrel-vance.md", "reports_to")'
|
|
77
|
+
$path
|
|
78
|
+
---------------------
|
|
79
|
+
crew/quill-vasquez.md
|
|
80
|
+
crew/dax-thorne.md
|
|
81
|
+
crew/aria-okonkwo.md
|
|
49
82
|
```
|
|
50
83
|
|
|
51
|
-
|
|
84
|
+
### Combine filters, text, and meaning
|
|
85
|
+
|
|
86
|
+
A filter, a full-text search, and a semantic search can all be given at once; results must satisfy all of them (they combine with AND). Here: log entries — `type == "log"` — that also mention "coolant":
|
|
52
87
|
|
|
53
|
-
|
|
88
|
+
```sh
|
|
89
|
+
$ mrplex query --filter 'type == "log"' --text 'coolant'
|
|
90
|
+
$path
|
|
91
|
+
---------------------
|
|
92
|
+
logs/orr-4413-1.md
|
|
93
|
+
logs/thorne-4413-2.md
|
|
94
|
+
```
|
|
54
95
|
|
|
55
|
-
|
|
96
|
+
By default a query returns just the paths of the matches. You then fetch the full content of only the documents you actually need. This keeps result sets small — which matters a lot when the thing running the query is an agent paying by the token.
|
|
56
97
|
|
|
57
|
-
|
|
98
|
+
### Rename a file without breaking its backlinks
|
|
58
99
|
|
|
59
|
-
|
|
60
|
-
# Everything a map-of-content claims
|
|
61
|
-
mrplex -r starship query --filter '$in("moc/missions.md")'
|
|
100
|
+
This is the payoff of tracking links as a graph. mrplex ties each link to a document's *identity*, not to the path string someone typed. Rename a document and everything that pointed at it still points at it.
|
|
62
101
|
|
|
63
|
-
|
|
64
|
-
mrplex -r starship query --filter '$has("equipment/plasma-manifold-3.md")'
|
|
102
|
+
`docs mv` moves a document. The `--prev` flag is how mrplex prevents two writers from clobbering each other: you pass the version you're basing your change on, and the write is rejected if someone else moved first (more on that below).
|
|
65
103
|
|
|
66
|
-
|
|
67
|
-
mrplex
|
|
68
|
-
mrplex
|
|
104
|
+
```sh
|
|
105
|
+
$ V=$(mrplex --json docs get equipment/plasma-manifold-3.md | jq -r .version_id)
|
|
106
|
+
$ mrplex docs mv equipment/manifold-3.md --prev "$V"
|
|
107
|
+
v31
|
|
108
|
+
wrote starship/equipment/manifold-3.md @ v31 (author: mrplex)
|
|
69
109
|
```
|
|
70
110
|
|
|
71
|
-
|
|
111
|
+
Seven documents linked to the old path. Ask the graph who links to the *new* path, and all seven are already there — the relationships followed the document:
|
|
112
|
+
|
|
113
|
+
```sh
|
|
114
|
+
$ mrplex query --filter '$has("equipment/manifold-3.md")'
|
|
115
|
+
$path
|
|
116
|
+
---------------------------
|
|
117
|
+
missions/the-cinder-run.md
|
|
118
|
+
logs/thorne-4413-2.md
|
|
119
|
+
logs/orr-4420-1.md
|
|
120
|
+
logs/orr-4413-1.md
|
|
121
|
+
equipment/coolant-loop-b.md
|
|
122
|
+
crew/dax-thorne.md
|
|
123
|
+
crew/bexley-orr.md
|
|
124
|
+
```
|
|
72
125
|
|
|
73
|
-
|
|
126
|
+
The graph is correct, but the *link text* those files still contain on disk (`equipment/plasma-manifold-3.md`) is now out of date. `links stale` shows you exactly where, and `links repair` rewrites it for you:
|
|
127
|
+
|
|
128
|
+
```sh
|
|
129
|
+
$ mrplex links stale
|
|
130
|
+
crew/bexley-orr.md: "equipment/plasma-manifold-3.md" → "equipment/manifold-3.md"
|
|
131
|
+
crew/dax-thorne.md: "equipment/plasma-manifold-3.md" → "equipment/manifold-3.md"
|
|
132
|
+
equipment/coolant-loop-b.md: "equipment/plasma-manifold-3.md" → "equipment/manifold-3.md"
|
|
133
|
+
logs/orr-4413-1.md: "equipment/plasma-manifold-3.md" → "equipment/manifold-3.md"
|
|
134
|
+
logs/orr-4420-1.md: "equipment/plasma-manifold-3.md" → "equipment/manifold-3.md"
|
|
135
|
+
logs/thorne-4413-2.md: "equipment/plasma-manifold-3.md" → "equipment/manifold-3.md"
|
|
136
|
+
missions/the-cinder-run.md: "equipment/plasma-manifold-3.md" → "equipment/manifold-3.md"
|
|
137
|
+
$ mrplex links repair
|
|
138
|
+
repaired 7 doc(s), skipped 0
|
|
139
|
+
```
|
|
74
140
|
|
|
75
|
-
|
|
76
|
-
V=$(mrplex -r starship --json docs get equipment/plasma-manifold-3.md | jq -r .version_id)
|
|
77
|
-
mrplex -r starship docs mv equipment/manifold-3.md --prev "$V"
|
|
141
|
+
### Explore a neighborhood
|
|
78
142
|
|
|
79
|
-
|
|
80
|
-
mrplex -r starship links stale
|
|
143
|
+
`query` finds documents that match. `graph` shows you how a document connects — the links going out of it and coming into it, out to a chosen number of hops. `--render summary` prints it as an indented outline (`→` is a link out, `←` a link in, and the parenthetical is the field the link came from):
|
|
81
144
|
|
|
82
|
-
|
|
83
|
-
mrplex
|
|
145
|
+
```sh
|
|
146
|
+
$ mrplex graph --roots equipment/manifold-3.md --degrees 1 --render summary
|
|
147
|
+
equipment/manifold-3.md (0)
|
|
148
|
+
→($body) equipment/coolant-loop-b.md, missions/the-cinder-run.md
|
|
149
|
+
→(maintainer) crew/bexley-orr.md
|
|
150
|
+
→(related) equipment/coolant-loop-b.md
|
|
151
|
+
←($body) crew/bexley-orr.md, crew/dax-thorne.md, equipment/coolant-loop-b.md, logs/orr-4413-1.md, ...
|
|
152
|
+
... (each neighbor expands the same way, out to the requested degree)
|
|
84
153
|
```
|
|
85
154
|
|
|
155
|
+
Use `--render mermaid` instead to get a diagram you can paste into any Markdown renderer.
|
|
156
|
+
|
|
157
|
+
### Versions, always
|
|
158
|
+
|
|
159
|
+
Every write appends a new version rather than overwriting — so history is never lost. That's also what makes `--prev` work: it's *optimistic concurrency*. You tell a write which version you started from; if someone else has written in the meantime, yours is rejected and you're handed the current version to reconcile against, instead of silently clobbering their change. Deleting a document moves it aside to `:deleted/…` rather than erasing it, so a delete can be undone with an ordinary write. When you need the record, `docs history` lists a document's versions and `docs diff --from v1 --to v2` shows what changed.
|
|
160
|
+
|
|
86
161
|
## Connect an agent
|
|
87
162
|
|
|
88
|
-
CLI, MCP, and REST are
|
|
163
|
+
The CLI, the MCP server, and the REST API are three doors into the same store. For a database only you touch, the quickest way to give an agent access is MCP over local stdio — for example, in a client's MCP configuration:
|
|
89
164
|
|
|
90
165
|
```json
|
|
91
166
|
{
|
|
@@ -98,103 +173,75 @@ CLI, MCP, and REST are surfaces over one kernel. For a database only you can tou
|
|
|
98
173
|
}
|
|
99
174
|
```
|
|
100
175
|
|
|
101
|
-
`--unsafe`
|
|
176
|
+
`--unsafe` runs the store with no authentication — every caller has full access. That's an acceptable choice for a private database file on your own machine, and the wrong choice for anything reachable over a network. The next section is what you use instead — when more than one principal is involved, or when you want to guard against a destructive agent mishap.
|
|
102
177
|
|
|
103
|
-
|
|
178
|
+
## Access control
|
|
104
179
|
|
|
105
|
-
|
|
180
|
+
When you need real principals — say, an agent that may read and write documents, plus a separate admin identity that can create and delete repos — mrplex generates a starter policy and signing keys for you, so there's no YAML to write by hand:
|
|
106
181
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
mrplex
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
KEY=$(mrplex key mint brendan --policy policy.yaml) # MCP day-to-day
|
|
114
|
-
# mrplex key mint admin --policy policy.yaml # when you need repos create/delete
|
|
115
|
-
|
|
116
|
-
mrplex serve --policy policy.yaml --audit audit.jsonl --port 8321 &
|
|
117
|
-
# or: mrplex mcp-stdio --policy policy.yaml --key "$KEY"
|
|
182
|
+
```sh
|
|
183
|
+
$ mrplex policy create policy.yaml --principal agent
|
|
184
|
+
wrote policy.yaml
|
|
185
|
+
$ mrplex key mint agent --policy policy.yaml # a day-to-day key for the agent
|
|
186
|
+
$ mrplex serve --policy policy.yaml --audit audit.jsonl
|
|
118
187
|
```
|
|
119
188
|
|
|
120
|
-
`policy create`
|
|
189
|
+
`policy create` takes the filename to write and scaffolds two roles: a `maintainer` (the `--principal` you name) for everyday reads and writes, and an `operator` admin for repo management. `policy check` validates a policy and can print out exactly what a given principal is allowed to do.
|
|
121
190
|
|
|
122
|
-
|
|
191
|
+
You can enforce that policy in three arrangements: embedded in the server (`serve --policy`), in front of the stdio launcher (`mcp-stdio --policy`), or as a standalone proxy ahead of an existing engine (`proxy --policy --upstream`). Edit the file and send the server `SIGHUP` (`kill -HUP`) to reload it without downtime; `mrplex login` signs in through an OIDC device flow. Full details are in [docs/archive/security.md](docs/archive/security.md).
|
|
123
192
|
|
|
124
|
-
|
|
193
|
+
One rule worth repeating: never expose `serve --unsafe` to an untrusted network — it is, by definition, an open door.
|
|
125
194
|
|
|
126
195
|
## How it works
|
|
127
196
|
|
|
128
|
-
|
|
129
|
-
| -------------- | ---------------------------------------------------------------------------------------- |
|
|
130
|
-
| **Document** | One Markdown file with YAML frontmatter, addressed by repo-relative path |
|
|
131
|
-
| **Version** | Every write appends. `prev_version_id` rejects stale writers |
|
|
132
|
-
| **Query** | CEL over frontmatter + `$path` / `$body` / `$updated_at`; AND with FTS and semantic |
|
|
133
|
-
| **Link graph** | Derived from inline links, wikilinks, and frontmatter repo-root paths. Bound to identity |
|
|
134
|
-
| **Graph** | BFS neighborhood. *How* things connect, not only *which* match |
|
|
135
|
-
| **Surfaces** | CLI (`--database` or `--server`), MCP (`/mcp` or `mcp-stdio`), REST |
|
|
197
|
+
mrplex is built from a few concepts:
|
|
136
198
|
|
|
137
|
-
|
|
199
|
+
| Concept | What it is |
|
|
200
|
+
| -------------- | ------------------------------------------------------------------------------------------ |
|
|
201
|
+
| **Document** | One Markdown file with YAML frontmatter, addressed by its path within a repo |
|
|
202
|
+
| **Version** | Every write appends a new one; `--prev` rejects a write based on a stale version |
|
|
203
|
+
| **Query** | A CEL filter over frontmatter and `$path` / `$body` / `$updated_at`, combined with full-text and semantic search |
|
|
204
|
+
| **Link graph** | Links from Markdown syntax, wikilinks, and frontmatter paths, tracked by identity so renames don't break them |
|
|
205
|
+
| **Graph walk** | A breadth-first tour of that link graph — *how* documents connect, not just which ones match |
|
|
206
|
+
| **Surfaces** | The CLI, an MCP server, and a REST API, all over the same store |
|
|
138
207
|
|
|
139
|
-
|
|
208
|
+
Underneath, mrplex is two layers. The **kernel** is the store itself — documents, versions, queries, the graph — and it is full-trust: it has no notion of users, so whoever holds the database file holds everything. Around it is an optional **access-and-identity shell** that adds keys, OIDC, per-path permissions, and an audit log when you need them. The store runs on SQLite by default, or Postgres with pgvector when you want it; the same test suite runs against both, so behavior matches.
|
|
140
209
|
|
|
141
|
-
|
|
142
|
-
- Optimistic concurrency; delete-as-move; unified diff
|
|
143
|
-
- CEL + `list()` for scalar-or-list fields; `$in` / `$has` / `$backlinks` / `$links` (membership is a filter, not a separate CLI flag)
|
|
144
|
-
- FTS5 or Postgres `websearch_to_tsquery`
|
|
145
|
-
- Pluggable embedder; no hook → `semantic_unavailable` instead of silent junk vectors
|
|
146
|
-
- SQLite default or Postgres+pgvector; same kernel suite on both
|
|
147
|
-
- NFC + case-insensitive identity, case-preserved storage
|
|
210
|
+
## Semantic search
|
|
148
211
|
|
|
149
|
-
|
|
212
|
+
mrplex never calls an embedding provider on its own — you decide what does the embedding by wiring in a hook. The companion package `@mrplex/embedder` runs a small local model on CPU, which is enough to get started:
|
|
150
213
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
mrplex serve --unsafe --embedder mrplex-embedder
|
|
157
|
-
mrplex embed backfill -r starship
|
|
158
|
-
mrplex -r starship query --semantic 'distress beacon star map'
|
|
214
|
+
```sh
|
|
215
|
+
$ npm install -g @mrplex/embedder
|
|
216
|
+
$ mrplex serve --unsafe --embedder mrplex-embedder
|
|
217
|
+
$ mrplex embed backfill # embed everything already in the repo
|
|
218
|
+
$ mrplex query --semantic 'distress beacon star map'
|
|
159
219
|
```
|
|
160
220
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
Use semantic search to generate candidates. Then filter, hydrate, and read. Rank without inspection is how agents launder a guess into a citation.
|
|
221
|
+
Point `--embedder` at a command (like the one above) or at an `http(s)://` URL for a remote embedding service. If no hook is configured, a semantic query returns a clear `semantic_unavailable` error rather than silently ranking by nothing. And treat semantic results as a shortlist of candidates worth reading, not a final answer — skim the top hits before you rely on them. The hook protocol is documented in [packages/embedder/README.md](packages/embedder/README.md).
|
|
164
222
|
|
|
165
|
-
##
|
|
223
|
+
## Configuration
|
|
166
224
|
|
|
167
|
-
|
|
225
|
+
Every setting resolves in the same order: a command-line **flag**, then an **environment variable**, then the **config file**, then a built-in default. Save the defaults you're tired of typing:
|
|
168
226
|
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
mrplex config set-database ./mrplex.db
|
|
173
|
-
mrplex config set-repo starship
|
|
174
|
-
mrplex config set-author "Brendan Baldwin <brendan@example.com>"
|
|
227
|
+
```sh
|
|
228
|
+
$ mrplex config set-database ./mrplex.db
|
|
229
|
+
$ mrplex config set-author "Ada Lovelace <ada@example.com>"
|
|
175
230
|
```
|
|
176
231
|
|
|
177
|
-
|
|
232
|
+
The matching environment variables are `MRPLEX_DATABASE`, `MRPLEX_REPO`, `MRPLEX_AUTHOR`, and `MRPLEX_EMBEDDER`.
|
|
178
233
|
|
|
179
|
-
|
|
234
|
+
A note on repo scope: your default repo (from `config set-repo` or `MRPLEX_REPO`) applies to every command, `query` included. To search more than one repo, say so on that command: `query -r` can be repeated and accepts glob patterns, and `-r '*'` searches every repo in the database. The wildcard only works as an explicit flag — a saved default can never quietly widen a search to your whole database.
|
|
180
235
|
|
|
181
|
-
|
|
182
|
-
npm install
|
|
183
|
-
npm link
|
|
184
|
-
npm test
|
|
185
|
-
npm run typecheck
|
|
186
|
-
npm run lint
|
|
187
|
-
npm run build
|
|
236
|
+
## Development
|
|
188
237
|
|
|
189
|
-
|
|
238
|
+
```sh
|
|
239
|
+
$ npm install && npm link
|
|
240
|
+
$ npm test
|
|
241
|
+
$ npm run typecheck && npm run lint && npm run build
|
|
190
242
|
```
|
|
191
243
|
|
|
192
|
-
CI
|
|
193
|
-
|
|
194
|
-
```bash
|
|
195
|
-
npm run pg:up
|
|
196
|
-
mrplex --database postgres://mrplex:mrplex@localhost:5432/mrplex serve --unsafe
|
|
197
|
-
```
|
|
244
|
+
CI runs typecheck, lint, and tests on Ubuntu and macOS across Node 20 and 22, plus a Postgres + pgvector parity run (`npm run pg:up` starts a local instance). If `better-sqlite3` reports a `NODE_MODULE_VERSION` mismatch, rebuild it with `npm rebuild better-sqlite3`.
|
|
198
245
|
|
|
199
246
|
## License
|
|
200
247
|
|
package/dist/cli/config.d.ts
CHANGED
|
@@ -18,10 +18,6 @@ export type CliConfig = {
|
|
|
18
18
|
author?: string;
|
|
19
19
|
/** Default --embedder (command or http(s):// URL). */
|
|
20
20
|
embedder?: string;
|
|
21
|
-
/** @deprecated Use `embedder`. */
|
|
22
|
-
embed_url?: string;
|
|
23
|
-
/** @deprecated Use `embedder`. */
|
|
24
|
-
embed_cmd?: string;
|
|
25
21
|
};
|
|
26
22
|
export declare function configPath(): string;
|
|
27
23
|
export declare function loadConfig(): CliConfig;
|
package/dist/cli/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/cli/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAY1C,MAAM,UAAU,UAAU;IACxB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IAC5E,OAAO,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;QAC3C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3E,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,MAAmB,CAAC;IAC7B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,2EAA2E;QAC3E,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QAChE,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAe;IACxC,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;IAC1B,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,aAAa,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3E,IAAI,CAAC;QACH,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,yDAAyD;IAC3D,CAAC;AACH,CAAC"}
|
package/dist/cli/main.js
CHANGED
|
@@ -229,16 +229,52 @@ function resolveRepoSlug(opts) {
|
|
|
229
229
|
err.code = "cli_usage";
|
|
230
230
|
throw err;
|
|
231
231
|
}
|
|
232
|
+
if (isRepoPattern(value)) {
|
|
233
|
+
const err = new Error(`repo "${value}" is a pattern — this command addresses exactly one repo; globs only apply to \`query -r\``);
|
|
234
|
+
err.code = "cli_usage";
|
|
235
|
+
throw err;
|
|
236
|
+
}
|
|
232
237
|
return value;
|
|
233
238
|
}
|
|
239
|
+
/** True when `slug` is a glob pattern rather than a concrete repo slug. */
|
|
240
|
+
function isRepoPattern(slug) {
|
|
241
|
+
return slug.includes("*") || slug.includes("?");
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Repo selector for `query`. An explicit -r typed at the call site (query-local
|
|
245
|
+
* or global) passes through untouched — wildcards included. Otherwise the
|
|
246
|
+
* resolved default (MRPLEX_REPO, then config `repo`) must name ONE concrete
|
|
247
|
+
* repo: a wildcard scope is an explicit per-call act and is never honored from
|
|
248
|
+
* a persisted default. With no repo at all, error — unscoped query does not
|
|
249
|
+
* silently search every repo.
|
|
250
|
+
*/
|
|
251
|
+
function resolveQueryRepoSelector(cmd, localRepo) {
|
|
252
|
+
if (localRepo && localRepo.length > 0)
|
|
253
|
+
return localRepo;
|
|
254
|
+
const value = cmd.optsWithGlobals().repo ?? loadConfig().repo;
|
|
255
|
+
if (!value) {
|
|
256
|
+
const err = new Error("query needs a repo — pass -r <slug-or-glob> (-r '*' searches every repo), " +
|
|
257
|
+
"or set a default with MRPLEX_REPO / `mrplex config set-repo <slug>`");
|
|
258
|
+
err.code = "cli_usage";
|
|
259
|
+
throw err;
|
|
260
|
+
}
|
|
261
|
+
// Commander merges the global -r flag and MRPLEX_REPO into one value; only
|
|
262
|
+
// the flag ("cli") may carry a wildcard.
|
|
263
|
+
if (cmd.getOptionValueSourceWithGlobals("repo") !== "cli" && isRepoPattern(value)) {
|
|
264
|
+
const err = new Error(`default repo "${value}" is a pattern — a wildcard scope must be passed explicitly with -r, never set as a default`);
|
|
265
|
+
err.code = "cli_usage";
|
|
266
|
+
throw err;
|
|
267
|
+
}
|
|
268
|
+
return [value];
|
|
269
|
+
}
|
|
234
270
|
/**
|
|
235
271
|
* Open the right KernelClient — remote if `--server` (or MRPLEX_SERVER / config
|
|
236
272
|
* `server`) is set, otherwise the local in-process client. Enforces the
|
|
237
273
|
* m3-plan decision that --database and --server are mutually exclusive.
|
|
238
274
|
*
|
|
239
|
-
* In local mode we also resolve an embed hook (from --embedder
|
|
240
|
-
*
|
|
241
|
-
*
|
|
275
|
+
* In local mode we also resolve an embed hook (from --embedder, MRPLEX_EMBEDDER,
|
|
276
|
+
* or the CLI config) — needed for CLI-local semantic enqueue on writes done
|
|
277
|
+
* through the CLI.
|
|
242
278
|
*/
|
|
243
279
|
async function openClient(opts, embedFlags = {}) {
|
|
244
280
|
const server = resolveServer(opts);
|
|
@@ -708,6 +744,11 @@ function buildProgram() {
|
|
|
708
744
|
.command("set-repo <slug>")
|
|
709
745
|
.description("write the default -r/--repo slug to the CLI config")
|
|
710
746
|
.action((slug) => {
|
|
747
|
+
if (isRepoPattern(slug)) {
|
|
748
|
+
const err = new Error(`config: "${slug}" is a pattern — a wildcard repo scope must be passed per call with -r, never set as the default`);
|
|
749
|
+
err.code = "cli_usage";
|
|
750
|
+
reportError(err);
|
|
751
|
+
}
|
|
711
752
|
const c = { ...loadConfig(), repo: slug };
|
|
712
753
|
saveConfig(c);
|
|
713
754
|
process.stderr.write("config: repo set\n");
|
|
@@ -724,10 +765,7 @@ function buildProgram() {
|
|
|
724
765
|
.command("set-embedder <spec>")
|
|
725
766
|
.description("write the default --embedder to the CLI config (command or http(s):// URL)")
|
|
726
767
|
.action((spec) => {
|
|
727
|
-
const
|
|
728
|
-
const c = { ...prev, embedder: spec };
|
|
729
|
-
delete c.embed_url;
|
|
730
|
-
delete c.embed_cmd;
|
|
768
|
+
const c = { ...loadConfig(), embedder: spec };
|
|
731
769
|
saveConfig(c);
|
|
732
770
|
process.stderr.write("config: embedder set\n");
|
|
733
771
|
});
|
|
@@ -775,15 +813,15 @@ function buildProgram() {
|
|
|
775
813
|
// -------- policy --------
|
|
776
814
|
const policy = program.command("policy").description("policy-file tooling for the auth shell");
|
|
777
815
|
policy
|
|
778
|
-
.command("create
|
|
779
|
-
.description("write a starter policy
|
|
816
|
+
.command("create <file>")
|
|
817
|
+
.description("write a starter policy file (admin + maintainer)")
|
|
780
818
|
.option("--principal <id>", "maintainer principal id (MCP day-to-day)", "local")
|
|
781
819
|
.option("--force", "overwrite the file if it already exists", false)
|
|
782
820
|
.action(function (file) {
|
|
783
821
|
const localOpts = this.opts();
|
|
784
822
|
const gopts = this.optsWithGlobals();
|
|
785
823
|
try {
|
|
786
|
-
const path = file
|
|
824
|
+
const path = file;
|
|
787
825
|
if (existsSync(path) && !localOpts.force) {
|
|
788
826
|
const err = new Error(`policy: ${path} already exists (pass --force to overwrite)`);
|
|
789
827
|
err.code = "cli_usage";
|
|
@@ -1153,9 +1191,16 @@ function buildProgram() {
|
|
|
1153
1191
|
queryCmd.action(function () {
|
|
1154
1192
|
const localOpts = this.opts();
|
|
1155
1193
|
const embedFlags = embedFlagInputsFromCli(localOpts);
|
|
1194
|
+
let repoSelector;
|
|
1195
|
+
try {
|
|
1196
|
+
repoSelector = resolveQueryRepoSelector(this, localOpts.repo);
|
|
1197
|
+
}
|
|
1198
|
+
catch (err) {
|
|
1199
|
+
reportError(err);
|
|
1200
|
+
}
|
|
1156
1201
|
withClient(this, async (client, opts) => {
|
|
1157
1202
|
const result = await client.query({
|
|
1158
|
-
repo:
|
|
1203
|
+
repo: repoSelector,
|
|
1159
1204
|
filter: combinePathAndFilter(localOpts.path, localOpts.filter),
|
|
1160
1205
|
text: localOpts.text,
|
|
1161
1206
|
semantic: localOpts.semantic,
|
package/dist/cli/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
|
package/dist/embed/cmd-hook.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Subprocess embedding hook
|
|
3
|
-
* once; writes one JSON line per batch to stdin; reads one
|
|
4
|
-
* back from stdout (design §5.3, m4-plan §5 decision 1).
|
|
2
|
+
* Subprocess embedding hook — the command form of `--embedder`. Spawns a
|
|
3
|
+
* long-lived process once; writes one JSON line per batch to stdin; reads one
|
|
4
|
+
* JSON line back from stdout (design §5.3, m4-plan §5 decision 1).
|
|
5
5
|
*
|
|
6
6
|
* Stderr passes through to the server log; the hook doesn't parse it.
|
|
7
7
|
*
|
package/dist/embed/cmd-hook.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Subprocess embedding hook
|
|
3
|
-
* once; writes one JSON line per batch to stdin; reads one
|
|
4
|
-
* back from stdout (design §5.3, m4-plan §5 decision 1).
|
|
2
|
+
* Subprocess embedding hook — the command form of `--embedder`. Spawns a
|
|
3
|
+
* long-lived process once; writes one JSON line per batch to stdin; reads one
|
|
4
|
+
* JSON line back from stdout (design §5.3, m4-plan §5 decision 1).
|
|
5
5
|
*
|
|
6
6
|
* Stderr passes through to the server log; the hook doesn't parse it.
|
|
7
7
|
*
|
package/dist/embed/config.d.ts
CHANGED
|
@@ -2,18 +2,14 @@
|
|
|
2
2
|
* Embed hook configuration resolution — shared between `mrplex serve`
|
|
3
3
|
* and the local `mrplex embed` commands (m4-plan WS3).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* One unified provider knob, `--embedder`, resolved: CLI flag → `MRPLEX_EMBEDDER`
|
|
6
|
+
* env var → CLI config file → unset. An `http(s)://` value selects the HTTP
|
|
7
|
+
* hook; anything else is a subprocess command.
|
|
8
8
|
*/
|
|
9
9
|
import type { EmbedHook } from "./hook.js";
|
|
10
10
|
export type EmbedFlagInputs = {
|
|
11
11
|
/** Unified provider: subprocess command, or http(s):// URL. */
|
|
12
12
|
embedder?: string;
|
|
13
|
-
/** @deprecated Use `embedder` with an http(s):// URL. */
|
|
14
|
-
embed_url?: string;
|
|
15
|
-
/** @deprecated Use `embedder` with a command. */
|
|
16
|
-
embed_cmd?: string;
|
|
17
13
|
};
|
|
18
14
|
export type EmbedConfig = {
|
|
19
15
|
kind: "http";
|
|
@@ -42,19 +38,9 @@ export declare const EMBED_CLI_OPTIONS: {
|
|
|
42
38
|
readonly flags: "--embedder <spec>";
|
|
43
39
|
readonly description: "embedding provider: command, or http(s):// URL";
|
|
44
40
|
};
|
|
45
|
-
readonly embedUrl: {
|
|
46
|
-
readonly flags: "--embed-url <url>";
|
|
47
|
-
readonly description: "(deprecated) use --embedder with an http(s):// URL";
|
|
48
|
-
};
|
|
49
|
-
readonly embedCmd: {
|
|
50
|
-
readonly flags: "--embed-cmd <cmd>";
|
|
51
|
-
readonly description: "(deprecated) use --embedder with a command";
|
|
52
|
-
};
|
|
53
41
|
};
|
|
54
42
|
export type EmbedCliOpts = {
|
|
55
43
|
embedder?: string;
|
|
56
|
-
embedUrl?: string;
|
|
57
|
-
embedCmd?: string;
|
|
58
44
|
};
|
|
59
45
|
export declare function embedFlagInputsFromCli(opts: EmbedCliOpts): EmbedFlagInputs;
|
|
60
46
|
import type { Command } from "commander";
|
package/dist/embed/config.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Embed hook configuration resolution — shared between `mrplex serve`
|
|
3
3
|
* and the local `mrplex embed` commands (m4-plan WS3).
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* One unified provider knob, `--embedder`, resolved: CLI flag → `MRPLEX_EMBEDDER`
|
|
6
|
+
* env var → CLI config file → unset. An `http(s)://` value selects the HTTP
|
|
7
|
+
* hook; anything else is a subprocess command.
|
|
8
8
|
*/
|
|
9
9
|
import { loadConfig } from "../cli/config.js";
|
|
10
10
|
import { createCmdEmbedHook } from "./cmd-hook.js";
|
|
@@ -24,26 +24,9 @@ export function parseEmbedderSpec(value) {
|
|
|
24
24
|
return { kind: "cmd", command: trimmed };
|
|
25
25
|
}
|
|
26
26
|
export function resolveEmbedConfig(inputs = {}) {
|
|
27
|
-
const
|
|
28
|
-
const embedder = inputs.embedder ?? process.env.MRPLEX_EMBEDDER ?? cfg.embedder;
|
|
29
|
-
const url = inputs.embed_url ?? process.env.MRPLEX_EMBED_URL ?? cfg.embed_url;
|
|
30
|
-
const cmd = inputs.embed_cmd ?? process.env.MRPLEX_EMBED_CMD ?? cfg.embed_cmd;
|
|
31
|
-
const sources = [];
|
|
32
|
-
if (embedder)
|
|
33
|
-
sources.push("--embedder");
|
|
34
|
-
if (url)
|
|
35
|
-
sources.push("--embed-url");
|
|
36
|
-
if (cmd)
|
|
37
|
-
sources.push("--embed-cmd");
|
|
38
|
-
if (sources.length > 1) {
|
|
39
|
-
throw new Error(`${sources.join(", ")} are mutually exclusive — use --embedder only (http(s):// URL or command)`);
|
|
40
|
-
}
|
|
27
|
+
const embedder = inputs.embedder ?? process.env.MRPLEX_EMBEDDER ?? loadConfig().embedder;
|
|
41
28
|
if (embedder)
|
|
42
29
|
return parseEmbedderSpec(embedder);
|
|
43
|
-
if (url)
|
|
44
|
-
return { kind: "http", url };
|
|
45
|
-
if (cmd)
|
|
46
|
-
return { kind: "cmd", command: cmd };
|
|
47
30
|
return { kind: "none" };
|
|
48
31
|
}
|
|
49
32
|
export function describeEmbedConfig(c) {
|
|
@@ -84,26 +67,11 @@ export const EMBED_CLI_OPTIONS = {
|
|
|
84
67
|
flags: "--embedder <spec>",
|
|
85
68
|
description: "embedding provider: command, or http(s):// URL",
|
|
86
69
|
},
|
|
87
|
-
embedUrl: {
|
|
88
|
-
flags: "--embed-url <url>",
|
|
89
|
-
description: "(deprecated) use --embedder with an http(s):// URL",
|
|
90
|
-
},
|
|
91
|
-
embedCmd: {
|
|
92
|
-
flags: "--embed-cmd <cmd>",
|
|
93
|
-
description: "(deprecated) use --embedder with a command",
|
|
94
|
-
},
|
|
95
70
|
};
|
|
96
71
|
export function embedFlagInputsFromCli(opts) {
|
|
97
|
-
return {
|
|
98
|
-
embedder: opts.embedder,
|
|
99
|
-
embed_url: opts.embedUrl,
|
|
100
|
-
embed_cmd: opts.embedCmd,
|
|
101
|
-
};
|
|
72
|
+
return { embedder: opts.embedder };
|
|
102
73
|
}
|
|
103
74
|
export function addEmbedCliOptions(cmd) {
|
|
104
|
-
return cmd
|
|
105
|
-
.option(EMBED_CLI_OPTIONS.embedder.flags, EMBED_CLI_OPTIONS.embedder.description)
|
|
106
|
-
.option(EMBED_CLI_OPTIONS.embedUrl.flags, EMBED_CLI_OPTIONS.embedUrl.description)
|
|
107
|
-
.option(EMBED_CLI_OPTIONS.embedCmd.flags, EMBED_CLI_OPTIONS.embedCmd.description);
|
|
75
|
+
return cmd.option(EMBED_CLI_OPTIONS.embedder.flags, EMBED_CLI_OPTIONS.embedder.description);
|
|
108
76
|
}
|
|
109
77
|
//# sourceMappingURL=config.js.map
|
package/dist/embed/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/embed/config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/embed/config.ts"],"names":[],"mappings":"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"}
|
package/dist/embed/hook.d.ts
CHANGED
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
* embed(chunks: string[]) → { vectors: number[][], model: string, dim: int }
|
|
5
5
|
*
|
|
6
6
|
* mrplex does NOT call any provider itself: the operator wires a hook
|
|
7
|
-
* that speaks this contract
|
|
8
|
-
* (
|
|
9
|
-
* (
|
|
7
|
+
* that speaks this contract via `--embedder`. Two shapes ship: an HTTP
|
|
8
|
+
* endpoint (an `http(s)://` value) and a long-lived subprocess with
|
|
9
|
+
* JSON-lines over stdio (any other value). In-process plugin is deferred
|
|
10
|
+
* (m4-plan §5 decision 1).
|
|
10
11
|
*
|
|
11
12
|
* Contract-validation happens here so every shape gets the same
|
|
12
13
|
* checks: batch alignment, per-vector dim, non-empty model. A single
|
package/dist/embed/hook.js
CHANGED
|
@@ -4,9 +4,10 @@
|
|
|
4
4
|
* embed(chunks: string[]) → { vectors: number[][], model: string, dim: int }
|
|
5
5
|
*
|
|
6
6
|
* mrplex does NOT call any provider itself: the operator wires a hook
|
|
7
|
-
* that speaks this contract
|
|
8
|
-
* (
|
|
9
|
-
* (
|
|
7
|
+
* that speaks this contract via `--embedder`. Two shapes ship: an HTTP
|
|
8
|
+
* endpoint (an `http(s)://` value) and a long-lived subprocess with
|
|
9
|
+
* JSON-lines over stdio (any other value). In-process plugin is deferred
|
|
10
|
+
* (m4-plan §5 decision 1).
|
|
10
11
|
*
|
|
11
12
|
* Contract-validation happens here so every shape gets the same
|
|
12
13
|
* checks: batch alignment, per-vector dim, non-empty model. A single
|
package/dist/embed/hook.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/embed/hook.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"hook.js","sourceRoot":"","sources":["../../src/embed/hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAsBH;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAa,EAAE,SAA4B;IAC/E,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,CAAC,GAAG,IAA+B,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IACtB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;IAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CACb,4DAA4D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CACnF,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CACb,+BAA+B,OAAO,CAAC,MAAM,2BAA2B,SAAS,CAAC,MAAM,GAAG,CAC5F,CAAC;IACJ,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,mBAAmB,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC;QACrF,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACxD,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* HTTP embedding hook (
|
|
3
|
-
* contract response (design §5.3, m4-plan §5
|
|
2
|
+
* HTTP embedding hook — the http(s):// form of `--embedder`. POST
|
|
3
|
+
* { chunks: string[] } → the contract response (design §5.3, m4-plan §5
|
|
4
|
+
* decision 1).
|
|
4
5
|
*
|
|
5
6
|
* Uses Node ≥ 20's built-in fetch — no dep. Timeout defaults to 30s;
|
|
6
7
|
* anything longer usually means the operator wants a subprocess hook.
|
package/dist/embed/http-hook.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* HTTP embedding hook (
|
|
3
|
-
* contract response (design §5.3, m4-plan §5
|
|
2
|
+
* HTTP embedding hook — the http(s):// form of `--embedder`. POST
|
|
3
|
+
* { chunks: string[] } → the contract response (design §5.3, m4-plan §5
|
|
4
|
+
* decision 1).
|
|
4
5
|
*
|
|
5
6
|
* Uses Node ≥ 20's built-in fetch — no dep. Timeout defaults to 30s;
|
|
6
7
|
* anything longer usually means the operator wants a subprocess hook.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-hook.js","sourceRoot":"","sources":["../../src/embed/http-hook.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"http-hook.js","sourceRoot":"","sources":["../../src/embed/http-hook.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAsC,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAOtF,MAAM,UAAU,mBAAmB,CAAC,IAAqB;IACvD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC;IACzC,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,GAAG;QACf,KAAK,CAAC,KAAK,CAAC,MAAyB;YACnC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;YAC5D,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;oBAChC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;oBAChC,MAAM,EAAE,UAAU,CAAC,MAAM;iBAC1B,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;oBACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC9C,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1E,CAAC;gBACD,MAAM,IAAI,GAAY,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBACvC,OAAO,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC7C,CAAC;oBAAS,CAAC;gBACT,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QACD,KAAK,CAAC,KAAK;YACT,wCAAwC;QAC1C,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/sync/reconcile.js
CHANGED
|
@@ -165,9 +165,31 @@ async function resolveLocalPath(client, store, opts, dryRun, ctx) {
|
|
|
165
165
|
return await pushCreate(client, store, opts.repo, path);
|
|
166
166
|
return { path, verdict: "push", detail: "local creation" };
|
|
167
167
|
}
|
|
168
|
-
//
|
|
169
|
-
//
|
|
170
|
-
//
|
|
168
|
+
// An embedded `$version` is present, yet no live doc sits at this path and the
|
|
169
|
+
// version is not the current of a doc elsewhere. Two very different worlds
|
|
170
|
+
// collapse here, and only the store can tell them apart:
|
|
171
|
+
//
|
|
172
|
+
// • The version resolves in THIS repo, at THIS path → the document was
|
|
173
|
+
// genuinely deleted. Deletes are moves to `:deleted/…` with history
|
|
174
|
+
// retained (§3.4), so the historical version still resolves. Clean removes
|
|
175
|
+
// locally; dirty resurrects. Never discard dirty bytes (§4.9 edge).
|
|
176
|
+
// • The version does NOT resolve → the intrinsics are FOREIGN: this file was
|
|
177
|
+
// stamped against a different database (or repo). `docs.get_version`
|
|
178
|
+
// throws `version_not_found` for an unknown id AND for a repo mismatch, so
|
|
179
|
+
// a fresh store rejects every id another store issued. Treat the file
|
|
180
|
+
// exactly like a clean local copy lacking provenance (row 7) and adopt it
|
|
181
|
+
// as a local creation. Deleting on the strength of provenance this
|
|
182
|
+
// database never issued is the data-loss footgun this branch used to be.
|
|
183
|
+
if (!(await versionDeletedHere(client, opts.repo, intr.version, path))) {
|
|
184
|
+
if (!dryRun) {
|
|
185
|
+
return await pushCreate(client, store, opts.repo, path, "push", "provenance not from this database; adopted as local creation");
|
|
186
|
+
}
|
|
187
|
+
return {
|
|
188
|
+
path,
|
|
189
|
+
verdict: "push",
|
|
190
|
+
detail: "provenance not from this database; adopted as local creation",
|
|
191
|
+
};
|
|
192
|
+
}
|
|
171
193
|
if (!dirty) {
|
|
172
194
|
if (!dryRun)
|
|
173
195
|
await store.remove(path);
|
|
@@ -178,6 +200,28 @@ async function resolveLocalPath(client, store, opts, dryRun, ctx) {
|
|
|
178
200
|
}
|
|
179
201
|
return { path, verdict: "resurrect", detail: "remote-deleted, local dirty" };
|
|
180
202
|
}
|
|
203
|
+
/**
|
|
204
|
+
* True when `versionId` genuinely resolves to a version of THIS repo that lived
|
|
205
|
+
* at `path` — the fingerprint of a real deletion, since history survives the
|
|
206
|
+
* move to `:deleted/…` (§3.4). False when the id is unknown here or belongs to
|
|
207
|
+
* another repo/database: `docs.get_version` throws `version_not_found` both for
|
|
208
|
+
* a malformed/unknown id and for a repo mismatch, which is exactly the signal
|
|
209
|
+
* that the file's `$version` is foreign. A version that resolves but at a
|
|
210
|
+
* DIFFERENT path is not this file's deletion either (a cross-store id
|
|
211
|
+
* collision), so it counts as foreign too — the safe verdict is to keep the
|
|
212
|
+
* bytes, never to delete.
|
|
213
|
+
*/
|
|
214
|
+
async function versionDeletedHere(client, repo, versionId, path) {
|
|
215
|
+
try {
|
|
216
|
+
const v = await client.docs.get_version(repo, versionId);
|
|
217
|
+
return v.path === path;
|
|
218
|
+
}
|
|
219
|
+
catch (err) {
|
|
220
|
+
if (err instanceof KernelError && err.code === "version_not_found")
|
|
221
|
+
return false;
|
|
222
|
+
throw err;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
181
225
|
// --- effecting helpers -------------------------------------------------------
|
|
182
226
|
async function readUserContent(store, path) {
|
|
183
227
|
const text = (await store.read(path)) ?? "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile.js","sourceRoot":"","sources":["../../src/sync/reconcile.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reconcile.js","sourceRoot":"","sources":["../../src/sync/reconcile.ts"],"names":[],"mappings":"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"}
|