@shardworks/clerk-apparatus 0.1.221 → 0.1.222
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 +27 -27
- package/dist/clerk.d.ts +6 -6
- package/dist/clerk.d.ts.map +1 -1
- package/dist/clerk.js +68 -69
- package/dist/clerk.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/link-normalize.d.ts +11 -11
- package/dist/link-normalize.d.ts.map +1 -1
- package/dist/link-normalize.js +11 -11
- package/dist/link-normalize.js.map +1 -1
- package/dist/tools/index.d.ts +2 -2
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/{writ-link-meanings-show.d.ts → writ-link-kinds-show.d.ts} +1 -1
- package/dist/tools/writ-link-kinds-show.d.ts.map +1 -0
- package/dist/tools/writ-link-kinds-show.js +24 -0
- package/dist/tools/writ-link-kinds-show.js.map +1 -0
- package/dist/tools/{writ-link-meanings.d.ts → writ-link-kinds.d.ts} +1 -1
- package/dist/tools/writ-link-kinds.d.ts.map +1 -0
- package/dist/tools/{writ-link-meanings.js → writ-link-kinds.js} +12 -12
- package/dist/tools/writ-link-kinds.js.map +1 -0
- package/dist/tools/writ-link.d.ts +2 -2
- package/dist/tools/writ-link.js +8 -8
- package/dist/tools/writ-link.js.map +1 -1
- package/dist/tools/writ-unlink.d.ts +1 -1
- package/dist/tools/writ-unlink.js +3 -3
- package/dist/tools/writ-unlink.js.map +1 -1
- package/dist/types.d.ts +39 -40
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -4
- package/pages/writs/index.html +17 -17
- package/dist/tools/writ-link-meanings-show.d.ts.map +0 -1
- package/dist/tools/writ-link-meanings-show.js +0 -24
- package/dist/tools/writ-link-meanings-show.js.map +0 -1
- package/dist/tools/writ-link-meanings.d.ts.map +0 -1
- package/dist/tools/writ-link-meanings.js.map +0 -1
package/README.md
CHANGED
|
@@ -112,45 +112,45 @@ Each entry includes:
|
|
|
112
112
|
|
|
113
113
|
Source precedence: guild config entries fully shadow kit contributions with the same name (including description).
|
|
114
114
|
|
|
115
|
-
### `link(sourceId, targetId,
|
|
115
|
+
### `link(sourceId, targetId, label, kind?): Promise<WritLinkDoc>`
|
|
116
116
|
|
|
117
117
|
Create a directional link between two writs.
|
|
118
118
|
|
|
119
119
|
```typescript
|
|
120
|
-
// Casual label — attach any open-string relationship
|
|
120
|
+
// Casual label — attach any open-string relationship label.
|
|
121
121
|
await clerk.link(src.id, tgt.id, 'fixes');
|
|
122
122
|
|
|
123
|
-
// Load-bearing — attach a registered
|
|
124
|
-
await clerk.link(src.id, tgt.id, 'refines', 'astrolabe
|
|
123
|
+
// Load-bearing — attach a registered link-kind id.
|
|
124
|
+
await clerk.link(src.id, tgt.id, 'refines', 'astrolabe.refines');
|
|
125
125
|
```
|
|
126
126
|
|
|
127
127
|
Link rows carry two complementary identifiers:
|
|
128
128
|
|
|
129
|
-
- **`
|
|
130
|
-
- **`
|
|
129
|
+
- **`label`** — a casual, human-facing label. Open string. Normalized at write time via a syntactic pipeline (lowercase → trim → camelCase split → snake_case/kebab-case split → whitespace collapse). Variant spellings of the same label (`depends-on`, `dependsOn`, `depends_on`) collapse to a single composite id; distinct labels (`requires` vs `depends on`) remain distinct. Normalization is **not** synonymy.
|
|
130
|
+
- **`kind`** — a stable, plugin-owned id from the kit-contributed link-kind registry. The load-bearing identifier for downstream consumers. `null` when no kind is attached. Unknown ids are rejected.
|
|
131
131
|
|
|
132
|
-
Upsert semantics: calling `link()` again for the same `(sourceId, targetId,
|
|
132
|
+
Upsert semantics: calling `link()` again for the same `(sourceId, targetId, label)` returns the existing row. When a `kind` is supplied on the repeat call, it replaces the existing kind; when omitted, the existing kind is preserved.
|
|
133
133
|
|
|
134
|
-
### `unlink(sourceId, targetId,
|
|
134
|
+
### `unlink(sourceId, targetId, label): Promise<void>`
|
|
135
135
|
|
|
136
|
-
Remove a link. The `
|
|
136
|
+
Remove a link. The `label` argument is normalized before deletion, so any spelling variant of the canonical form removes the same link. Idempotent — no error if the link does not exist.
|
|
137
137
|
|
|
138
138
|
### `links(writId): Promise<WritLinks>`
|
|
139
139
|
|
|
140
140
|
Return every link for a writ in both directions: `outbound` (this writ is the source) and `inbound` (this writ is the target).
|
|
141
141
|
|
|
142
|
-
### `
|
|
142
|
+
### `listKinds(): Promise<LinkKindDoc[]>`
|
|
143
143
|
|
|
144
|
-
List every kit-contributed link
|
|
144
|
+
List every kit-contributed link kind in the registry. Each record includes the fully-qualified kind id, the contributing plugin, and a human-readable description.
|
|
145
145
|
|
|
146
146
|
```typescript
|
|
147
|
-
const
|
|
147
|
+
const kinds = await clerk.listKinds();
|
|
148
148
|
// [
|
|
149
|
-
// { id: 'astrolabe
|
|
149
|
+
// { id: 'astrolabe.refines', ownerPlugin: 'astrolabe', description: 'Source refines target' },
|
|
150
150
|
// ]
|
|
151
151
|
```
|
|
152
152
|
|
|
153
|
-
Kit authors register
|
|
153
|
+
Kit authors register kinds under the `linkKinds` key of their `ClerkKit` (or an apparatus's `supportKit`). Each entry is `{ id, description }`; the id must be prefixed with the contributing plugin id (`{pluginId}.{kebab-suffix}`, dot-separated). Malformed entries, duplicate ids, and plugin-prefix mismatches hard-fail at startup.
|
|
154
154
|
|
|
155
155
|
### `edit(request): Promise<WritDoc>`
|
|
156
156
|
|
|
@@ -277,7 +277,7 @@ The Clerk contributes books, tools, and pages to the guild:
|
|
|
277
277
|
| Book | Indexes | Contents |
|
|
278
278
|
|---|---|---|
|
|
279
279
|
| `writs` | `status`, `type`, `createdAt`, `parentId`, `[status, type]`, `[status, createdAt]`, `[parentId, status]` | Writ documents |
|
|
280
|
-
| `links` | `sourceId`, `targetId`, `
|
|
280
|
+
| `links` | `sourceId`, `targetId`, `label`, `[sourceId, label]`, `[targetId, label]` | Writ relationship links |
|
|
281
281
|
|
|
282
282
|
### Tools
|
|
283
283
|
|
|
@@ -291,10 +291,10 @@ The Clerk contributes books, tools, and pages to the guild:
|
|
|
291
291
|
| `writ-fail` | `clerk:write` | Fail a writ (open/stuck → failed) |
|
|
292
292
|
| `writ-cancel` | `clerk:write` | Cancel a writ (new/open/stuck → cancelled) |
|
|
293
293
|
| `writ-publish` | `clerk:write` | Publish a draft writ (new → open) |
|
|
294
|
-
| `writ-link` | `clerk:write` | Create a
|
|
295
|
-
| `writ-unlink` | `clerk:write` | Remove a
|
|
296
|
-
| `writ-link-
|
|
297
|
-
| `writ-link-
|
|
294
|
+
| `writ-link` | `clerk:write` | Create a labeled link between writs (`--kind <id>` to attach a registered link kind) |
|
|
295
|
+
| `writ-unlink` | `clerk:write` | Remove a labeled link between writs |
|
|
296
|
+
| `writ-link-kinds` | `clerk:read` | List registered link kinds (`--json` for raw array) |
|
|
297
|
+
| `writ-link-kinds-show` | `clerk:read` | Show a single link kind by id |
|
|
298
298
|
| `writ-types` | `clerk:read` | List available writ types |
|
|
299
299
|
|
|
300
300
|
---
|
|
@@ -350,11 +350,11 @@ interface WritTypeInfo {
|
|
|
350
350
|
}
|
|
351
351
|
|
|
352
352
|
interface WritLinkDoc {
|
|
353
|
-
id: string; // `{sourceId}:{targetId}:{normalized
|
|
353
|
+
id: string; // `{sourceId}:{targetId}:{normalized label}`
|
|
354
354
|
sourceId: string;
|
|
355
355
|
targetId: string;
|
|
356
|
-
|
|
357
|
-
|
|
356
|
+
label: string; // casual label, syntactically normalized
|
|
357
|
+
kind: string | null; // load-bearing link-kind id (null when unattached)
|
|
358
358
|
createdAt: string; // ISO timestamp
|
|
359
359
|
}
|
|
360
360
|
|
|
@@ -363,14 +363,14 @@ interface WritLinks {
|
|
|
363
363
|
inbound: WritLinkDoc[]; // other writs → this writ
|
|
364
364
|
}
|
|
365
365
|
|
|
366
|
-
// Kit-input shape for
|
|
367
|
-
interface
|
|
368
|
-
id: string; // `{pluginId}
|
|
366
|
+
// Kit-input shape for linkKinds contributions on ClerkKit.
|
|
367
|
+
interface KindEntry {
|
|
368
|
+
id: string; // `{pluginId}.{kebab-suffix}`
|
|
369
369
|
description: string;
|
|
370
370
|
}
|
|
371
371
|
|
|
372
|
-
// Registry-projection shape returned by
|
|
373
|
-
interface
|
|
372
|
+
// Registry-projection shape returned by listKinds().
|
|
373
|
+
interface LinkKindDoc {
|
|
374
374
|
id: string;
|
|
375
375
|
ownerPlugin: string;
|
|
376
376
|
description: string;
|
package/dist/clerk.d.ts
CHANGED
|
@@ -14,19 +14,19 @@
|
|
|
14
14
|
* See: docs/architecture/apparatus/clerk.md
|
|
15
15
|
*/
|
|
16
16
|
import type { Plugin } from '@shardworks/nexus-core';
|
|
17
|
-
import type { WritTypeEntry,
|
|
17
|
+
import type { WritTypeEntry, KindEntry } from './types.ts';
|
|
18
18
|
/** Kit contribution interface for the Clerk's writ type system. */
|
|
19
19
|
export interface ClerkKit {
|
|
20
20
|
/** Writ type descriptors to register with the Clerk. Names are unqualified. */
|
|
21
21
|
writTypes?: WritTypeEntry[];
|
|
22
22
|
/**
|
|
23
|
-
* Link-
|
|
24
|
-
* prefixed with the contributing plugin id (e.g. `astrolabe
|
|
23
|
+
* Link-kind descriptors to register with the Clerk. Kind ids must be
|
|
24
|
+
* prefixed with the contributing plugin id (e.g. `astrolabe.refines`).
|
|
25
25
|
* Kit authors supply `{ id, description }`; the registry-projection view
|
|
26
|
-
* (returned by `
|
|
27
|
-
*
|
|
26
|
+
* (returned by `listKinds()`) embeds the resolved owner plugin id on each
|
|
27
|
+
* record as `ownerPlugin`.
|
|
28
28
|
*/
|
|
29
|
-
|
|
29
|
+
linkKinds?: KindEntry[];
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
32
|
* Resolution string applied to non-terminal children that are cancelled by
|
package/dist/clerk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clerk.d.ts","sourceRoot":"","sources":["../src/clerk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,wBAAwB,CAAC;AAKrE,OAAO,KAAK,EAWV,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"clerk.d.ts","sourceRoot":"","sources":["../src/clerk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,wBAAwB,CAAC;AAKrE,OAAO,KAAK,EAWV,aAAa,EACb,SAAS,EAEV,MAAM,YAAY,CAAC;AAsBpB,mEAAmE;AACnE,MAAM,WAAW,QAAQ;IACvB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;IAC5B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;CACzB;AAQD;;;;;;GAMG;AACH,eAAO,MAAM,qCAAqC,sDACG,CAAC;AAoBtD,wBAAgB,WAAW,IAAI,MAAM,CA2sBpC"}
|
package/dist/clerk.js
CHANGED
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { guild, generateId } from '@shardworks/nexus-core';
|
|
17
17
|
import { tool } from '@shardworks/tools-apparatus';
|
|
18
|
-
import { commissionPost, pieceAdd, writShow, writList, writEdit, writComplete, writFail, writCancel, writPublish, writLink, writUnlink,
|
|
19
|
-
import {
|
|
18
|
+
import { commissionPost, pieceAdd, writShow, writList, writEdit, writComplete, writFail, writCancel, writPublish, writLink, writUnlink, writLinkKinds, writLinkKindsShow, } from "./tools/index.js";
|
|
19
|
+
import { normalizeLinkLabel } from "./link-normalize.js";
|
|
20
20
|
// ── Built-in writ types ──────────────────────────────────────────────
|
|
21
21
|
const BUILTIN_TYPES = new Set(['mandate']);
|
|
22
22
|
// ── Cascade resolution constants ─────────────────────────────────────
|
|
@@ -49,15 +49,15 @@ export function createClerk() {
|
|
|
49
49
|
let mergedWritTypes = new Map([...BUILTIN_TYPES].map((name) => [name, { source: 'builtin' }]));
|
|
50
50
|
/** Config-declared writ type names, for override checking during kit registration. */
|
|
51
51
|
let configWritTypeNames = new Set();
|
|
52
|
-
/** Registry of kit-contributed link
|
|
53
|
-
let
|
|
52
|
+
/** Registry of kit-contributed link kinds, keyed by kind id. */
|
|
53
|
+
let linkKindRegistry = new Map();
|
|
54
54
|
/**
|
|
55
|
-
* Grammar for
|
|
55
|
+
* Grammar for kind-id suffixes after the `{pluginId}.` prefix.
|
|
56
56
|
*
|
|
57
57
|
* Kebab-case only: lowercase letters, digits, and hyphens. Must not start
|
|
58
58
|
* or end with a hyphen and must have at least one character.
|
|
59
59
|
*/
|
|
60
|
-
const
|
|
60
|
+
const KIND_SUFFIX_RE = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
|
|
61
61
|
// ── Helpers ──────────────────────────────────────────────────────
|
|
62
62
|
function resolveClerkConfig() {
|
|
63
63
|
return guild().guildConfig().clerk ?? {};
|
|
@@ -121,42 +121,42 @@ export function createClerk() {
|
|
|
121
121
|
});
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
|
-
function
|
|
124
|
+
function registerKitLinkKinds(kitEntry) {
|
|
125
125
|
const pluginId = kitEntry.pluginId;
|
|
126
126
|
const raw = kitEntry.value;
|
|
127
127
|
if (!Array.isArray(raw)) {
|
|
128
|
-
throw new Error(`[clerk] Kit "${pluginId}"
|
|
128
|
+
throw new Error(`[clerk] Kit "${pluginId}" linkKinds: expected an array, got ${typeof raw}.`);
|
|
129
129
|
}
|
|
130
130
|
for (const entry of raw) {
|
|
131
131
|
if (typeof entry !== 'object' || entry === null) {
|
|
132
|
-
throw new Error(`[clerk] Kit "${pluginId}"
|
|
132
|
+
throw new Error(`[clerk] Kit "${pluginId}" linkKinds: entry is not an object (got ${entry === null ? 'null' : typeof entry}).`);
|
|
133
133
|
}
|
|
134
134
|
const rec = entry;
|
|
135
135
|
const id = rec.id;
|
|
136
136
|
const description = rec.description;
|
|
137
137
|
if (typeof id !== 'string' || id.length === 0) {
|
|
138
|
-
throw new Error(`[clerk] Kit "${pluginId}"
|
|
138
|
+
throw new Error(`[clerk] Kit "${pluginId}" linkKinds: entry is missing a non-empty string "id" field.`);
|
|
139
139
|
}
|
|
140
140
|
if (typeof description !== 'string' || description.length === 0) {
|
|
141
|
-
throw new Error(`[clerk] Kit "${pluginId}"
|
|
141
|
+
throw new Error(`[clerk] Kit "${pluginId}" linkKinds: entry "${id}" is missing a non-empty string "description" field.`);
|
|
142
142
|
}
|
|
143
|
-
const
|
|
144
|
-
if (
|
|
145
|
-
throw new Error(`[clerk] Kit "${pluginId}"
|
|
143
|
+
const dotIdx = id.indexOf('.');
|
|
144
|
+
if (dotIdx <= 0 || dotIdx === id.length - 1) {
|
|
145
|
+
throw new Error(`[clerk] Kit "${pluginId}" linkKinds: entry "${id}" must be of the form "{pluginId}.{kebab-suffix}".`);
|
|
146
146
|
}
|
|
147
|
-
const prefix = id.slice(0,
|
|
148
|
-
const suffix = id.slice(
|
|
147
|
+
const prefix = id.slice(0, dotIdx);
|
|
148
|
+
const suffix = id.slice(dotIdx + 1);
|
|
149
149
|
if (prefix !== pluginId) {
|
|
150
|
-
throw new Error(`[clerk] Kit "${pluginId}"
|
|
150
|
+
throw new Error(`[clerk] Kit "${pluginId}" linkKinds: entry "${id}" has prefix "${prefix}" but must match the contributing plugin id "${pluginId}".`);
|
|
151
151
|
}
|
|
152
|
-
if (!
|
|
153
|
-
throw new Error(`[clerk] Kit "${pluginId}"
|
|
152
|
+
if (!KIND_SUFFIX_RE.test(suffix)) {
|
|
153
|
+
throw new Error(`[clerk] Kit "${pluginId}" linkKinds: entry "${id}" suffix "${suffix}" must be kebab-case (lowercase letters, digits, and hyphens, not starting or ending with "-").`);
|
|
154
154
|
}
|
|
155
|
-
if (
|
|
156
|
-
const existing =
|
|
157
|
-
throw new Error(`[clerk] Kit "${pluginId}"
|
|
155
|
+
if (linkKindRegistry.has(id)) {
|
|
156
|
+
const existing = linkKindRegistry.get(id);
|
|
157
|
+
throw new Error(`[clerk] Kit "${pluginId}" linkKinds: duplicate kind id "${id}" — already registered by kit "${existing.ownerPlugin}".`);
|
|
158
158
|
}
|
|
159
|
-
|
|
159
|
+
linkKindRegistry.set(id, {
|
|
160
160
|
ownerPlugin: pluginId,
|
|
161
161
|
description,
|
|
162
162
|
});
|
|
@@ -258,23 +258,23 @@ export function createClerk() {
|
|
|
258
258
|
const where = buildWhereClause(filters);
|
|
259
259
|
return writs.count(where);
|
|
260
260
|
},
|
|
261
|
-
async link(sourceId, targetId,
|
|
261
|
+
async link(sourceId, targetId, label, kind) {
|
|
262
262
|
if (sourceId === targetId) {
|
|
263
263
|
throw new Error(`Cannot link a writ to itself: "${sourceId}".`);
|
|
264
264
|
}
|
|
265
265
|
// D2: normalize first, then reject empty canonical form. An all-
|
|
266
266
|
// whitespace input canonicalizes to '' and is rejected here.
|
|
267
|
-
const
|
|
268
|
-
if (!
|
|
269
|
-
throw new Error('Link
|
|
270
|
-
}
|
|
271
|
-
// If a
|
|
272
|
-
//
|
|
273
|
-
if (
|
|
274
|
-
if (!
|
|
275
|
-
throw new Error(`Unknown
|
|
267
|
+
const normalizedLabel = normalizeLinkLabel(label);
|
|
268
|
+
if (!normalizedLabel) {
|
|
269
|
+
throw new Error('Link label must be a non-empty string.');
|
|
270
|
+
}
|
|
271
|
+
// If a kind was supplied, validate it against the registry before
|
|
272
|
+
// touching the store.
|
|
273
|
+
if (kind !== undefined) {
|
|
274
|
+
if (!linkKindRegistry.has(kind)) {
|
|
275
|
+
throw new Error(`Unknown link kind "${kind}". Registered link kinds: ${linkKindRegistry.size === 0
|
|
276
276
|
? '(none)'
|
|
277
|
-
: [...
|
|
277
|
+
: [...linkKindRegistry.keys()].join(', ')}.`);
|
|
278
278
|
}
|
|
279
279
|
}
|
|
280
280
|
const source = await writs.get(sourceId);
|
|
@@ -285,15 +285,14 @@ export function createClerk() {
|
|
|
285
285
|
if (!target) {
|
|
286
286
|
throw new Error(`Writ "${targetId}" not found.`);
|
|
287
287
|
}
|
|
288
|
-
const id = `${sourceId}:${targetId}:${
|
|
288
|
+
const id = `${sourceId}:${targetId}:${normalizedLabel}`;
|
|
289
289
|
const existing = await links.get(id);
|
|
290
290
|
if (existing) {
|
|
291
|
-
// Upsert: when the caller supplied a
|
|
292
|
-
//
|
|
293
|
-
//
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
return links.patch(id, { semanticMeaning });
|
|
291
|
+
// Upsert: when the caller supplied a kind, update the existing row's
|
|
292
|
+
// kind. When no kind was supplied, leave the existing row untouched
|
|
293
|
+
// (preserves prior kind assignments made by earlier callers).
|
|
294
|
+
if (kind !== undefined && existing.kind !== kind) {
|
|
295
|
+
return links.patch(id, { kind });
|
|
297
296
|
}
|
|
298
297
|
return existing;
|
|
299
298
|
}
|
|
@@ -301,8 +300,8 @@ export function createClerk() {
|
|
|
301
300
|
id,
|
|
302
301
|
sourceId,
|
|
303
302
|
targetId,
|
|
304
|
-
|
|
305
|
-
|
|
303
|
+
label: normalizedLabel,
|
|
304
|
+
kind: kind ?? null,
|
|
306
305
|
createdAt: new Date().toISOString(),
|
|
307
306
|
};
|
|
308
307
|
await links.put(doc);
|
|
@@ -315,16 +314,16 @@ export function createClerk() {
|
|
|
315
314
|
]);
|
|
316
315
|
return { outbound, inbound };
|
|
317
316
|
},
|
|
318
|
-
async unlink(sourceId, targetId,
|
|
319
|
-
// Normalize first so variant spellings of the same
|
|
317
|
+
async unlink(sourceId, targetId, label) {
|
|
318
|
+
// Normalize first so variant spellings of the same label resolve to the
|
|
320
319
|
// same composite id as link() used.
|
|
321
|
-
const
|
|
322
|
-
if (!
|
|
320
|
+
const normalizedLabel = normalizeLinkLabel(label);
|
|
321
|
+
if (!normalizedLabel) {
|
|
323
322
|
// No-op when the canonical form is empty — unlink() is idempotent, so
|
|
324
323
|
// returning silently is correct even for an unreachable composite id.
|
|
325
324
|
return;
|
|
326
325
|
}
|
|
327
|
-
const id = `${sourceId}:${targetId}:${
|
|
326
|
+
const id = `${sourceId}:${targetId}:${normalizedLabel}`;
|
|
328
327
|
await links.delete(id);
|
|
329
328
|
},
|
|
330
329
|
listWritTypes() {
|
|
@@ -336,8 +335,8 @@ export function createClerk() {
|
|
|
336
335
|
isDefault: name === defaultType,
|
|
337
336
|
}));
|
|
338
337
|
},
|
|
339
|
-
async
|
|
340
|
-
return [...
|
|
338
|
+
async listKinds() {
|
|
339
|
+
return [...linkKindRegistry.entries()].map(([id, meta]) => ({
|
|
341
340
|
id,
|
|
342
341
|
ownerPlugin: meta.ownerPlugin,
|
|
343
342
|
description: meta.description,
|
|
@@ -465,14 +464,14 @@ export function createClerk() {
|
|
|
465
464
|
apparatus: {
|
|
466
465
|
requires: ['stacks'],
|
|
467
466
|
recommends: ['oculus'],
|
|
468
|
-
consumes: ['writTypes', '
|
|
467
|
+
consumes: ['writTypes', 'linkKinds'],
|
|
469
468
|
supportKit: {
|
|
470
469
|
books: {
|
|
471
470
|
writs: {
|
|
472
471
|
indexes: ['status', 'type', 'createdAt', 'parentId', ['status', 'type'], ['status', 'createdAt'], ['parentId', 'status']],
|
|
473
472
|
},
|
|
474
473
|
links: {
|
|
475
|
-
indexes: ['sourceId', 'targetId', '
|
|
474
|
+
indexes: ['sourceId', 'targetId', 'label', ['sourceId', 'label'], ['targetId', 'label']],
|
|
476
475
|
},
|
|
477
476
|
},
|
|
478
477
|
tools: [
|
|
@@ -487,8 +486,8 @@ export function createClerk() {
|
|
|
487
486
|
writPublish,
|
|
488
487
|
writLink,
|
|
489
488
|
writUnlink,
|
|
490
|
-
|
|
491
|
-
|
|
489
|
+
writLinkKinds,
|
|
490
|
+
writLinkKindsShow,
|
|
492
491
|
writTypesTool,
|
|
493
492
|
],
|
|
494
493
|
pages: [
|
|
@@ -513,13 +512,13 @@ export function createClerk() {
|
|
|
513
512
|
for (const entry of ctx.kits('writTypes')) {
|
|
514
513
|
registerKitWritTypes(entry);
|
|
515
514
|
}
|
|
516
|
-
// Scan all kit-contributed link
|
|
515
|
+
// Scan all kit-contributed link kinds via the Wire-phase snapshot.
|
|
517
516
|
// Unlike writTypes, malformed entries here hard-fail the start() call
|
|
518
|
-
// — a reserved
|
|
519
|
-
//
|
|
520
|
-
|
|
521
|
-
for (const entry of ctx.kits('
|
|
522
|
-
|
|
517
|
+
// — a reserved kind id that silently disappears would be worse than
|
|
518
|
+
// a startup failure, because downstream consumers key on it.
|
|
519
|
+
linkKindRegistry = new Map();
|
|
520
|
+
for (const entry of ctx.kits('linkKinds')) {
|
|
521
|
+
registerKitLinkKinds(entry);
|
|
523
522
|
}
|
|
524
523
|
// ── CDC: parent/child cascade ───────────────────────────────
|
|
525
524
|
stacks.watch('clerk', 'writs', async (event) => {
|
|
@@ -557,13 +556,13 @@ export function createClerk() {
|
|
|
557
556
|
// ── One-shot migration: normalize link rows ──────────────────
|
|
558
557
|
// Two-pass flow per D7:
|
|
559
558
|
// Pass 1 — scan every link row, group by (sourceId, targetId,
|
|
560
|
-
//
|
|
559
|
+
// normalizedLabel). A group with multiple rows is a collision:
|
|
561
560
|
// variant spellings that collapse to the same canonical form.
|
|
562
561
|
// Pass 2 — per group, keep the row with the earliest createdAt;
|
|
563
562
|
// warn and delete the younger siblings (older wins,
|
|
564
563
|
// deterministic regardless of iteration order). Rewrite the
|
|
565
|
-
// survivor's id and
|
|
566
|
-
// `
|
|
564
|
+
// survivor's id and label to the canonical form and set
|
|
565
|
+
// `kind = null` when absent.
|
|
567
566
|
//
|
|
568
567
|
// Safe to run inside start(): stacks only seals the CDC registry
|
|
569
568
|
// at phase:started (after every apparatus has started), so these
|
|
@@ -573,7 +572,7 @@ export function createClerk() {
|
|
|
573
572
|
const allLinks = await links.find({});
|
|
574
573
|
const groups = new Map();
|
|
575
574
|
for (const row of allLinks) {
|
|
576
|
-
const normalized =
|
|
575
|
+
const normalized = normalizeLinkLabel(row.label);
|
|
577
576
|
const key = `${row.sourceId}:${row.targetId}:${normalized}`;
|
|
578
577
|
const bucket = groups.get(key) ?? [];
|
|
579
578
|
bucket.push(row);
|
|
@@ -592,10 +591,10 @@ export function createClerk() {
|
|
|
592
591
|
`older row kept, this one discarded.`);
|
|
593
592
|
await links.delete(loser.id);
|
|
594
593
|
}
|
|
595
|
-
const
|
|
594
|
+
const normalizedLabel = canonicalId.slice((survivor.sourceId.length + 1) + (survivor.targetId.length + 1));
|
|
596
595
|
const needsRewrite = survivor.id !== canonicalId ||
|
|
597
|
-
survivor.
|
|
598
|
-
survivor.
|
|
596
|
+
survivor.label !== normalizedLabel ||
|
|
597
|
+
survivor.kind === undefined;
|
|
599
598
|
if (!needsRewrite)
|
|
600
599
|
continue;
|
|
601
600
|
// The composite id is immutable — delete-then-put the survivor to
|
|
@@ -604,8 +603,8 @@ export function createClerk() {
|
|
|
604
603
|
id: canonicalId,
|
|
605
604
|
sourceId: survivor.sourceId,
|
|
606
605
|
targetId: survivor.targetId,
|
|
607
|
-
|
|
608
|
-
|
|
606
|
+
label: normalizedLabel,
|
|
607
|
+
kind: survivor.kind ?? null,
|
|
609
608
|
createdAt: survivor.createdAt,
|
|
610
609
|
};
|
|
611
610
|
if (survivor.id !== canonicalId) {
|
package/dist/clerk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clerk.js","sourceRoot":"","sources":["../src/clerk.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"clerk.js","sourceRoot":"","sources":["../src/clerk.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*
|
|
9
9
|
* See: docs/architecture/apparatus/clerk.md
|
|
10
10
|
*/
|
|
11
|
-
export { type ClerkApi, type ClerkConfig, type WritTypeEntry, type WritDoc, type WritLinkDoc, type WritLinks, type WritStatus, type PostCommissionRequest, type EditWritRequest, type WritFilters, type WritTypeInfo, type
|
|
11
|
+
export { type ClerkApi, type ClerkConfig, type WritTypeEntry, type WritDoc, type WritLinkDoc, type WritLinks, type WritStatus, type PostCommissionRequest, type EditWritRequest, type WritFilters, type WritTypeInfo, type KindEntry, type LinkKindDoc, } from './types.ts';
|
|
12
12
|
export { createClerk, CASCADE_PARENT_TERMINATION_RESOLUTION } from './clerk.ts';
|
|
13
13
|
export type { ClerkKit } from './clerk.ts';
|
|
14
14
|
declare const _default: import("@shardworks/nexus-core").Plugin;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,WAAW,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,WAAW,EAAE,qCAAqC,EAAE,MAAM,YAAY,CAAC;AAChF,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;;AAI3C,wBAA6B"}
|
package/dist/link-normalize.d.ts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Link-
|
|
2
|
+
* Link-label normalization.
|
|
3
3
|
*
|
|
4
|
-
* The Clerk's `WritLinkDoc.
|
|
5
|
-
* callers spell the "same" relationship many different ways: `fixes`,
|
|
6
|
-
* `depends-on`, `dependsOn`, `depends_on`, `depends on`. Left alone,
|
|
7
|
-
* those produces a distinct composite-id link document — which
|
|
8
|
-
* mechanism that wants to react to a *specific* relationship.
|
|
4
|
+
* The Clerk's `WritLinkDoc.label` is an open string used as a casual label,
|
|
5
|
+
* and callers spell the "same" relationship many different ways: `fixes`,
|
|
6
|
+
* `Fixes`, `depends-on`, `dependsOn`, `depends_on`, `depends on`. Left alone,
|
|
7
|
+
* each of those produces a distinct composite-id link document — which
|
|
8
|
+
* destroys any mechanism that wants to react to a *specific* relationship.
|
|
9
9
|
*
|
|
10
|
-
* This module exposes a single pure function, `
|
|
10
|
+
* This module exposes a single pure function, `normalizeLinkLabel`, that
|
|
11
11
|
* collapses variant spellings of the same label to a single canonical form.
|
|
12
12
|
* Normalization is purely syntactic — it is NOT synonymy. `requires` and
|
|
13
13
|
* `depends on` normalize to distinct strings; callers that want to treat them
|
|
14
|
-
* as the same relationship should attach the same `
|
|
14
|
+
* as the same relationship should attach the same `kind` to both.
|
|
15
15
|
*
|
|
16
16
|
* The pipeline, in order:
|
|
17
17
|
*
|
|
@@ -30,10 +30,10 @@
|
|
|
30
30
|
* form.
|
|
31
31
|
*/
|
|
32
32
|
/**
|
|
33
|
-
* Normalize a link-
|
|
33
|
+
* Normalize a link-label string to its canonical form.
|
|
34
34
|
*
|
|
35
|
-
* @param input - The raw
|
|
35
|
+
* @param input - The raw label string supplied by a caller.
|
|
36
36
|
* @returns The canonical lowercase, space-separated form.
|
|
37
37
|
*/
|
|
38
|
-
export declare function
|
|
38
|
+
export declare function normalizeLinkLabel(input: string): string;
|
|
39
39
|
//# sourceMappingURL=link-normalize.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-normalize.d.ts","sourceRoot":"","sources":["../src/link-normalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH;;;;;GAKG;AACH,wBAAgB,
|
|
1
|
+
{"version":3,"file":"link-normalize.d.ts","sourceRoot":"","sources":["../src/link-normalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAoBxD"}
|