ctxr-cli 0.6.0 → 0.8.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/dist/adapters/types.d.ts +2 -3
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/adapters/types.js.map +1 -1
- package/dist/commands/archive.d.ts +2 -2
- package/dist/commands/archive.js +2 -2
- package/dist/commands/catalog-show.d.ts +0 -1
- package/dist/commands/catalog-show.d.ts.map +1 -1
- package/dist/commands/catalog-show.js +1 -1
- package/dist/commands/catalog-show.js.map +1 -1
- package/dist/commands/graph-query.d.ts +2 -11
- package/dist/commands/graph-query.d.ts.map +1 -1
- package/dist/commands/graph-query.js +11 -14
- package/dist/commands/graph-query.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +2 -7
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/publish-check.d.ts.map +1 -1
- package/dist/commands/publish-check.js +0 -4
- package/dist/commands/publish-check.js.map +1 -1
- package/dist/commands/publish-gather.d.ts +6 -16
- package/dist/commands/publish-gather.d.ts.map +1 -1
- package/dist/commands/publish-gather.js +11 -30
- package/dist/commands/publish-gather.js.map +1 -1
- package/dist/commands/publish-new.d.ts +5 -4
- package/dist/commands/publish-new.d.ts.map +1 -1
- package/dist/commands/publish-new.js +32 -10
- package/dist/commands/publish-new.js.map +1 -1
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +6 -25
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/session-capture.d.ts.map +1 -1
- package/dist/commands/session-capture.js +0 -2
- package/dist/commands/session-capture.js.map +1 -1
- package/dist/config/defaults.d.ts +12 -29
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +11 -28
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/schema.d.ts +18 -44
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +18 -52
- package/dist/config/schema.js.map +1 -1
- package/dist/core/agents-doc.d.ts +9 -0
- package/dist/core/agents-doc.d.ts.map +1 -1
- package/dist/core/agents-doc.js +31 -16
- package/dist/core/agents-doc.js.map +1 -1
- package/dist/core/browse/nav.d.ts +10 -0
- package/dist/core/browse/nav.d.ts.map +1 -0
- package/dist/core/browse/nav.js +101 -0
- package/dist/core/browse/nav.js.map +1 -0
- package/dist/core/browse/routes.d.ts +11 -2
- package/dist/core/browse/routes.d.ts.map +1 -1
- package/dist/core/browse/routes.js +19 -7
- package/dist/core/browse/routes.js.map +1 -1
- package/dist/core/browse/templates.d.ts +11 -2
- package/dist/core/browse/templates.d.ts.map +1 -1
- package/dist/core/browse/templates.js +16 -3
- package/dist/core/browse/templates.js.map +1 -1
- package/dist/core/browse/tree.d.ts +33 -0
- package/dist/core/browse/tree.d.ts.map +1 -0
- package/dist/core/browse/tree.js +53 -0
- package/dist/core/browse/tree.js.map +1 -0
- package/dist/core/catalog/build.d.ts +1 -1
- package/dist/core/catalog/build.d.ts.map +1 -1
- package/dist/core/catalog/build.js +1 -2
- package/dist/core/catalog/build.js.map +1 -1
- package/dist/core/catalog/model.d.ts +2 -0
- package/dist/core/catalog/model.d.ts.map +1 -1
- package/dist/core/catalog/model.js +2 -1
- package/dist/core/catalog/model.js.map +1 -1
- package/dist/core/checks/manifest.d.ts.map +1 -1
- package/dist/core/checks/manifest.js +0 -5
- package/dist/core/checks/manifest.js.map +1 -1
- package/dist/core/checks/organize-checks.d.ts +1 -2
- package/dist/core/checks/organize-checks.d.ts.map +1 -1
- package/dist/core/checks/organize-checks.js +1 -2
- package/dist/core/checks/organize-checks.js.map +1 -1
- package/dist/core/checks/types.d.ts +1 -1
- package/dist/core/convention-doc.d.ts +15 -12
- package/dist/core/convention-doc.d.ts.map +1 -1
- package/dist/core/convention-doc.js +25 -66
- package/dist/core/convention-doc.js.map +1 -1
- package/dist/core/errors.d.ts +9 -8
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +14 -18
- package/dist/core/errors.js.map +1 -1
- package/dist/core/exit-codes.d.ts +7 -5
- package/dist/core/exit-codes.d.ts.map +1 -1
- package/dist/core/exit-codes.js +7 -5
- package/dist/core/exit-codes.js.map +1 -1
- package/dist/core/ingest/identity.d.ts +4 -4
- package/dist/core/ingest/identity.js +4 -4
- package/dist/core/migrations/add-explanation-craft-skill.d.ts +26 -0
- package/dist/core/migrations/add-explanation-craft-skill.d.ts.map +1 -0
- package/dist/core/migrations/add-explanation-craft-skill.js +94 -0
- package/dist/core/migrations/add-explanation-craft-skill.js.map +1 -0
- package/dist/core/migrations/drop-access-axes.d.ts +24 -0
- package/dist/core/migrations/drop-access-axes.d.ts.map +1 -0
- package/dist/core/migrations/drop-access-axes.js +54 -0
- package/dist/core/migrations/drop-access-axes.js.map +1 -0
- package/dist/core/migrations/registry.d.ts +11 -1
- package/dist/core/migrations/registry.d.ts.map +1 -1
- package/dist/core/migrations/registry.js +15 -3
- package/dist/core/migrations/registry.js.map +1 -1
- package/dist/core/notes/list.d.ts +1 -12
- package/dist/core/notes/list.d.ts.map +1 -1
- package/dist/core/notes/list.js.map +1 -1
- package/dist/core/reconcile.js +2 -2
- package/dist/core/reconcile.js.map +1 -1
- package/dist/core/records.d.ts +4 -5
- package/dist/core/records.d.ts.map +1 -1
- package/dist/core/records.js +0 -2
- package/dist/core/records.js.map +1 -1
- package/dist/core/skills.d.ts +6 -0
- package/dist/core/skills.d.ts.map +1 -1
- package/dist/core/skills.js +7 -4
- package/dist/core/skills.js.map +1 -1
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +15 -53
- package/dist/run.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
- package/templates/agents/canonical.md +0 -2
- package/templates/conventions/baseline-conventions.md +1 -34
- package/templates/serve/shell.html +3 -0
- package/templates/serve/style.css +78 -3
- package/templates/skills/ctxr-organize-audit.md +2 -10
- package/templates/skills/ctxr-placement.md +6 -24
- package/templates/skills/ctxr-publish.md +26 -21
- package/templates/skills/ctxr-session-capture.md +1 -4
- package/templates/vendor/eli5/LICENSE.txt +21 -0
- package/templates/vendor/eli5/SKILL.md +116 -0
- package/templates/vendor/eli5/provenance.json +8 -0
- package/dist/commands/check.d.ts +0 -30
- package/dist/commands/check.d.ts.map +0 -1
- package/dist/commands/check.js +0 -65
- package/dist/commands/check.js.map +0 -1
- package/dist/commands/note-resolve.d.ts +0 -14
- package/dist/commands/note-resolve.d.ts.map +0 -1
- package/dist/commands/note-resolve.js +0 -24
- package/dist/commands/note-resolve.js.map +0 -1
- package/dist/core/checks/disclosure-checks.d.ts +0 -4
- package/dist/core/checks/disclosure-checks.d.ts.map +0 -1
- package/dist/core/checks/disclosure-checks.js +0 -24
- package/dist/core/checks/disclosure-checks.js.map +0 -1
- package/dist/core/disclosure/leak-scan.d.ts +0 -19
- package/dist/core/disclosure/leak-scan.d.ts.map +0 -1
- package/dist/core/disclosure/leak-scan.js +0 -31
- package/dist/core/disclosure/leak-scan.js.map +0 -1
- package/dist/core/disclosure/model.d.ts +0 -29
- package/dist/core/disclosure/model.d.ts.map +0 -1
- package/dist/core/disclosure/model.js +0 -69
- package/dist/core/disclosure/model.js.map +0 -1
- package/dist/core/graph/visibility-filter.d.ts +0 -13
- package/dist/core/graph/visibility-filter.d.ts.map +0 -1
- package/dist/core/graph/visibility-filter.js +0 -26
- package/dist/core/graph/visibility-filter.js.map +0 -1
- package/dist/core/migrations/rename-visibility-field.d.ts +0 -3
- package/dist/core/migrations/rename-visibility-field.d.ts.map +0 -1
- package/dist/core/migrations/rename-visibility-field.js +0 -62
- package/dist/core/migrations/rename-visibility-field.js.map +0 -1
- package/dist/core/notes/checks.d.ts +0 -20
- package/dist/core/notes/checks.d.ts.map +0 -1
- package/dist/core/notes/checks.js +0 -58
- package/dist/core/notes/checks.js.map +0 -1
- package/dist/core/notes/visibility.d.ts +0 -26
- package/dist/core/notes/visibility.d.ts.map +0 -1
- package/dist/core/notes/visibility.js +0 -41
- package/dist/core/notes/visibility.js.map +0 -1
|
@@ -1,12 +1,29 @@
|
|
|
1
1
|
import { existsSync } from 'node:fs';
|
|
2
2
|
import { mkdir } from 'node:fs/promises';
|
|
3
3
|
import path from 'node:path';
|
|
4
|
-
import { PublishReservedSlugError, PublishSlugExistsError } from '../core/errors.js';
|
|
4
|
+
import { PublishInvalidSlugError, PublishReservedSlugError, PublishSlugExistsError } from '../core/errors.js';
|
|
5
5
|
import { ExitCode } from '../core/exit-codes.js';
|
|
6
6
|
import { writeFileAtomic } from '../core/fs/atomic.js';
|
|
7
7
|
export const requires = { store: 'required' };
|
|
8
|
-
/** publish spec: reserved for frozen snapshots — a living page's
|
|
8
|
+
/** publish spec: reserved for frozen snapshots — a living page's own name must never collide with this shape. */
|
|
9
9
|
const RESERVED_SLUG_PATTERN = /^\d{4}-/;
|
|
10
|
+
/**
|
|
11
|
+
* browse-navigation-by-folder design.md D5: a slug may name a path of
|
|
12
|
+
* folders, so it is validated a segment at a time. Refusing an empty, `.`,
|
|
13
|
+
* `..`, or absolute segment is what keeps a slug from resolving anywhere
|
|
14
|
+
* but under the configured publish path — the command joined the slug on
|
|
15
|
+
* directly before, with no validation at all.
|
|
16
|
+
*/
|
|
17
|
+
function pageSegments(slug) {
|
|
18
|
+
if (path.isAbsolute(slug))
|
|
19
|
+
throw new PublishInvalidSlugError(slug);
|
|
20
|
+
const segments = slug.split('/');
|
|
21
|
+
for (const segment of segments) {
|
|
22
|
+
if (segment === '' || segment === '.' || segment === '..')
|
|
23
|
+
throw new PublishInvalidSlugError(slug);
|
|
24
|
+
}
|
|
25
|
+
return segments;
|
|
26
|
+
}
|
|
10
27
|
function pageSkeleton(slug, dateCreated) {
|
|
11
28
|
return [
|
|
12
29
|
'<!doctype html>',
|
|
@@ -56,14 +73,19 @@ function readmeSkeleton(slug, dateCreated) {
|
|
|
56
73
|
].join('\n');
|
|
57
74
|
}
|
|
58
75
|
/**
|
|
59
|
-
* publish spec: fixes a page's identity once. Refuses a slug
|
|
60
|
-
* with the reserved dated-snapshot naming pattern
|
|
61
|
-
*
|
|
62
|
-
*
|
|
76
|
+
* publish spec: fixes a page's identity once. Refuses a slug whose page name
|
|
77
|
+
* collides with the reserved dated-snapshot naming pattern or whose segments
|
|
78
|
+
* would resolve outside the publish path, and never overwrites an existing
|
|
79
|
+
* page folder — the caller updates in place by editing the existing files
|
|
80
|
+
* directly, never by re-running this command.
|
|
63
81
|
*/
|
|
64
82
|
export async function execute(store, flags) {
|
|
65
|
-
|
|
66
|
-
|
|
83
|
+
const segments = pageSegments(flags.slug);
|
|
84
|
+
// The final segment is the page's own identity; the ones before it are the
|
|
85
|
+
// directories it is filed under, which the reserved naming does not govern.
|
|
86
|
+
const pageName = segments[segments.length - 1];
|
|
87
|
+
if (RESERVED_SLUG_PATTERN.test(pageName)) {
|
|
88
|
+
throw new PublishReservedSlugError(flags.slug, pageName);
|
|
67
89
|
}
|
|
68
90
|
const relativePath = path.join(store.config.publish.path, flags.slug).split(path.sep).join('/');
|
|
69
91
|
const absolutePath = path.join(store.root, relativePath);
|
|
@@ -72,8 +94,8 @@ export async function execute(store, flags) {
|
|
|
72
94
|
}
|
|
73
95
|
const dateCreated = new Date().toISOString().slice(0, 10);
|
|
74
96
|
await mkdir(absolutePath, { recursive: true });
|
|
75
|
-
await writeFileAtomic(path.join(absolutePath, 'index.html'), pageSkeleton(
|
|
76
|
-
await writeFileAtomic(path.join(absolutePath, 'README.md'), readmeSkeleton(
|
|
97
|
+
await writeFileAtomic(path.join(absolutePath, 'index.html'), pageSkeleton(pageName, dateCreated));
|
|
98
|
+
await writeFileAtomic(path.join(absolutePath, 'README.md'), readmeSkeleton(pageName, dateCreated));
|
|
77
99
|
return {
|
|
78
100
|
exitCode: ExitCode.Ok,
|
|
79
101
|
data: { slug: flags.slug, path: relativePath },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish-new.js","sourceRoot":"","sources":["../../src/commands/publish-new.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"publish-new.js","sourceRoot":"","sources":["../../src/commands/publish-new.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,eAAO,MAAM,QAAQ,EAAE,eAAuC,CAAC;AAE/D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,cAAc,CAAC;AAgHxC;;;;;GAKG;AACH,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CA2B9G"}
|
package/dist/commands/serve.js
CHANGED
|
@@ -2,8 +2,9 @@ import { readFile } from 'node:fs/promises';
|
|
|
2
2
|
import { createServer } from 'node:http';
|
|
3
3
|
import path from 'node:path';
|
|
4
4
|
import { buildLinkResolver } from '../core/browse/link-resolver.js';
|
|
5
|
+
import { renderIndexBody, renderNav } from '../core/browse/nav.js';
|
|
5
6
|
import { escapeHtml, renderNoteBody } from '../core/browse/render.js';
|
|
6
|
-
import { buildRouteTable
|
|
7
|
+
import { buildRouteTable } from '../core/browse/routes.js';
|
|
7
8
|
import { readStylesheet, renderShell } from '../core/browse/templates.js';
|
|
8
9
|
import { ExitCode } from '../core/exit-codes.js';
|
|
9
10
|
export const requires = { store: 'required' };
|
|
@@ -42,26 +43,6 @@ function contentTypeFor(filePath) {
|
|
|
42
43
|
function buildHint(command) {
|
|
43
44
|
return `<div class="ctxr-build-hint">Not built yet. Run <code>${escapeHtml(command)}</code> and reload.</div>`;
|
|
44
45
|
}
|
|
45
|
-
function renderIndex(table) {
|
|
46
|
-
const notes = [...table.notes.keys()].sort();
|
|
47
|
-
const catalogSections = [...table.catalog.keys()].sort();
|
|
48
|
-
const slugs = publishSlugs(table);
|
|
49
|
-
const listItems = (items, hrefFor) => items.length > 0
|
|
50
|
-
? items.map((item) => `<li><a href="${hrefFor(item)}">${escapeHtml(item)}</a></li>`).join('\n')
|
|
51
|
-
: '<li>none yet</li>';
|
|
52
|
-
return [
|
|
53
|
-
'<h1>contexture</h1>',
|
|
54
|
-
`<p>${notes.length} note(s), ${catalogSections.length} catalog section(s), ${slugs.length} published page(s).</p>`,
|
|
55
|
-
'<h2>Notes</h2>',
|
|
56
|
-
`<ul class="ctxr-index">${listItems(notes, (p) => `/notes/${encodeURI(p)}`)}</ul>`,
|
|
57
|
-
'<h2>Catalog</h2>',
|
|
58
|
-
`<ul class="ctxr-index">${listItems(catalogSections, (id) => `/catalog/${encodeURIComponent(id)}`)}</ul>`,
|
|
59
|
-
'<h2>Graph</h2>',
|
|
60
|
-
'<p><a href="/graph">graph document</a></p>',
|
|
61
|
-
'<h2>Published pages</h2>',
|
|
62
|
-
`<ul class="ctxr-index">${listItems(slugs, (slug) => `/publish/${encodeURIComponent(slug)}/index.html`)}</ul>`,
|
|
63
|
-
].join('\n');
|
|
64
|
-
}
|
|
65
46
|
function send(res, method, status, contentType, body) {
|
|
66
47
|
const buffer = Buffer.isBuffer(body) ? body : Buffer.from(body, 'utf8');
|
|
67
48
|
res.writeHead(status, { 'Content-Type': contentType, 'Content-Length': buffer.length });
|
|
@@ -89,7 +70,7 @@ async function handleRequest(store, stderr, req, res) {
|
|
|
89
70
|
const table = await buildRouteTable(store);
|
|
90
71
|
const resolveLink = buildLinkResolver([...table.notes.values()]);
|
|
91
72
|
if (pathname === '/') {
|
|
92
|
-
send(res, method, 200, 'text/html; charset=utf-8', await renderShell('contexture',
|
|
73
|
+
send(res, method, 200, 'text/html; charset=utf-8', await renderShell('contexture', renderIndexBody(table), renderNav(table)));
|
|
93
74
|
return;
|
|
94
75
|
}
|
|
95
76
|
if (pathname === '/assets/style.css') {
|
|
@@ -99,7 +80,7 @@ async function handleRequest(store, stderr, req, res) {
|
|
|
99
80
|
if (pathname === '/graph') {
|
|
100
81
|
const doc = await readDerivedDocument(table.graphDocumentPath);
|
|
101
82
|
const body = 'hint' in doc ? buildHint('ctxr graph build') : renderNoteBody(doc.text, resolveLink);
|
|
102
|
-
send(res, method, 200, 'text/html; charset=utf-8', await renderShell('graph', body));
|
|
83
|
+
send(res, method, 200, 'text/html; charset=utf-8', await renderShell('graph', body, renderNav(table)));
|
|
103
84
|
return;
|
|
104
85
|
}
|
|
105
86
|
if (pathname.startsWith('/notes/')) {
|
|
@@ -108,7 +89,7 @@ async function handleRequest(store, stderr, req, res) {
|
|
|
108
89
|
send(res, method, 404, 'text/plain; charset=utf-8', 'not found\n');
|
|
109
90
|
return;
|
|
110
91
|
}
|
|
111
|
-
send(res, method, 200, 'text/html; charset=utf-8', await renderShell(note.path, renderNoteBody(note.body, resolveLink)));
|
|
92
|
+
send(res, method, 200, 'text/html; charset=utf-8', await renderShell(note.path, renderNoteBody(note.body, resolveLink), renderNav(table)));
|
|
112
93
|
return;
|
|
113
94
|
}
|
|
114
95
|
if (pathname.startsWith('/catalog/')) {
|
|
@@ -120,7 +101,7 @@ async function handleRequest(store, stderr, req, res) {
|
|
|
120
101
|
}
|
|
121
102
|
const doc = await readDerivedDocument(section.absolutePath);
|
|
122
103
|
const body = 'hint' in doc ? buildHint('ctxr catalog build') : renderNoteBody(doc.text, resolveLink);
|
|
123
|
-
send(res, method, 200, 'text/html; charset=utf-8', await renderShell(sectionId, body));
|
|
104
|
+
send(res, method, 200, 'text/html; charset=utf-8', await renderShell(sectionId, body, renderNav(table)));
|
|
124
105
|
return;
|
|
125
106
|
}
|
|
126
107
|
if (pathname.startsWith('/publish/')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAA6C,MAAM,WAAW,CAAC;AACpF,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-capture.d.ts","sourceRoot":"","sources":["../../src/commands/session-capture.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAI1E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAgB9C,eAAO,MAAM,QAAQ,EAAE,eAAuC,CAAC;AAE/D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB;
|
|
1
|
+
{"version":3,"file":"session-capture.d.ts","sourceRoot":"","sources":["../../src/commands/session-capture.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAI1E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAgB9C,eAAO,MAAM,QAAQ,EAAE,eAAuC,CAAC;AAE/D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAmBD,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,CAAC;AAElE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,kBAAkB,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,iBAAiB,EAAE,CAAC;CAC5B;AAwCD;;;;;GAKG;AACH,wBAAsB,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,CA8CnH"}
|
|
@@ -46,8 +46,6 @@ async function applyNote(store, id, item) {
|
|
|
46
46
|
if (exists)
|
|
47
47
|
return { id, path: item.path, outcome: 'refused', reason: 'already exists; use mode: append' };
|
|
48
48
|
const frontmatter = { ...item.frontmatter };
|
|
49
|
-
if (item.visibility !== undefined)
|
|
50
|
-
frontmatter[store.config.fields.visibility] = item.visibility;
|
|
51
49
|
await mkdir(path.dirname(absolutePath), { recursive: true });
|
|
52
50
|
await writeFileAtomic(absolutePath, renderNote(frontmatter, item.body));
|
|
53
51
|
return { id, path: item.path, outcome: 'wrote' };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-capture.js","sourceRoot":"","sources":["../../src/commands/session-capture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AACtE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE;;;;;;;;;;GAUG;AACH,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAE5F,MAAM,CAAC,MAAM,QAAQ,GAAoB,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"session-capture.js","sourceRoot":"","sources":["../../src/commands/session-capture.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,4 @@
|
|
|
1
|
-
import type { AdapterDeclaration
|
|
2
|
-
/**
|
|
3
|
-
* context-store spec: "The visibility field's frontmatter key is configurable
|
|
4
|
-
* with a shipped default... No specification other than this one SHALL
|
|
5
|
-
* assert the literal key name." This module is that one place, in code —
|
|
6
|
-
* enforced by test/unit/single-source-literals.test.ts. Every other module
|
|
7
|
-
* reads the key via StoreConfig.fields.visibility, never this constant
|
|
8
|
-
* directly, and never the literal "scope" string.
|
|
9
|
-
*
|
|
10
|
-
* "scope" is provisional (design.md D7 / openspec/config.yaml): renaming it
|
|
11
|
-
* is meant to be a config-default change plus a migration, never a spec or
|
|
12
|
-
* code rewrite. Do not let this constant's value leak into any other file.
|
|
13
|
-
*/
|
|
14
|
-
export declare const DEFAULT_VISIBILITY_FIELD_KEY = "lens";
|
|
15
|
-
/**
|
|
16
|
-
* The visibility field key every store created before schema_version 2
|
|
17
|
-
* used. Named here, once, purely as history for the rename migration
|
|
18
|
-
* (core/migrations/rename-visibility-field.ts) to read from — this is the
|
|
19
|
-
* one sanctioned place a superseded key value is allowed to live once it's
|
|
20
|
-
* no longer the shipped default.
|
|
21
|
-
*/
|
|
22
|
-
export declare const SCHEMA_V1_VISIBILITY_FIELD_KEY = "scope";
|
|
23
|
-
/** context-visibility spec rung 3: what a note's visibility fails closed to. */
|
|
24
|
-
export declare const DEFAULT_VISIBILITY_CONTEXT = "private";
|
|
1
|
+
import type { AdapterDeclaration } from './schema.js';
|
|
25
2
|
/**
|
|
26
3
|
* context-store spec (contexture-home-layout): `.contexture/` is the tool's
|
|
27
4
|
* home directory. Only its cache subpath is derived/gitignored — the
|
|
@@ -39,8 +16,17 @@ export declare const DEFAULT_DERIVED_PATHS: readonly ['.contexture/cache/'];
|
|
|
39
16
|
* can still point this anywhere.
|
|
40
17
|
*/
|
|
41
18
|
export declare const DEFAULT_SKILLS_PATH = ".agents/skills/";
|
|
42
|
-
/**
|
|
43
|
-
|
|
19
|
+
/**
|
|
20
|
+
* harness-portability spec (vendored-craft-skills): the shipped vendored skill
|
|
21
|
+
* set, installed by default and refreshed by update — one skill per craft axis
|
|
22
|
+
* a published page needs and contexture supplies none of (its visual form; the
|
|
23
|
+
* prose that explains its subject to a reader).
|
|
24
|
+
*
|
|
25
|
+
* Appended, never sorted in: the notices order, the paths init stages, and a
|
|
26
|
+
* store's rendered configuration all follow this order, so growing the set is
|
|
27
|
+
* a pure insertion rather than a reshuffle.
|
|
28
|
+
*/
|
|
29
|
+
export declare const DEFAULT_VENDORED_SKILLS: readonly ['frontend-design', 'eli5'];
|
|
44
30
|
/**
|
|
45
31
|
* harness-portability spec: the guidance directory holding contexture's
|
|
46
32
|
* shipped baseline convention file, the operator's own convention files
|
|
@@ -93,9 +79,6 @@ export declare const DEFAULT_CATALOG_PATH = ".contexture/catalog/";
|
|
|
93
79
|
export declare const DEFAULT_CATALOG_SECTION_MAX_BYTES: number;
|
|
94
80
|
/** publish spec: where published pages live — tracked, authored-but-tool-owned, excluded from retrieval like the catalog and skill pack. */
|
|
95
81
|
export declare const DEFAULT_PUBLISH_PATH = ".contexture/publish/";
|
|
96
|
-
/** disclosure-policy spec: v1 ships with no audiences pre-declared internal, and no hard walls — an explicit, empty starting point the operator opts into. */
|
|
97
|
-
export declare const DEFAULT_INTERNAL_AUDIENCES: readonly string[];
|
|
98
|
-
export declare const DEFAULT_HARD_WALLS: readonly HardWallConfig[];
|
|
99
82
|
/** context-ingest spec: capture's landing zone — a normal, retrievable directory, not an exclusion. */
|
|
100
83
|
export declare const DEFAULT_INBOX_PATH = "inbox/";
|
|
101
84
|
/** store-primitives-from-migration-audit spec (D2): the shipped tracking-parameter list source check strips before comparing URL identities. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,YAAI,oBAAoB,CAAU,CAAC;AAErE;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AAErD;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,YAAI,iBAAiB,EAAE,MAAM,CAAU,CAAC;AAE5E;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D,4HAA4H;AAC5H,eAAO,MAAM,sCAAsC,4BAA4B,CAAC;AAEhF;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,2BAA2B,CAAC;AAE7E;;;;GAIG;AACH,eAAO,MAAM,mCAAmC,yBAAyB,CAAC;AAE1E,mHAAmH;AACnH,eAAO,MAAM,yBAAyB,eAAe,CAAC;AAEtD,+IAA+I;AAC/I,eAAO,MAAM,oBAAoB,oCAAyD,CAAC;AAE3F,yIAAyI;AACzI,eAAO,MAAM,4BAA4B,QAAY,CAAC;AAEtD,0DAA0D;AAC1D,eAAO,MAAM,qBAAqB,YAAI,cAAc,CAAU,CAAC;AAE/D,oHAAoH;AACpH,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAAO,CAAC;AAEvD,8HAA8H;AAC9H,eAAO,MAAM,sBAAsB;IACjC,aAAa;IACb,OAAO;IACP,UAAU;IACV,sBAAsB,EAAQ,MAAM,EAAE;CACvC,CAAC;AAEF,wFAAwF;AACxF,eAAO,MAAM,sBAAsB,gBAAgB,CAAC;AAEpD,8FAA8F;AAC9F,eAAO,MAAM,6BAA6B,aAAa,CAAC;AAGxD,oFAAoF;AACpF,eAAO,MAAM,+BAA+B,OAAO,CAAC;AAEpD,2HAA2H;AAC3H,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAE3D,6GAA6G;AAC7G,eAAO,MAAM,iCAAiC,QAAY,CAAC;AAE3D,4IAA4I;AAC5I,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAE3D,uGAAuG;AACvG,eAAO,MAAM,kBAAkB,WAAW,CAAC;AAE3C,gJAAgJ;AAChJ,eAAO,MAAM,uBAAuB,UAA6F,CAAC;AAElI;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,aAAa,CAAC;AAEtD,iHAAiH;AACjH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,kBAAkB,EAAwD,CAAC"}
|
package/dist/config/defaults.js
CHANGED
|
@@ -1,26 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* context-store spec: "The visibility field's frontmatter key is configurable
|
|
3
|
-
* with a shipped default... No specification other than this one SHALL
|
|
4
|
-
* assert the literal key name." This module is that one place, in code —
|
|
5
|
-
* enforced by test/unit/single-source-literals.test.ts. Every other module
|
|
6
|
-
* reads the key via StoreConfig.fields.visibility, never this constant
|
|
7
|
-
* directly, and never the literal "scope" string.
|
|
8
|
-
*
|
|
9
|
-
* "scope" is provisional (design.md D7 / openspec/config.yaml): renaming it
|
|
10
|
-
* is meant to be a config-default change plus a migration, never a spec or
|
|
11
|
-
* code rewrite. Do not let this constant's value leak into any other file.
|
|
12
|
-
*/
|
|
13
|
-
export const DEFAULT_VISIBILITY_FIELD_KEY = 'lens';
|
|
14
|
-
/**
|
|
15
|
-
* The visibility field key every store created before schema_version 2
|
|
16
|
-
* used. Named here, once, purely as history for the rename migration
|
|
17
|
-
* (core/migrations/rename-visibility-field.ts) to read from — this is the
|
|
18
|
-
* one sanctioned place a superseded key value is allowed to live once it's
|
|
19
|
-
* no longer the shipped default.
|
|
20
|
-
*/
|
|
21
|
-
export const SCHEMA_V1_VISIBILITY_FIELD_KEY = 'scope';
|
|
22
|
-
/** context-visibility spec rung 3: what a note's visibility fails closed to. */
|
|
23
|
-
export const DEFAULT_VISIBILITY_CONTEXT = 'private';
|
|
24
1
|
/**
|
|
25
2
|
* context-store spec (contexture-home-layout): `.contexture/` is the tool's
|
|
26
3
|
* home directory. Only its cache subpath is derived/gitignored — the
|
|
@@ -38,8 +15,17 @@ export const DEFAULT_DERIVED_PATHS = ['.contexture/cache/'];
|
|
|
38
15
|
* can still point this anywhere.
|
|
39
16
|
*/
|
|
40
17
|
export const DEFAULT_SKILLS_PATH = '.agents/skills/';
|
|
41
|
-
/**
|
|
42
|
-
|
|
18
|
+
/**
|
|
19
|
+
* harness-portability spec (vendored-craft-skills): the shipped vendored skill
|
|
20
|
+
* set, installed by default and refreshed by update — one skill per craft axis
|
|
21
|
+
* a published page needs and contexture supplies none of (its visual form; the
|
|
22
|
+
* prose that explains its subject to a reader).
|
|
23
|
+
*
|
|
24
|
+
* Appended, never sorted in: the notices order, the paths init stages, and a
|
|
25
|
+
* store's rendered configuration all follow this order, so growing the set is
|
|
26
|
+
* a pure insertion rather than a reshuffle.
|
|
27
|
+
*/
|
|
28
|
+
export const DEFAULT_VENDORED_SKILLS = ['frontend-design', 'eli5'];
|
|
43
29
|
/**
|
|
44
30
|
* harness-portability spec: the guidance directory holding contexture's
|
|
45
31
|
* shipped baseline convention file, the operator's own convention files
|
|
@@ -92,9 +78,6 @@ export const DEFAULT_CATALOG_PATH = '.contexture/catalog/';
|
|
|
92
78
|
export const DEFAULT_CATALOG_SECTION_MAX_BYTES = 32 * 1024;
|
|
93
79
|
/** publish spec: where published pages live — tracked, authored-but-tool-owned, excluded from retrieval like the catalog and skill pack. */
|
|
94
80
|
export const DEFAULT_PUBLISH_PATH = '.contexture/publish/';
|
|
95
|
-
/** disclosure-policy spec: v1 ships with no audiences pre-declared internal, and no hard walls — an explicit, empty starting point the operator opts into. */
|
|
96
|
-
export const DEFAULT_INTERNAL_AUDIENCES = [];
|
|
97
|
-
export const DEFAULT_HARD_WALLS = [];
|
|
98
81
|
/** context-ingest spec: capture's landing zone — a normal, retrievable directory, not an exclusion. */
|
|
99
82
|
export const DEFAULT_INBOX_PATH = 'inbox/';
|
|
100
83
|
/** store-primitives-from-migration-audit spec (D2): the shipped tracking-parameter list source check strips before comparing URL identities. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,oBAAoB,CAAU,CAAC;AAErE;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAErD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAU,CAAC;AAE5E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,4HAA4H;AAC5H,MAAM,CAAC,MAAM,sCAAsC,GAAG,yBAAyB,CAAC;AAEhF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAG,wBAAwB,CAAC;AAE7E;;;;GAIG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,sBAAsB,CAAC;AAE1E,mHAAmH;AACnH,MAAM,CAAC,MAAM,yBAAyB,GAAG,YAAY,CAAC;AAEtD,+IAA+I;AAC/I,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,qBAAqB,GAAG,yBAAyB,EAAE,CAAC;AAE3F,yIAAyI;AACzI,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,GAAG,IAAI,CAAC;AAEtD,0DAA0D;AAC1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,cAAc,CAAU,CAAC;AAE/D,oHAAoH;AACpH,MAAM,CAAC,MAAM,iBAAiB,GAAsB,EAAE,CAAC;AAEvD,8HAA8H;AAC9H,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,aAAa,EAAE,CAAC;IAChB,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,EAAE;IACd,sBAAsB,EAAE,EAAc;CACvC,CAAC;AAEF,wFAAwF;AACxF,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CAAC;AAEpD,8FAA8F;AAC9F,MAAM,CAAC,MAAM,6BAA6B,GAAG,UAAU,CAAC;AAGxD,oFAAoF;AACpF,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAI,CAAC;AAEpD,2HAA2H;AAC3H,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,6GAA6G;AAC7G,MAAM,CAAC,MAAM,iCAAiC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE3D,4IAA4I;AAC5I,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,uGAAuG;AACvG,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAQ,CAAC;AAE3C,gJAAgJ;AAChJ,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAElI;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,UAAU,CAAC;AAEtD,iHAAiH;AACjH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAkC,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC"}
|
package/dist/config/schema.d.ts
CHANGED
|
@@ -6,10 +6,9 @@ import { z } from 'zod';
|
|
|
6
6
|
*/
|
|
7
7
|
/**
|
|
8
8
|
* Bumped to 2 by the visibility-field key rename migration (store-lifecycle
|
|
9
|
-
* spec task 9.2)
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* config.fields.visibility, never a literal key, so nothing else changed.
|
|
9
|
+
* spec task 9.2). Both that field and the config key naming it were removed
|
|
10
|
+
* at schema 7 (see below); the migration survives only to keep the 1 -> 2
|
|
11
|
+
* step in the chain intact.
|
|
13
12
|
*
|
|
14
13
|
* Bumped to 3 by the procedures-to-skills key rename migration
|
|
15
14
|
* (rename-procedures-to-skills, 0003-rename-procedures-path-to-skills):
|
|
@@ -22,7 +21,21 @@ import { z } from 'zod';
|
|
|
22
21
|
* `harness.conventions_path` -> `harness.guidance_path`. HarnessSchema's
|
|
23
22
|
* transform accepts the old key through this version too, the same way.
|
|
24
23
|
*/
|
|
25
|
-
|
|
24
|
+
/**
|
|
25
|
+
* Bumped to 7 on main by the explanation-craft-skill migration
|
|
26
|
+
* (vendor-explanation-craft-skill, 0007-add-explanation-craft-skill), which
|
|
27
|
+
* pins its own local SCHEMA_VERSION and is unaffected by later bumps here.
|
|
28
|
+
*
|
|
29
|
+
* Bumped to 8 by the access-axis removal (retire-the-access-axes,
|
|
30
|
+
* drop-access-axes): the `visibility:` and `disclosure:` blocks and the
|
|
31
|
+
* `fields:` block that named the visibility frontmatter key are all gone.
|
|
32
|
+
* Unlike the rename migrations above, nothing here is accepted loosely for
|
|
33
|
+
* an older store — `noUnrecognizedConfigKeysCheck` derives from this
|
|
34
|
+
* schema's shape, so an unmigrated store fails `doctor` on the three stale
|
|
35
|
+
* keys until `ctxr migrate` drops them, exactly as `identity` did when
|
|
36
|
+
* remove-agent-identity retired it.
|
|
37
|
+
*/
|
|
38
|
+
export declare const SUPPORTED_SCHEMA_VERSION = 8;
|
|
26
39
|
export declare const TaxonomyLayerSchema: z.ZodObject<{
|
|
27
40
|
name: z.ZodString;
|
|
28
41
|
path: z.ZodString;
|
|
@@ -41,22 +54,6 @@ declare const GraphSettingsSchema: z.ZodObject<{
|
|
|
41
54
|
bridge_top: z.ZodDefault<z.ZodNumber>;
|
|
42
55
|
orphan_exempt_clusters: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
43
56
|
}, z.core.$strip>;
|
|
44
|
-
/**
|
|
45
|
-
* disclosure-policy spec: "v1 keeps the disclosure ladder's shape with a
|
|
46
|
-
* flat, user-defined value list" (design.md) — no registry syntax, just a
|
|
47
|
-
* flat set of audience names the operator considers internal, and a flat
|
|
48
|
-
* list of hard-wall rules evaluated before any tag or visibility rung.
|
|
49
|
-
*/
|
|
50
|
-
declare const HardWallSchema: z.ZodObject<{
|
|
51
|
-
audience: z.ZodString;
|
|
52
|
-
note_path_prefix: z.ZodOptional<z.ZodString>;
|
|
53
|
-
except: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
54
|
-
verdict: z.ZodEnum<{
|
|
55
|
-
allow: "allow";
|
|
56
|
-
ask: "ask";
|
|
57
|
-
deny: "deny";
|
|
58
|
-
}>;
|
|
59
|
-
}, z.core.$strip>;
|
|
60
57
|
declare const AdapterDeclarationSchema: z.ZodObject<{
|
|
61
58
|
id: z.ZodString;
|
|
62
59
|
kind: z.ZodEnum<{
|
|
@@ -75,14 +72,6 @@ export declare const StoreConfigSchema: z.ZodObject<{
|
|
|
75
72
|
description: z.ZodString;
|
|
76
73
|
}, z.core.$strip>>;
|
|
77
74
|
}, z.core.$strip>;
|
|
78
|
-
fields: z.ZodObject<{
|
|
79
|
-
visibility: z.ZodString;
|
|
80
|
-
}, z.core.$loose>;
|
|
81
|
-
visibility: z.ZodObject<{
|
|
82
|
-
default_context: z.ZodString;
|
|
83
|
-
directory_defaults: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
84
|
-
contexts: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
|
|
85
|
-
}, z.core.$strip>;
|
|
86
75
|
derived: z.ZodObject<{
|
|
87
76
|
paths: z.ZodArray<z.ZodString>;
|
|
88
77
|
}, z.core.$strip>;
|
|
@@ -117,20 +106,6 @@ export declare const StoreConfigSchema: z.ZodObject<{
|
|
|
117
106
|
skills: z.ZodDefault<z.ZodObject<{
|
|
118
107
|
vendored: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
119
108
|
}, z.core.$strip>>;
|
|
120
|
-
disclosure: z.ZodObject<{
|
|
121
|
-
internal_audiences: z.ZodArray<z.ZodString>;
|
|
122
|
-
hard_walls: z.ZodArray<z.ZodObject<{
|
|
123
|
-
audience: z.ZodString;
|
|
124
|
-
note_path_prefix: z.ZodOptional<z.ZodString>;
|
|
125
|
-
except: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
126
|
-
verdict: z.ZodEnum<{
|
|
127
|
-
allow: "allow";
|
|
128
|
-
ask: "ask";
|
|
129
|
-
deny: "deny";
|
|
130
|
-
}>;
|
|
131
|
-
}, z.core.$strip>>;
|
|
132
|
-
leak_markers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
|
|
133
|
-
}, z.core.$strip>;
|
|
134
109
|
ingest: z.ZodObject<{
|
|
135
110
|
inbox_path: z.ZodString;
|
|
136
111
|
tracking_params: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
@@ -191,7 +166,6 @@ export declare const StoreConfigSchema: z.ZodObject<{
|
|
|
191
166
|
export type StoreConfig = z.infer<typeof StoreConfigSchema>;
|
|
192
167
|
export type TaxonomyLayerConfig = z.infer<typeof TaxonomyLayerSchema>;
|
|
193
168
|
export type GraphSettingsConfig = z.infer<typeof GraphSettingsSchema>;
|
|
194
|
-
export type HardWallConfig = z.infer<typeof HardWallSchema>;
|
|
195
169
|
export type AdapterDeclaration = z.infer<typeof AdapterDeclarationSchema>;
|
|
196
170
|
export {};
|
|
197
171
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;GAIG;AACH
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;GAIG;AACH;;;;;;;;;;;;;;;;GAgBG;AACH;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAE1C,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AAYH;;;;;;GAMG;AACH,QAAA,MAAM,mBAAmB;;;;;iBAKvB,CAAC;AAkLH,QAAA,MAAM,wBAAwB;;;;;;;iBAM5B,CAAC;AAiBH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiBd,CAAC;AAEjB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACtE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
|
package/dist/config/schema.js
CHANGED
|
@@ -7,10 +7,9 @@ import { DEFAULT_ARCHIVE_DESTINATION, DEFAULT_PUBLISH_PATH, DEFAULT_VENDORED_SKI
|
|
|
7
7
|
*/
|
|
8
8
|
/**
|
|
9
9
|
* Bumped to 2 by the visibility-field key rename migration (store-lifecycle
|
|
10
|
-
* spec task 9.2)
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* config.fields.visibility, never a literal key, so nothing else changed.
|
|
10
|
+
* spec task 9.2). Both that field and the config key naming it were removed
|
|
11
|
+
* at schema 7 (see below); the migration survives only to keep the 1 -> 2
|
|
12
|
+
* step in the chain intact.
|
|
14
13
|
*
|
|
15
14
|
* Bumped to 3 by the procedures-to-skills key rename migration
|
|
16
15
|
* (rename-procedures-to-skills, 0003-rename-procedures-path-to-skills):
|
|
@@ -23,7 +22,21 @@ import { DEFAULT_ARCHIVE_DESTINATION, DEFAULT_PUBLISH_PATH, DEFAULT_VENDORED_SKI
|
|
|
23
22
|
* `harness.conventions_path` -> `harness.guidance_path`. HarnessSchema's
|
|
24
23
|
* transform accepts the old key through this version too, the same way.
|
|
25
24
|
*/
|
|
26
|
-
|
|
25
|
+
/**
|
|
26
|
+
* Bumped to 7 on main by the explanation-craft-skill migration
|
|
27
|
+
* (vendor-explanation-craft-skill, 0007-add-explanation-craft-skill), which
|
|
28
|
+
* pins its own local SCHEMA_VERSION and is unaffected by later bumps here.
|
|
29
|
+
*
|
|
30
|
+
* Bumped to 8 by the access-axis removal (retire-the-access-axes,
|
|
31
|
+
* drop-access-axes): the `visibility:` and `disclosure:` blocks and the
|
|
32
|
+
* `fields:` block that named the visibility frontmatter key are all gone.
|
|
33
|
+
* Unlike the rename migrations above, nothing here is accepted loosely for
|
|
34
|
+
* an older store — `noUnrecognizedConfigKeysCheck` derives from this
|
|
35
|
+
* schema's shape, so an unmigrated store fails `doctor` on the three stale
|
|
36
|
+
* keys until `ctxr migrate` drops them, exactly as `identity` did when
|
|
37
|
+
* remove-agent-identity retired it.
|
|
38
|
+
*/
|
|
39
|
+
export const SUPPORTED_SCHEMA_VERSION = 8;
|
|
27
40
|
export const TaxonomyLayerSchema = z.object({
|
|
28
41
|
name: z.string().min(1),
|
|
29
42
|
path: z.string().min(1),
|
|
@@ -34,29 +47,6 @@ const TaxonomySchema = z.object({
|
|
|
34
47
|
profile: z.string().min(1),
|
|
35
48
|
layers: z.array(TaxonomyLayerSchema),
|
|
36
49
|
});
|
|
37
|
-
/**
|
|
38
|
-
* Loose (passthrough), not strict: a later phase adding its own field key
|
|
39
|
-
* (e.g. audience tagging) must not force every existing store through a
|
|
40
|
-
* migration just to keep loading. schema_version bumps only on a genuinely
|
|
41
|
-
* incompatible change, never on an additive one.
|
|
42
|
-
*/
|
|
43
|
-
const FieldsSchema = z
|
|
44
|
-
.object({
|
|
45
|
-
visibility: z.string().min(1),
|
|
46
|
-
})
|
|
47
|
-
.passthrough();
|
|
48
|
-
const VisibilitySchema = z.object({
|
|
49
|
-
default_context: z.string().min(1),
|
|
50
|
-
directory_defaults: z.record(z.string(), z.string()).default({}),
|
|
51
|
-
/**
|
|
52
|
-
* context-visibility spec (visibility-contexts-and-wall-verdicts): which
|
|
53
|
-
* visibility VALUES each named context can see. A context with no entry
|
|
54
|
-
* sees exactly its own value (identity default) — so an unconfigured
|
|
55
|
-
* store behaves byte-identically to the equality matching this replaced,
|
|
56
|
-
* and an unknown context fails closed to that same identity match.
|
|
57
|
-
*/
|
|
58
|
-
contexts: z.record(z.string(), z.array(z.string())).default({}),
|
|
59
|
-
});
|
|
60
50
|
const DerivedSchema = z.object({
|
|
61
51
|
paths: z.array(z.string()),
|
|
62
52
|
});
|
|
@@ -120,27 +110,6 @@ const PublishSchema = z.object({
|
|
|
120
110
|
const SkillsSchema = z.object({
|
|
121
111
|
vendored: z.array(z.string()).default([...DEFAULT_VENDORED_SKILLS]),
|
|
122
112
|
});
|
|
123
|
-
/**
|
|
124
|
-
* disclosure-policy spec: "v1 keeps the disclosure ladder's shape with a
|
|
125
|
-
* flat, user-defined value list" (design.md) — no registry syntax, just a
|
|
126
|
-
* flat set of audience names the operator considers internal, and a flat
|
|
127
|
-
* list of hard-wall rules evaluated before any tag or visibility rung.
|
|
128
|
-
*/
|
|
129
|
-
const HardWallSchema = z.object({
|
|
130
|
-
/** A named audience, or "*" to match every audience. */
|
|
131
|
-
audience: z.string().min(1),
|
|
132
|
-
/** Omitted means the wall applies to every note. */
|
|
133
|
-
note_path_prefix: z.string().min(1).optional(),
|
|
134
|
-
/** Audiences this wall does NOT apply to — evaluation falls through to later rungs for them. */
|
|
135
|
-
except: z.array(z.string()).optional(),
|
|
136
|
-
verdict: z.enum(['allow', 'deny', 'ask']),
|
|
137
|
-
});
|
|
138
|
-
/** store-primitives-from-migration-audit spec (D3): a context's marker patterns for the leak scan; empty (the default) makes the scan a no-op. */
|
|
139
|
-
const DisclosureSchema = z.object({
|
|
140
|
-
internal_audiences: z.array(z.string()),
|
|
141
|
-
hard_walls: z.array(HardWallSchema),
|
|
142
|
-
leak_markers: z.record(z.string(), z.array(z.string())).default({}),
|
|
143
|
-
});
|
|
144
113
|
/** context-ingest spec: where capture lands raw material before ingest stamps identity onto it. */
|
|
145
114
|
const IngestSchema = z.object({
|
|
146
115
|
inbox_path: z.string().min(1),
|
|
@@ -284,8 +253,6 @@ export const StoreConfigSchema = z
|
|
|
284
253
|
.object({
|
|
285
254
|
schema_version: z.number().int().positive(),
|
|
286
255
|
taxonomy: TaxonomySchema,
|
|
287
|
-
fields: FieldsSchema,
|
|
288
|
-
visibility: VisibilitySchema,
|
|
289
256
|
derived: DerivedSchema,
|
|
290
257
|
retrieval: RetrievalSchema,
|
|
291
258
|
git: GitSchema,
|
|
@@ -294,7 +261,6 @@ export const StoreConfigSchema = z
|
|
|
294
261
|
catalog: CatalogSchema,
|
|
295
262
|
publish: PublishSchema.default({ path: DEFAULT_PUBLISH_PATH }),
|
|
296
263
|
skills: SkillsSchema.default({ vendored: [...DEFAULT_VENDORED_SKILLS] }),
|
|
297
|
-
disclosure: DisclosureSchema,
|
|
298
264
|
ingest: IngestSchema,
|
|
299
265
|
organize: OrganizeSchema,
|
|
300
266
|
harness: HarnessSchema,
|