@miadi/inquiry-weave 0.12.1 → 0.13.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 +11 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +2 -1
- package/dist/cli.js.map +1 -1
- package/dist/mcp-server.js +49 -5
- package/dist/mcp-server.js.map +1 -1
- package/dist/mint.d.ts +97 -1
- package/dist/mint.d.ts.map +1 -1
- package/dist/mint.js +212 -0
- package/dist/mint.js.map +1 -1
- package/dist/review.d.ts +107 -0
- package/dist/review.d.ts.map +1 -0
- package/dist/review.js +309 -0
- package/dist/review.js.map +1 -0
- package/package.json +2 -2
package/dist/review.js
ADDED
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The review seam — a Miadi review entering an episode: read it from the
|
|
3
|
+
* review service's public JSON, record it in `episode.yaml`, and put it on the
|
|
4
|
+
* wheel in the shape Episode 345 set by hand (`review-medicine-wheel-
|
|
5
|
+
* experiment.md`): one reusable `review:<uuid>` node, and one
|
|
6
|
+
* `chronicle:<episode>` → `review:<uuid>` edge whose relationship type names
|
|
7
|
+
* what the episode uses the review for.
|
|
8
|
+
*
|
|
9
|
+
* Three rules this file keeps:
|
|
10
|
+
*
|
|
11
|
+
* 1. Only the configured review origin is fetched (`parseReviewRef` refuses
|
|
12
|
+
* any other), so a caller cannot make the server fetch an address of its
|
|
13
|
+
* choosing.
|
|
14
|
+
* 2. The manifest entry is written once per review and never overwritten:
|
|
15
|
+
* a later call fills keys that were missing (the ceremony, once it opens)
|
|
16
|
+
* and leaves every recorded value as it was, including the version the
|
|
17
|
+
* episode used.
|
|
18
|
+
* 3. The wheel projection never throws. A wheel that is down answers
|
|
19
|
+
* `pending`, as the lineage and registration projections do. One ordered
|
|
20
|
+
* node pair is one edge on the wheel, so an edge someone made by hand is
|
|
21
|
+
* kept with its own relationship type.
|
|
22
|
+
*
|
|
23
|
+
* Ref: jgwill/Miadi#630.
|
|
24
|
+
*/
|
|
25
|
+
import { readFile, writeFile } from "node:fs/promises";
|
|
26
|
+
import { existsSync } from "node:fs";
|
|
27
|
+
import { dirname } from "node:path";
|
|
28
|
+
import { isMap, isSeq, parseDocument } from "yaml";
|
|
29
|
+
import { parseReviewRef, REVIEW_ENTRY_KEYS, REVIEW_NODE_KIND, REVIEW_SERVICE_BASE_URL, reviewJsonUrl, reviewNodeId, toEpisodeReviewEntry, } from "@miadi/episodic-memory-schema";
|
|
30
|
+
import { missingManifestRemedy } from "./episode.js";
|
|
31
|
+
export class ReviewError extends Error {
|
|
32
|
+
code;
|
|
33
|
+
constructor(code, message) {
|
|
34
|
+
super(message);
|
|
35
|
+
this.code = code;
|
|
36
|
+
this.name = "ReviewError";
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/** `MIADI_REVIEW_BASE_URL` names another deployment; the miadi-review skill reads the same variable. */
|
|
40
|
+
export function reviewBaseUrl(env = process.env) {
|
|
41
|
+
const named = env.MIADI_REVIEW_BASE_URL?.trim();
|
|
42
|
+
return (named || REVIEW_SERVICE_BASE_URL).replace(/\/+$/, "");
|
|
43
|
+
}
|
|
44
|
+
/** Parse, or refuse with the door's error. */
|
|
45
|
+
export function requireReviewRef(raw, base) {
|
|
46
|
+
const ref = parseReviewRef(raw, { base });
|
|
47
|
+
if (!ref) {
|
|
48
|
+
throw new ReviewError("invalid_review", `'${String(raw ?? "")}' is not a review on ${base}: give ${base}/review/<uuid>, its /json form, miadi-review:<uuid>, or the uuid`);
|
|
49
|
+
}
|
|
50
|
+
return ref;
|
|
51
|
+
}
|
|
52
|
+
const REVIEW_READ_TIMEOUT_MS = 15_000;
|
|
53
|
+
function text(value) {
|
|
54
|
+
return typeof value === "string" && value.trim() ? value.trim() : undefined;
|
|
55
|
+
}
|
|
56
|
+
/** GET `<base>/review/<id>/json[?v=N]`. Public; no token. */
|
|
57
|
+
export async function fetchPublicReview(ref, options = {}) {
|
|
58
|
+
const fetchImpl = options.fetchImpl ?? fetch;
|
|
59
|
+
const url = reviewJsonUrl(ref.id, ref.base, ref.version);
|
|
60
|
+
const controller = new AbortController();
|
|
61
|
+
const timer = setTimeout(() => controller.abort(), options.timeoutMs ?? REVIEW_READ_TIMEOUT_MS);
|
|
62
|
+
let response;
|
|
63
|
+
try {
|
|
64
|
+
response = await fetchImpl(url, { signal: controller.signal, headers: { accept: "application/json" } });
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
throw new ReviewError("review_unreachable", `GET ${url}: ${error instanceof Error ? error.message : String(error)}`);
|
|
68
|
+
}
|
|
69
|
+
finally {
|
|
70
|
+
clearTimeout(timer);
|
|
71
|
+
}
|
|
72
|
+
if (response.status === 404)
|
|
73
|
+
throw new ReviewError("review_not_found", `no published review ${ref.id} on ${ref.base}`);
|
|
74
|
+
if (!response.ok)
|
|
75
|
+
throw new ReviewError("review_unreachable", `GET ${url}: HTTP ${response.status}`);
|
|
76
|
+
let body;
|
|
77
|
+
try {
|
|
78
|
+
body = (await response.json());
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
throw new ReviewError("review_unreachable", `GET ${url} returned unreadable JSON: ${error instanceof Error ? error.message : String(error)}`);
|
|
82
|
+
}
|
|
83
|
+
const selected = (body.version && typeof body.version === "object" ? body.version : {});
|
|
84
|
+
const latest = typeof body.latest_version === "number" ? body.latest_version : Number(selected.version) || 0;
|
|
85
|
+
const version = typeof selected.version === "number" ? selected.version : latest;
|
|
86
|
+
if (!(version >= 1))
|
|
87
|
+
throw new ReviewError("review_not_found", `review ${ref.id} has no published version yet`);
|
|
88
|
+
return {
|
|
89
|
+
id: ref.id,
|
|
90
|
+
url: ref.url,
|
|
91
|
+
title: text(body.title) ?? "Untitled review",
|
|
92
|
+
...(text(body.video_url) ? { video_url: text(body.video_url) } : {}),
|
|
93
|
+
...(text(body.channel) ? { channel: text(body.channel) } : {}),
|
|
94
|
+
latest_version: latest,
|
|
95
|
+
version,
|
|
96
|
+
...(text(body.updated_at) ? { updated_at: text(body.updated_at) } : {}),
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
function entrySource(entry) {
|
|
100
|
+
const node = {};
|
|
101
|
+
for (const key of REVIEW_ENTRY_KEYS) {
|
|
102
|
+
const value = entry[key];
|
|
103
|
+
if (value !== undefined && value !== "")
|
|
104
|
+
node[key] = value;
|
|
105
|
+
}
|
|
106
|
+
return node;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Add a review to `episode.yaml`, or fill the keys an existing entry lacks.
|
|
110
|
+
* Comments, key order and every other field survive (yaml document model, as
|
|
111
|
+
* `appendLineageEdge`). Refuses a `reviews` key that is not a list.
|
|
112
|
+
*/
|
|
113
|
+
export async function upsertEpisodeReview(input) {
|
|
114
|
+
if (!existsSync(input.episodeYamlPath)) {
|
|
115
|
+
throw new ReviewError("review_manifest_conflict", missingManifestRemedy(dirname(input.episodeYamlPath)));
|
|
116
|
+
}
|
|
117
|
+
const before = await readFile(input.episodeYamlPath, "utf8");
|
|
118
|
+
const doc = parseDocument(before);
|
|
119
|
+
if (doc.errors.length > 0) {
|
|
120
|
+
throw new ReviewError("review_manifest_conflict", `unreadable episode.yaml ${input.episodeYamlPath}: ${doc.errors[0].message}`);
|
|
121
|
+
}
|
|
122
|
+
if (!isMap(doc.contents)) {
|
|
123
|
+
throw new ReviewError("review_manifest_conflict", `episode.yaml ${input.episodeYamlPath} is not a mapping`);
|
|
124
|
+
}
|
|
125
|
+
const reviews = doc.get("reviews");
|
|
126
|
+
let created = false;
|
|
127
|
+
const filled = [];
|
|
128
|
+
let entry;
|
|
129
|
+
if (reviews === undefined || reviews === null) {
|
|
130
|
+
created = true;
|
|
131
|
+
entry = input.entry;
|
|
132
|
+
doc.set("reviews", [entrySource(entry)]);
|
|
133
|
+
}
|
|
134
|
+
else if (!isSeq(reviews)) {
|
|
135
|
+
throw new ReviewError("review_manifest_conflict", `reviews in ${input.episodeYamlPath} is not a list — refusing to overwrite`);
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
const index = reviews.items.findIndex((item) => {
|
|
139
|
+
const read = toEpisodeReviewEntry(isMap(item) ? item.toJSON() : item?.value ?? item);
|
|
140
|
+
return read?.id === input.entry.id;
|
|
141
|
+
});
|
|
142
|
+
if (index < 0) {
|
|
143
|
+
created = true;
|
|
144
|
+
entry = input.entry;
|
|
145
|
+
doc.addIn(["reviews"], entrySource(entry));
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
const item = reviews.items[index];
|
|
149
|
+
if (!isMap(item)) {
|
|
150
|
+
throw new ReviewError("review_manifest_conflict", `reviews[${index}] in ${input.episodeYamlPath} names review ${input.entry.id} as a scalar — refusing to rewrite it`);
|
|
151
|
+
}
|
|
152
|
+
for (const key of REVIEW_ENTRY_KEYS) {
|
|
153
|
+
const value = input.entry[key];
|
|
154
|
+
if (value === undefined || value === "")
|
|
155
|
+
continue;
|
|
156
|
+
const present = item.get(key);
|
|
157
|
+
if (present === undefined || present === null || present === "") {
|
|
158
|
+
item.set(key, value);
|
|
159
|
+
filled.push(key);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
entry = toEpisodeReviewEntry(item.toJSON()) ?? input.entry;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
const changed = created || filled.length > 0;
|
|
166
|
+
const wrote = changed && !input.dryRun;
|
|
167
|
+
if (wrote)
|
|
168
|
+
await writeFile(input.episodeYamlPath, doc.toString(), "utf8");
|
|
169
|
+
return { entry, created, filled, wrote, dryRun: input.dryRun === true };
|
|
170
|
+
}
|
|
171
|
+
async function wheelJson(fetchImpl, url, init) {
|
|
172
|
+
try {
|
|
173
|
+
const response = await fetchImpl(url, init);
|
|
174
|
+
let body = null;
|
|
175
|
+
try {
|
|
176
|
+
body = await response.json();
|
|
177
|
+
}
|
|
178
|
+
catch {
|
|
179
|
+
body = null;
|
|
180
|
+
}
|
|
181
|
+
return { ok: response.ok, status: response.status, body };
|
|
182
|
+
}
|
|
183
|
+
catch (error) {
|
|
184
|
+
return { ok: false, status: 0, body: null, error: error instanceof Error ? error.message : String(error) };
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
function failure(method, url, answer) {
|
|
188
|
+
if (answer.error)
|
|
189
|
+
return `medicine-wheel unreachable at ${url}: ${answer.error}`;
|
|
190
|
+
const detail = answer.body && typeof answer.body === "object" && typeof answer.body.error === "string"
|
|
191
|
+
? ` — ${answer.body.error}`
|
|
192
|
+
: "";
|
|
193
|
+
return `${method} ${url}: HTTP ${answer.status}${detail}`;
|
|
194
|
+
}
|
|
195
|
+
function edgesFrom(payload) {
|
|
196
|
+
if (Array.isArray(payload))
|
|
197
|
+
return payload;
|
|
198
|
+
if (payload && typeof payload === "object") {
|
|
199
|
+
for (const key of ["edges", "data", "items"]) {
|
|
200
|
+
const value = payload[key];
|
|
201
|
+
if (Array.isArray(value))
|
|
202
|
+
return value;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
return [];
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Put the review node and the episode→review edge on the wheel. Creates the
|
|
209
|
+
* node when absent; when present, refreshes only `metadata.latest_version`
|
|
210
|
+
* (the wheel merges metadata), so a hand-written name and description stay.
|
|
211
|
+
*/
|
|
212
|
+
export async function projectEpisodeReview(mwUrl, input, options = {}) {
|
|
213
|
+
const fetchImpl = options.fetchImpl ?? fetch;
|
|
214
|
+
const base = mwUrl.replace(/\/+$/, "");
|
|
215
|
+
const nodeId = reviewNodeId(input.review.id);
|
|
216
|
+
const edgeId = `${input.episodeNodeId}:${nodeId}`;
|
|
217
|
+
const projection = {
|
|
218
|
+
node: { id: nodeId, state: "pending" },
|
|
219
|
+
edge: { id: edgeId, state: "pending", relationship_type: input.relation },
|
|
220
|
+
};
|
|
221
|
+
const nodeUrl = `${base}/api/nodes/${encodeURIComponent(nodeId)}`;
|
|
222
|
+
const read = await wheelJson(fetchImpl, nodeUrl);
|
|
223
|
+
if (read.ok) {
|
|
224
|
+
const node = read.body?.node;
|
|
225
|
+
if (node?.metadata?.latest_version === input.review.latest_version) {
|
|
226
|
+
projection.node.state = "already-present";
|
|
227
|
+
}
|
|
228
|
+
else if (options.dryRun) {
|
|
229
|
+
projection.node.state = "skipped";
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
const patched = await wheelJson(fetchImpl, nodeUrl, {
|
|
233
|
+
method: "PATCH",
|
|
234
|
+
headers: { "content-type": "application/json" },
|
|
235
|
+
body: JSON.stringify({ metadata: { latest_version: input.review.latest_version } }),
|
|
236
|
+
});
|
|
237
|
+
projection.node = patched.ok ? { id: nodeId, state: "refreshed" } : { id: nodeId, state: "pending", error: failure("PATCH", nodeUrl, patched) };
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
else if (read.status === 404) {
|
|
241
|
+
if (options.dryRun) {
|
|
242
|
+
projection.node.state = "skipped";
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
const created = await wheelJson(fetchImpl, `${base}/api/nodes`, {
|
|
246
|
+
method: "POST",
|
|
247
|
+
headers: { "content-type": "application/json" },
|
|
248
|
+
body: JSON.stringify({
|
|
249
|
+
id: nodeId,
|
|
250
|
+
type: "knowledge",
|
|
251
|
+
name: `Review — ${input.review.title}`,
|
|
252
|
+
description: `A Miadi Review${input.review.channel ? ` of ${input.review.channel}` : ""}: ${input.review.title}.`,
|
|
253
|
+
direction: "east",
|
|
254
|
+
metadata: {
|
|
255
|
+
kind: REVIEW_NODE_KIND,
|
|
256
|
+
review_id: input.review.id,
|
|
257
|
+
latest_version: input.review.latest_version,
|
|
258
|
+
public_url: input.review.url,
|
|
259
|
+
...(input.review.video_url ? { source_url: input.review.video_url } : {}),
|
|
260
|
+
service: "miadi-review",
|
|
261
|
+
},
|
|
262
|
+
}),
|
|
263
|
+
});
|
|
264
|
+
projection.node = created.ok ? { id: nodeId, state: "created" } : { id: nodeId, state: "pending", error: failure("POST", `${base}/api/nodes`, created) };
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
else {
|
|
268
|
+
projection.node = { id: nodeId, state: "pending", error: failure("GET", nodeUrl, read) };
|
|
269
|
+
}
|
|
270
|
+
// An edge to a node the wheel does not hold would dangle; wait for the node.
|
|
271
|
+
if (projection.node.state === "pending") {
|
|
272
|
+
projection.edge.error = "the review node is not on the wheel yet";
|
|
273
|
+
return projection;
|
|
274
|
+
}
|
|
275
|
+
const edgesUrl = `${base}/api/edges`;
|
|
276
|
+
const listing = await wheelJson(fetchImpl, edgesUrl);
|
|
277
|
+
if (!listing.ok) {
|
|
278
|
+
projection.edge.error = failure("GET", edgesUrl, listing);
|
|
279
|
+
return projection;
|
|
280
|
+
}
|
|
281
|
+
const existing = edgesFrom(listing.body).find((edge) => String(edge.from_id) === input.episodeNodeId && String(edge.to_id) === nodeId);
|
|
282
|
+
if (existing) {
|
|
283
|
+
projection.edge = { id: edgeId, state: "already-present", relationship_type: String(existing.relationship_type ?? input.relation) };
|
|
284
|
+
return projection;
|
|
285
|
+
}
|
|
286
|
+
if (options.dryRun) {
|
|
287
|
+
projection.edge.state = "skipped";
|
|
288
|
+
return projection;
|
|
289
|
+
}
|
|
290
|
+
const posted = await wheelJson(fetchImpl, edgesUrl, {
|
|
291
|
+
method: "POST",
|
|
292
|
+
headers: { "content-type": "application/json" },
|
|
293
|
+
body: JSON.stringify({
|
|
294
|
+
from_id: input.episodeNodeId,
|
|
295
|
+
to_id: nodeId,
|
|
296
|
+
relationship_type: input.relation,
|
|
297
|
+
strength: 1,
|
|
298
|
+
obligations: input.obligations,
|
|
299
|
+
}),
|
|
300
|
+
});
|
|
301
|
+
if (posted.ok)
|
|
302
|
+
projection.edge.state = "created";
|
|
303
|
+
else if (posted.status === 409)
|
|
304
|
+
projection.edge.state = "already-present";
|
|
305
|
+
else
|
|
306
|
+
projection.edge.error = failure("POST", edgesUrl, posted);
|
|
307
|
+
return projection;
|
|
308
|
+
}
|
|
309
|
+
//# sourceMappingURL=review.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review.js","sourceRoot":"","sources":["../src/review.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@miadi/inquiry-weave",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"description": "Relate and sync IAIP inquiry artefacts, their GitHub issues, and miadi-chronicle episodes. Creates vessels and relations only — never inquiry content.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"rispecs"
|
|
27
27
|
],
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@miadi/episodic-memory-schema": "^0.
|
|
29
|
+
"@miadi/episodic-memory-schema": "^0.11.0",
|
|
30
30
|
"yaml": "^2.5.0"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|