@canonical/pragma-cli 0.36.0 → 0.37.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/package.json +22 -19
- package/dist/pragma.conf.js +35 -5
- package/dist/pragma.conf.js.map +1 -1
- package/dist/src/capabilities/capabilities/hints.js +1 -1
- package/dist/src/capabilities/capabilities/hints.js.map +1 -1
- package/dist/src/capabilities/create/create.verb.js +2 -1
- package/dist/src/capabilities/create/create.verb.js.map +1 -1
- package/dist/src/capabilities/create/createSurface.generated.js +23 -1
- package/dist/src/capabilities/create/createSurface.generated.js.map +1 -1
- package/dist/src/capabilities/doctor/checks/checkNodeVersion.js +11 -6
- package/dist/src/capabilities/doctor/checks/checkNodeVersion.js.map +1 -1
- package/dist/src/capabilities/doctor/checks/isSupportedNodeVersion.js +38 -0
- package/dist/src/capabilities/doctor/checks/isSupportedNodeVersion.js.map +1 -0
- package/dist/src/capabilities/setup/operations/setupCompletions.js +6 -2
- package/dist/src/capabilities/setup/operations/setupCompletions.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupConfig.js +4 -2
- package/dist/src/capabilities/setup/operations/setupConfig.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupGenerator.js +64 -13
- package/dist/src/capabilities/setup/operations/setupGenerator.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupLsp.js +59 -13
- package/dist/src/capabilities/setup/operations/setupLsp.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupMcp.js +4 -1
- package/dist/src/capabilities/setup/operations/setupMcp.js.map +1 -1
- package/dist/src/capabilities/setup/operations/setupSkills.js +4 -2
- package/dist/src/capabilities/setup/operations/setupSkills.js.map +1 -1
- package/dist/src/capabilities/setup/setup.verb.js +79 -30
- package/dist/src/capabilities/setup/setup.verb.js.map +1 -1
- package/dist/src/capabilities/setup/targets.js +12 -6
- package/dist/src/capabilities/setup/targets.js.map +1 -1
- package/dist/src/capabilities/shared/index.js +1 -1
- package/dist/src/capabilities/shared/index.js.map +1 -1
- package/dist/src/constants.js +7 -1
- package/dist/src/constants.js.map +1 -1
- package/dist/src/kernel/packs/sparql/buildLookupQuery.js +11 -7
- package/dist/src/kernel/packs/sparql/buildLookupQuery.js.map +1 -1
- package/dist/src/kernel/project/cli/dispatch.js +23 -1
- package/dist/src/kernel/project/cli/dispatch.js.map +1 -1
- package/dist/src/kernel/project/cli/rootHelp.js +8 -5
- package/dist/src/kernel/project/cli/rootHelp.js.map +1 -1
- package/dist/src/kernel/runtime/graphpack/embedded/pack.generated.js +2 -3
- package/dist/src/kernel/runtime/graphpack/embedded/pack.generated.js.map +1 -1
- package/dist/src/kernel/runtime/graphpack/embedded/pack.index.generated.js +1 -1
- package/dist/src/kernel/runtime/graphpack/embedded/pack.index.generated.js.map +1 -1
- package/dist/src/kernel/runtime/graphpack/embedded/pack.manifest.generated.js +4 -0
- package/dist/src/kernel/runtime/graphpack/embedded/pack.manifest.generated.js.map +1 -0
- package/dist/src/kernel/runtime/graphpack/embedded.js +13 -6
- package/dist/src/kernel/runtime/graphpack/embedded.js.map +1 -1
- package/dist/src/kernel/runtime/graphpack/read.js +14 -9
- package/dist/src/kernel/runtime/graphpack/read.js.map +1 -1
- package/dist/src/kernel/runtime/loadSession.js +3 -1
- package/dist/src/kernel/runtime/loadSession.js.map +1 -1
- package/dist/src/kernel/runtime/probe.js +1 -1
- package/dist/src/kernel/runtime/probe.js.map +1 -1
- package/dist/src/kernel/runtime/refs/parseRef.js +17 -1
- package/dist/src/kernel/runtime/refs/parseRef.js.map +1 -1
- package/dist/src/kernel/runtime/refs/resolve.js +9 -3
- package/dist/src/kernel/runtime/refs/resolve.js.map +1 -1
- package/package.json +22 -19
- package/pragma.conf.ts +36 -5
- package/src/capabilities/capabilities/hints.ts +1 -1
- package/src/capabilities/config/collectConfigShow.test.ts +1 -0
- package/src/capabilities/create/byteEquality.test.ts +28 -1
- package/src/capabilities/create/create.test.ts +1 -0
- package/src/capabilities/create/create.verb.ts +2 -1
- package/src/capabilities/create/createGrammar.test.ts +4 -1
- package/src/capabilities/create/createSurface.generated.ts +23 -1
- package/src/capabilities/create/crossCli.subprocess.test.ts +10 -3
- package/src/capabilities/doctor/checks/checkNodeVersion.test.ts +49 -0
- package/src/capabilities/doctor/checks/checkNodeVersion.ts +11 -7
- package/src/capabilities/doctor/checks/isSupportedNodeVersion.test.ts +111 -0
- package/src/capabilities/doctor/checks/isSupportedNodeVersion.ts +34 -0
- package/src/capabilities/doctor/checks/mcpCommand.test.ts +7 -1
- package/src/capabilities/lazy.test.ts +26 -2
- package/src/capabilities/listLookup.shipped.exec.test.ts +340 -0
- package/src/capabilities/resources/resources.test.ts +38 -2
- package/src/capabilities/setup/operations/setupCompletions.ts +9 -2
- package/src/capabilities/setup/operations/setupConfig.ts +7 -2
- package/src/capabilities/setup/operations/setupGenerator.ts +83 -14
- package/src/capabilities/setup/operations/setupLsp.ts +95 -22
- package/src/capabilities/setup/operations/setupMcp.ts +7 -1
- package/src/capabilities/setup/operations/setupSkills.ts +7 -2
- package/src/capabilities/setup/setup.test.ts +247 -2
- package/src/capabilities/setup/setup.verb.ts +83 -35
- package/src/capabilities/setup/targets.ts +18 -8
- package/src/capabilities/shared/index.ts +1 -0
- package/src/capabilities/surface.test.ts +12 -4
- package/src/constants.ts +8 -0
- package/src/kernel/config/defaults.test.ts +17 -2
- package/src/kernel/config/readConfig.test.ts +1 -1
- package/src/kernel/packs/sparql/buildLookupQuery.ts +11 -7
- package/src/kernel/project/cli/dispatch.ts +23 -1
- package/src/kernel/project/cli/rootHelp.ts +8 -5
- package/src/kernel/render/prefixes.test.ts +2 -0
- package/src/kernel/runtime/graphpack/embedded/pack.generated.ts +2 -3
- package/src/kernel/runtime/graphpack/embedded/pack.index.generated.ts +1 -1
- package/src/kernel/runtime/graphpack/embedded/pack.manifest.generated.ts +3 -0
- package/src/kernel/runtime/graphpack/embedded.ts +14 -6
- package/src/kernel/runtime/graphpack/graphpack.test.ts +31 -5
- package/src/kernel/runtime/graphpack/read.ts +14 -12
- package/src/kernel/runtime/loadSession.ts +3 -1
- package/src/kernel/runtime/probe.ts +1 -1
- package/src/kernel/runtime/refs/parseRef.test.ts +49 -1
- package/src/kernel/runtime/refs/parseRef.ts +25 -1
- package/src/kernel/runtime/refs/resolve.ts +9 -3
- package/src/kernel/runtime/types.ts +17 -0
- package/src/testing/helpers/runCli.test.ts +44 -0
- package/src/testing/helpers/runCli.ts +27 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pack.index.generated.js","sourceRoot":"","sources":["../../../../../../src/kernel/runtime/graphpack/embedded/pack.index.generated.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,uEAAuE;AACvE,MAAM,CAAC,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"pack.index.generated.js","sourceRoot":"","sources":["../../../../../../src/kernel/runtime/graphpack/embedded/pack.index.generated.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,uEAAuE;AACvE,MAAM,CAAC,MAAM,SAAS,GAAG,8y8kCAA8y8kC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
// AUTO-GENERATED by scripts/bundle.ts — do not edit by hand.
|
|
2
|
+
// Regenerate from the packs pragma.conf.ts declares: `bun run bundle`.
|
|
3
|
+
export const manifestJson = "{\"name\":\"pragma\",\"version\":\"0.36.0\",\"sourceRef\":\"@canonical/design-system@git:ce00818852628857da9c4a67bf8556c7cfda287d, @canonical/anatomy-dsl@npm:0.3.0, @canonical/token-ontology@npm:0.8.1, @canonical/code-standards@git:fcd3ac2dea458775e5b79344b3237a3fcb37add9, @canonical/ds-implementations@self:v0.36.0\",\"contentHash\":\"7ff2bbd5fd059584ad3285c7b1c7d59c734efef8006fb0bba726db03254392e8\",\"prefixes\":{\"rdf\":\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\"rdfs\":\"http://www.w3.org/2000/01/rdf-schema#\",\"owl\":\"http://www.w3.org/2002/07/owl#\",\"xsd\":\"http://www.w3.org/2001/XMLSchema#\",\"skos\":\"http://www.w3.org/2004/02/skos/core#\",\"sh\":\"http://www.w3.org/ns/shacl#\",\"dcterms\":\"http://purl.org/dc/terms/\",\"ds\":\"https://ds.canonical.com/\",\"anatomy\":\"http://anatomy-dsl.example.org/ontology#\",\"graphql\":\"https://pragma.canonical.com/graphql#\",\"w3c-tokens\":\"https://dt.canonical.com/w3c-tokens/\",\"dt\":\"https://dt.canonical.com/\",\"cs\":\"http://pragma.canonical.com/codestandards#\",\"dso\":\"https://ds.canonical.com/ontology#\"},\"createdAt\":\"2026-09-01T20:29:05.995Z\",\"tripleCount\":30346,\"entityCount\":2906}";
|
|
4
|
+
//# sourceMappingURL=pack.manifest.generated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pack.manifest.generated.js","sourceRoot":"","sources":["../../../../../../src/kernel/runtime/graphpack/embedded/pack.manifest.generated.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,uEAAuE;AACvE,MAAM,CAAC,MAAM,YAAY,GAAG,wpCAAwpC,CAAC"}
|
|
@@ -18,18 +18,20 @@
|
|
|
18
18
|
*
|
|
19
19
|
* The inlined strings are materialized into the ordinary content-addressed pack
|
|
20
20
|
* cache on first use and then read back through {@link readPack}, so the
|
|
21
|
-
* embedded pack and a built pack share one boot path. The story records
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
21
|
+
* embedded pack and a built pack share one boot path. The story records, the
|
|
22
|
+
* index and the MANIFEST each live in their own generated module: every one of
|
|
23
|
+
* them is read on a path that does not need the n-quads, and leaving any of
|
|
24
|
+
* them beside `pack.generated.ts` would load its ~2.1 MB with them — a measured
|
|
25
|
+
* +28 ms on every invocation for the stories, and ~370 ms per CLI invocation
|
|
26
|
+
* for the manifest at a 30,340-triple pack. Inlining as JS strings
|
|
25
27
|
* (rather than file assets) means the pack travels with the emitted modules —
|
|
26
28
|
* it needs no asset step in any build, and no file lookup at run time.
|
|
27
29
|
*/
|
|
28
30
|
import { existsSync, mkdirSync, mkdtempSync, renameSync, rmSync, writeFileSync, } from "node:fs";
|
|
29
31
|
import { join } from "node:path";
|
|
30
32
|
import { packDir, packsCacheDir } from "../paths.js";
|
|
31
|
-
import { dataNq, manifestJson, schemaJson } from "./embedded/pack.generated.js";
|
|
32
33
|
import { indexJson } from "./embedded/pack.index.generated.js";
|
|
34
|
+
import { manifestJson } from "./embedded/pack.manifest.generated.js";
|
|
33
35
|
import { storiesJson } from "./embedded/pack.stories.generated.js";
|
|
34
36
|
import { packIsComplete } from "./manifest.js";
|
|
35
37
|
import { manifestSchema } from "./schemas.js";
|
|
@@ -55,10 +57,15 @@ export function embeddedManifest() {
|
|
|
55
57
|
* @returns The pack directory, ready for {@link readPack}.
|
|
56
58
|
* @note Impure — writes the inlined pack files into the cache.
|
|
57
59
|
*/
|
|
58
|
-
export function materializeEmbeddedPack() {
|
|
60
|
+
export async function materializeEmbeddedPack() {
|
|
59
61
|
const dir = packDir(embeddedManifest().contentHash);
|
|
60
62
|
if (packIsComplete(dir))
|
|
61
63
|
return dir;
|
|
64
|
+
// Loaded HERE, not at module scope: this is the only branch that needs the
|
|
65
|
+
// payload, and it is the branch that does NOT run once the pack is cached.
|
|
66
|
+
// A static import would parse ~2.1 MB of inlined n-quads on every boot to
|
|
67
|
+
// reach a return statement six lines above.
|
|
68
|
+
const { dataNq, schemaJson } = await import("./embedded/pack.generated.js");
|
|
62
69
|
mkdirSync(packsCacheDir(), { recursive: true });
|
|
63
70
|
const temp = mkdtempSync(join(packsCacheDir(), ".embed-"));
|
|
64
71
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedded.js","sourceRoot":"","sources":["../../../../../src/kernel/runtime/graphpack/embedded.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"embedded.js","sourceRoot":"","sources":["../../../../../src/kernel/runtime/graphpack/embedded.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EACL,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,MAAM,EACN,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EACL,SAAS,EACT,UAAU,EACV,aAAa,EAEb,WAAW,EACX,YAAY,GACb,MAAM,YAAY,CAAC;AAEpB;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,WAAW,CAAC,CAAC;IACpD,IAAI,cAAc,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAEpC,2EAA2E;IAC3E,2EAA2E;IAC3E,0EAA0E;IAC1E,4CAA4C;IAC5C,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;IAE5E,SAAS,CAAC,aAAa,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;IAC3D,IAAI,CAAC;QACH,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7C,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC;QACnD,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,SAAS,CAAC,CAAC;QACjD,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,WAAW,CAAC,CAAC;QACrD,0CAA0C;QAC1C,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,YAAY,CAAC,CAAC;QACvD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,UAAU,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -65,14 +65,24 @@ export async function readPack(dir) {
|
|
|
65
65
|
// "populated index but empty store" check (via the now-empty dump,
|
|
66
66
|
// `packIsComplete` turns false so recovery rebuilds) rather than serving an
|
|
67
67
|
// empty graph as the pack.
|
|
68
|
-
|
|
68
|
+
// `store.size` is a field oxigraph maintains. The equivalent query —
|
|
69
|
+
// `SELECT (COUNT(*)) WHERE { ?s ?p ?o }`, which is what `build.ts` still runs
|
|
70
|
+
// to WRITE `tripleCount` — is a scan, and it ran on every boot to read a
|
|
71
|
+
// number the store already knew.
|
|
72
|
+
//
|
|
73
|
+
// The two agree: ke queries with `use_default_graph_as_union`, and oxigraph
|
|
74
|
+
// does not deduplicate across that union, so a quad count and the union's
|
|
75
|
+
// solution count are the same number even for a triple repeated across
|
|
76
|
+
// graphs. Verified against 0.5.6 rather than assumed — and the guard is `<`,
|
|
77
|
+
// which tolerates the direction a set-semantic union would drift.
|
|
78
|
+
const actualQuads = store.size;
|
|
69
79
|
if (manifest.tripleCount !== undefined) {
|
|
70
|
-
if (
|
|
80
|
+
if (actualQuads < manifest.tripleCount) {
|
|
71
81
|
store.dispose();
|
|
72
|
-
throw packUnavailable(`The pack at ${dir} has a corrupt data cache (expected at least ${manifest.tripleCount} triples, loaded ${
|
|
82
|
+
throw packUnavailable(`The pack at ${dir} has a corrupt data cache (expected at least ${manifest.tripleCount} triples, loaded ${actualQuads}).`);
|
|
73
83
|
}
|
|
74
84
|
}
|
|
75
|
-
else if (index.entities.length > 0 &&
|
|
85
|
+
else if (index.entities.length > 0 && actualQuads === 0) {
|
|
76
86
|
store.dispose();
|
|
77
87
|
throw packUnavailable(`The pack at ${dir} has a corrupt data cache.`);
|
|
78
88
|
}
|
|
@@ -84,9 +94,4 @@ export async function readPack(dir) {
|
|
|
84
94
|
index,
|
|
85
95
|
};
|
|
86
96
|
}
|
|
87
|
-
/** Count the booted store's triples (a cheap aggregate over the union graph). */
|
|
88
|
-
async function countTriples(store) {
|
|
89
|
-
const result = (await store.query("SELECT (COUNT(*) AS ?n) WHERE { ?s ?p ?o }"));
|
|
90
|
-
return Number(result.bindings.at(0)?.n ?? 0);
|
|
91
|
-
}
|
|
92
97
|
//# sourceMappingURL=read.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../../src/kernel/runtime/graphpack/read.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEhE,yFAAyF;AACzF,SAAS,eAAe,CAAC,MAAc;IACrC,OAAO,WAAW,CAAC,gBAAgB,CAAC,MAAM,EAAE;QAC1C,QAAQ,EAAE,WAAW,CACnB,gBAAgB,EAChB,oDAAoD;QACpD,0EAA0E;QAC1E,8CAA8C;QAC9C,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAC3B;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,GAAW;IACxC,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,eAAe,CAAC,eAAe,GAAG,iBAAiB,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC;QAC9B,wEAAwE;QACxE,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC;KAC5B,CAAC,CAAC;IAEH,6EAA6E;IAC7E,4EAA4E;IAC5E,yDAAyD;IACzD,MAAM,QAAQ,GAAG,qBAAqB,CACpC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,EAC7C,EAAE,WAAW,EAAE,SAAS,EAAE,CAC3B,CAAC;IACF,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CACjC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC,CACzD,CAAC;IAEF,4EAA4E;IAC5E,0EAA0E;IAC1E,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,+EAA+E;IAC/E,yEAAyE;IACzE,8EAA8E;IAC9E,0EAA0E;IAC1E,mEAAmE;IACnE,4EAA4E;IAC5E,2BAA2B;IAC3B,
|
|
1
|
+
{"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../../src/kernel/runtime/graphpack/read.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,9 @@ export async function loadStoreSession(ctx) {
|
|
|
28
28
|
// storeReadiness), so a cold store reads identically on every surface.
|
|
29
29
|
throw storeUnavailable(decision.reason);
|
|
30
30
|
}
|
|
31
|
-
const dir = decision.kind === "embedded"
|
|
31
|
+
const dir = decision.kind === "embedded"
|
|
32
|
+
? await materializeEmbeddedPack()
|
|
33
|
+
: decision.dir;
|
|
32
34
|
return readPack(dir);
|
|
33
35
|
}
|
|
34
36
|
//# sourceMappingURL=loadSession.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loadSession.js","sourceRoot":"","sources":["../../../../src/kernel/runtime/loadSession.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AASvD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAuB;IAEvB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IAEjD,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACpC,2EAA2E;QAC3E,uEAAuE;QACvE,MAAM,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,GAAG,GACP,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"loadSession.js","sourceRoot":"","sources":["../../../../src/kernel/runtime/loadSession.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AASvD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAuB;IAEvB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IAEjD,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACpC,2EAA2E;QAC3E,uEAAuE;QACvE,MAAM,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,GAAG,GACP,QAAQ,CAAC,IAAI,KAAK,UAAU;QAC1B,CAAC,CAAC,MAAM,uBAAuB,EAAE;QACjC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;IACnB,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC"}
|
|
@@ -20,7 +20,7 @@ export async function runStoreProbe() {
|
|
|
20
20
|
import("./graphpack/embedded.js"),
|
|
21
21
|
import("./graphpack/read.js"),
|
|
22
22
|
]);
|
|
23
|
-
const session = await readPack(materializeEmbeddedPack());
|
|
23
|
+
const session = await readPack(await materializeEmbeddedPack());
|
|
24
24
|
try {
|
|
25
25
|
const result = await session.store.query("SELECT (COUNT(*) AS ?n) WHERE { ?s ?p ?o }");
|
|
26
26
|
const triples = result.type === "select" ? (result.bindings[0]?.n ?? "0") : "0";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"probe.js","sourceRoot":"","sources":["../../../../src/kernel/runtime/probe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,CAAC,EAAE,uBAAuB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACpE,MAAM,CAAC,yBAAyB,CAAC;QACjC,MAAM,CAAC,qBAAqB,CAAC;KAC9B,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,uBAAuB,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"probe.js","sourceRoot":"","sources":["../../../../src/kernel/runtime/probe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,CAAC,EAAE,uBAAuB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACpE,MAAM,CAAC,yBAAyB,CAAC;QACjC,MAAM,CAAC,qBAAqB,CAAC;KAC9B,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,uBAAuB,EAAE,CAAC,CAAC;IAChE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CACtC,4CAAqD,CACtD,CAAC;QACF,MAAM,OAAO,GACX,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAClE,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,EAAE,EAAE,IAAI;YACR,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM;YACvC,OAAO;SACR,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;AACH,CAAC"}
|
|
@@ -42,11 +42,27 @@ export function parsePackDeclaration(entry) {
|
|
|
42
42
|
},
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
|
+
// `#<ref>` or `#<ref>:<subdir>`. A git ref cannot contain a colon
|
|
46
|
+
// (git check-ref-format), so the split is unambiguous.
|
|
47
|
+
const fragment = source.slice(hashIdx + 1);
|
|
48
|
+
const colonIdx = fragment.indexOf(":");
|
|
49
|
+
if (colonIdx !== -1 && colonIdx === fragment.length - 1) {
|
|
50
|
+
throw PragmaError.configError(`Invalid source for "${name}": the subdirectory after : is empty.`, {
|
|
51
|
+
recovery: {
|
|
52
|
+
message: "Example: git+https://github.com/org/repo.git#main:packages/thing",
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
const ref = colonIdx === -1 ? fragment : fragment.slice(0, colonIdx);
|
|
57
|
+
if (ref.length === 0) {
|
|
58
|
+
throw PragmaError.configError(`Invalid source for "${name}": git URL must include a ref after #.`);
|
|
59
|
+
}
|
|
45
60
|
return {
|
|
46
61
|
kind: "git",
|
|
47
62
|
pkg: name,
|
|
48
63
|
url: source.slice("git+".length, hashIdx),
|
|
49
|
-
ref
|
|
64
|
+
ref,
|
|
65
|
+
...(colonIdx === -1 ? {} : { subdir: fragment.slice(colonIdx + 1) }),
|
|
50
66
|
source,
|
|
51
67
|
};
|
|
52
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseRef.js","sourceRoot":"","sources":["../../../../../src/kernel/runtime/refs/parseRef.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"parseRef.js","sourceRoot":"","sources":["../../../../../src/kernel/runtime/refs/parseRef.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAqBnD;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAsB;IACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACpD,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAC/B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,WAAW,CAAC,WAAW,CAC3B,gDAAgD,CACjD,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAClD,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,WAAW,CAAC,WAAW,CAC3B,uBAAuB,IAAI,wCAAwC,CACpE,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACnD,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,OAAO,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,MAAM,WAAW,CAAC,WAAW,CAC3B,uBAAuB,IAAI,wCAAwC,EACnE;gBACE,QAAQ,EAAE;oBACR,OAAO,EAAE,mDAAmD;iBAC7D;aACF,CACF,CAAC;QACJ,CAAC;QACD,kEAAkE;QAClE,uDAAuD;QACvD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,QAAQ,KAAK,CAAC,CAAC,IAAI,QAAQ,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,WAAW,CAAC,WAAW,CAC3B,uBAAuB,IAAI,uCAAuC,EAClE;gBACE,QAAQ,EAAE;oBACR,OAAO,EACL,kEAAkE;iBACrE;aACF,CACF,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACrE,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,MAAM,WAAW,CAAC,WAAW,CAC3B,uBAAuB,IAAI,wCAAwC,CACpE,CAAC;QACJ,CAAC;QACD,OAAO;YACL,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;YACzC,GAAG;YACH,GAAG,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;YACpE,MAAM;SACP,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,CAAC,WAAW,CAC3B,uBAAuB,IAAI,OAAO,MAAM,gEAAgE,CACzG,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,OAAO,GAAG,CAAC,OAAO,CAAC,wCAAwC,EAAE,QAAQ,CAAC,CAAC;AACzE,CAAC"}
|
|
@@ -318,13 +318,19 @@ export async function resolvePackage(ref, options) {
|
|
|
318
318
|
},
|
|
319
319
|
});
|
|
320
320
|
}
|
|
321
|
+
// The clone lives at `dir`; the PACKAGE may be nested within it. A git
|
|
322
|
+
// source names a repository, so a package inside a monorepo is reached
|
|
323
|
+
// by its subdirectory — without which `readTtlSources` would scan a
|
|
324
|
+
// repository root that has no `definitions/` or `data/` and contribute
|
|
325
|
+
// nothing at all.
|
|
326
|
+
const packageRoot = ref.subdir ? join(dir, ref.subdir) : dir;
|
|
321
327
|
return {
|
|
322
328
|
name: ref.pkg,
|
|
323
329
|
source: ref.source,
|
|
324
330
|
resolved,
|
|
325
|
-
root:
|
|
326
|
-
sources: readTtlSources(
|
|
327
|
-
stories: readStorySources(
|
|
331
|
+
root: packageRoot,
|
|
332
|
+
sources: readTtlSources(packageRoot, ref.pkg),
|
|
333
|
+
stories: readStorySources(packageRoot, ref.pkg),
|
|
328
334
|
};
|
|
329
335
|
}
|
|
330
336
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../../src/kernel/runtime/refs/resolve.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../../src/kernel/runtime/refs/resolve.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@canonical/pragma-cli",
|
|
3
3
|
"description": "CLI and MCP server over Canonical's design-system knowledge graph.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.37.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "src/index.ts",
|
|
7
7
|
"types": "src/index.ts",
|
|
@@ -35,13 +35,15 @@
|
|
|
35
35
|
"build:all": "bun run build",
|
|
36
36
|
"bundle": "bun run scripts/bundle.ts",
|
|
37
37
|
"gen:reference": "bun run scripts/genReference.ts",
|
|
38
|
-
"check": "bun run check:biome && bun run check:ts && bun run check:webarchitect",
|
|
38
|
+
"check": "bun run check:biome && bun run check:ts && bun run check:webarchitect && bun run check:packs",
|
|
39
|
+
"check:packs": "bun run scripts/check-pack-parity.ts",
|
|
40
|
+
"check:packs:test": "bun test scripts/check-pack-parity.test.ts",
|
|
39
41
|
"check:webarchitect": "webarchitect tool-ts",
|
|
40
42
|
"check:fix": "bun run check:biome:fix && bun run check:ts",
|
|
41
43
|
"check:biome": "biome check",
|
|
42
44
|
"check:biome:fix": "biome check --write",
|
|
43
45
|
"check:ts": "tsc --noEmit",
|
|
44
|
-
"test": "bun run test
|
|
46
|
+
"test": "bun run check:packs:test && bun run test:vitest",
|
|
45
47
|
"test:vitest": "vitest run --coverage",
|
|
46
48
|
"test:perf": "vitest run --config vitest.perf.config.ts",
|
|
47
49
|
"test:watch": "vitest",
|
|
@@ -49,28 +51,29 @@
|
|
|
49
51
|
"eval": "bun run src/testing/eval/report.ts"
|
|
50
52
|
},
|
|
51
53
|
"dependencies": {
|
|
52
|
-
"@canonical/harnesses": "^0.
|
|
53
|
-
"@canonical/ke": "^0.
|
|
54
|
-
"@canonical/ke-graphql": "^0.
|
|
55
|
-
"@canonical/summon-application": "^0.
|
|
56
|
-
"@canonical/summon-component": "^0.
|
|
57
|
-
"@canonical/summon-core": "^0.
|
|
58
|
-
"@canonical/summon-package": "^0.
|
|
59
|
-
"@canonical/task": "^0.
|
|
54
|
+
"@canonical/harnesses": "^0.37.0",
|
|
55
|
+
"@canonical/ke": "^0.37.0",
|
|
56
|
+
"@canonical/ke-graphql": "^0.37.0",
|
|
57
|
+
"@canonical/summon-application": "^0.37.0",
|
|
58
|
+
"@canonical/summon-component": "^0.37.0",
|
|
59
|
+
"@canonical/summon-core": "^0.37.0",
|
|
60
|
+
"@canonical/summon-package": "^0.37.0",
|
|
61
|
+
"@canonical/task": "^0.37.0",
|
|
60
62
|
"@modelcontextprotocol/sdk": "^1.12.0",
|
|
61
|
-
"chalk": "^
|
|
62
|
-
"commander": "^
|
|
63
|
+
"chalk": "^6.0.0",
|
|
64
|
+
"commander": "^15.0.0",
|
|
63
65
|
"graphql": "17.0.0-rc.0",
|
|
64
66
|
"oxigraph": "^0.5.0",
|
|
65
67
|
"zod": "^3.25.0"
|
|
66
68
|
},
|
|
67
69
|
"devDependencies": {
|
|
68
70
|
"@biomejs/biome": "2.4.9",
|
|
69
|
-
"@canonical/anatomy-dsl": "^0.
|
|
70
|
-
"@canonical/biome-config": "^0.
|
|
71
|
-
"@canonical/summon": "^0.
|
|
72
|
-
"@canonical/
|
|
73
|
-
"@canonical/
|
|
71
|
+
"@canonical/anatomy-dsl": "^0.3.0",
|
|
72
|
+
"@canonical/biome-config": "^0.37.0",
|
|
73
|
+
"@canonical/summon": "^0.37.0",
|
|
74
|
+
"@canonical/token-ontology": "^0.8.1",
|
|
75
|
+
"@canonical/typescript-config": "^0.37.0",
|
|
76
|
+
"@canonical/webarchitect": "^0.37.0",
|
|
74
77
|
"@types/bun": "^1.3.10",
|
|
75
78
|
"@types/node": "^26.0.0",
|
|
76
79
|
"@vitest/coverage-v8": "^4.0.18",
|
|
@@ -80,5 +83,5 @@
|
|
|
80
83
|
"engines": {
|
|
81
84
|
"node": ">=22.18 <23 || >=23.6"
|
|
82
85
|
},
|
|
83
|
-
"gitHead": "
|
|
86
|
+
"gitHead": "ac8383bdb4be1bcd6fa6c4960a1e3d78c0279688"
|
|
84
87
|
}
|
package/pragma.conf.ts
CHANGED
|
@@ -871,10 +871,23 @@ const codeStandardsStories: readonly PackDefinition[] = [
|
|
|
871
871
|
// because a pack is data — a future release that drops a label should
|
|
872
872
|
// degrade to the IRI-derived name, not become unaddressable.
|
|
873
873
|
//
|
|
874
|
-
// Deliberately NOT declared on `
|
|
875
|
-
// those lists REQUIRES its `by` property, so an entity without
|
|
876
|
-
// row they never publish, and making it addressable (or
|
|
877
|
-
// would be the mirror of the defect this repairs.
|
|
874
|
+
// Deliberately NOT declared on `token`/`modifier`/`tier`/`concept`:
|
|
875
|
+
// each of those lists REQUIRES its `by` property, so an entity without
|
|
876
|
+
// one is a row they never publish, and making it addressable (or
|
|
877
|
+
// sampleable) here would be the mirror of the defect this repairs.
|
|
878
|
+
//
|
|
879
|
+
// `block` is NOT in that set, though an earlier version of this comment
|
|
880
|
+
// claimed it was: its list COALESCEs an OPTIONAL `ds:name` with an
|
|
881
|
+
// IRI-derived fallback, so a block without a `ds:name` WOULD be
|
|
882
|
+
// published under a name its lookup cannot resolve. Every shipped block
|
|
883
|
+
// carries `ds:name` today, so the divergence is latent — and pinned:
|
|
884
|
+
// `listLookup.shipped.exec.test.ts` runs the whole corpus through both
|
|
885
|
+
// halves on every test run, and goes red the moment upstream ships an
|
|
886
|
+
// unnamed block. Fix it THEN, by choosing deliberately between requiring
|
|
887
|
+
// the name in the list and declaring a fallback pair whose derivations
|
|
888
|
+
// actually agree (the list keeps the IRI's dots; the shared
|
|
889
|
+
// `nameFallback` derivation converts them to slashes — declaring the
|
|
890
|
+
// fallback alone would trade one mismatch for another).
|
|
878
891
|
nameFallback: "iri",
|
|
879
892
|
type: "cs:CodeStandard",
|
|
880
893
|
description:
|
|
@@ -982,7 +995,20 @@ Made by the Canonical Webteam — https://canonical.com.`,
|
|
|
982
995
|
name: "@canonical/anatomy-dsl",
|
|
983
996
|
source: "git+https://github.com/canonical/anatomy-dsl.git#main",
|
|
984
997
|
},
|
|
985
|
-
//
|
|
998
|
+
// The design-token semantic model: the authored `dt:` / `w3c-tokens:`
|
|
999
|
+
// ontology in `definitions/` plus the generated strata in `data/`.
|
|
1000
|
+
//
|
|
1001
|
+
// The only source here carrying a SUBDIRECTORY, and it needs one: this
|
|
1002
|
+
// package lives inside a monorepo, at `packages/token-ontology`, while a
|
|
1003
|
+
// git source names a repository. `readTtlSources` scans
|
|
1004
|
+
// `<root>/definitions` and `<root>/data`, which the design-tokens repo
|
|
1005
|
+
// root does not have — so without the subdirectory this would clone
|
|
1006
|
+
// cleanly and contribute nothing.
|
|
1007
|
+
{
|
|
1008
|
+
name: "@canonical/token-ontology",
|
|
1009
|
+
source:
|
|
1010
|
+
"git+https://github.com/canonical/design-tokens.git#main:packages/token-ontology",
|
|
1011
|
+
},
|
|
986
1012
|
// pack an agent is most likely to quote back at a human as policy, so which
|
|
987
1013
|
// revision answered a query has to be recoverable — a floating ref makes
|
|
988
1014
|
// "the CLI told me this was the rule" unfalsifiable. The other three still
|
|
@@ -1023,6 +1049,11 @@ Made by the Canonical Webteam — https://canonical.com.`,
|
|
|
1023
1049
|
// `cs:` is listed even though nothing rebinds it upstream.
|
|
1024
1050
|
prefixes: {
|
|
1025
1051
|
ds: "https://ds.canonical.com/",
|
|
1052
|
+
dt: "https://dt.canonical.com/",
|
|
1053
|
+
// Nested UNDER `dt:`, and both must be bound: `compactUri` takes the
|
|
1054
|
+
// longest match, so binding only the parent would render every term of
|
|
1055
|
+
// this vocabulary as `dt:w3c-tokens/…`.
|
|
1056
|
+
"w3c-tokens": "https://dt.canonical.com/w3c-tokens/",
|
|
1026
1057
|
cs: "http://pragma.canonical.com/codestandards#",
|
|
1027
1058
|
},
|
|
1028
1059
|
channel: "normal",
|
|
@@ -213,7 +213,7 @@ export const TOOL_HINTS: Record<string, ToolHint> = {
|
|
|
213
213
|
create_application: {
|
|
214
214
|
category: "write",
|
|
215
215
|
use_when:
|
|
216
|
-
"Scaffolding a new React application with
|
|
216
|
+
"Scaffolding a new React application with routing, optional Relay, and either server-side rendering or a client-only SPA",
|
|
217
217
|
},
|
|
218
218
|
setup: {
|
|
219
219
|
category: "write",
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
* `create` verbs take. No new package edge: pragma already depends on
|
|
16
16
|
* summon-core, and never on the summon bin.
|
|
17
17
|
*
|
|
18
|
-
* Five generators are covered: component × {react, svelte, lit},
|
|
18
|
+
* Five generators are covered across seven fixtures: component × {react, svelte, lit},
|
|
19
|
+
* package, and
|
|
19
20
|
* application. A cross-binary subprocess guard lives in byteEquality.subprocess.test.ts.
|
|
20
21
|
*/
|
|
21
22
|
|
|
@@ -175,6 +176,32 @@ const cases: Case[] = [
|
|
|
175
176
|
runInstall: false,
|
|
176
177
|
},
|
|
177
178
|
},
|
|
179
|
+
{
|
|
180
|
+
fixture: "application-spa",
|
|
181
|
+
kind: "application",
|
|
182
|
+
framework: "",
|
|
183
|
+
params: {
|
|
184
|
+
appPath: "my-app",
|
|
185
|
+
forms: true,
|
|
186
|
+
intl: false,
|
|
187
|
+
relay: false,
|
|
188
|
+
rendering: "spa",
|
|
189
|
+
runInstall: false,
|
|
190
|
+
},
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
fixture: "application-spa-all",
|
|
194
|
+
kind: "application",
|
|
195
|
+
framework: "",
|
|
196
|
+
params: {
|
|
197
|
+
appPath: "my-app",
|
|
198
|
+
forms: true,
|
|
199
|
+
intl: true,
|
|
200
|
+
relay: true,
|
|
201
|
+
rendering: "spa",
|
|
202
|
+
runInstall: false,
|
|
203
|
+
},
|
|
204
|
+
},
|
|
178
205
|
];
|
|
179
206
|
|
|
180
207
|
describe("byte-equality goldens — pragma create \u2261 the conformance reference (PROTECTED)", () => {
|
|
@@ -523,11 +523,12 @@ export const createVerbs: Record<
|
|
|
523
523
|
),
|
|
524
524
|
application: createVerb(
|
|
525
525
|
"application",
|
|
526
|
-
"Scaffold a full React application with
|
|
526
|
+
"Scaffold a full React application with routing, and either server-side rendering or a client-only SPA.",
|
|
527
527
|
applicationParams,
|
|
528
528
|
[
|
|
529
529
|
{ cmd: `${BIN_NAME} create application react my-app` },
|
|
530
530
|
{ cmd: `${BIN_NAME} create application react my-app --relay` },
|
|
531
|
+
{ cmd: `${BIN_NAME} create application react my-app --rendering spa` },
|
|
531
532
|
],
|
|
532
533
|
),
|
|
533
534
|
};
|
|
@@ -655,7 +655,10 @@ describe("the mounted create grammar (subprocess)", () => {
|
|
|
655
655
|
"--type": "library",
|
|
656
656
|
"--description": "A replied library.",
|
|
657
657
|
},
|
|
658
|
-
"application/react": {
|
|
658
|
+
"application/react": {
|
|
659
|
+
"--app-path": "replied-app",
|
|
660
|
+
"--rendering": "spa",
|
|
661
|
+
},
|
|
659
662
|
};
|
|
660
663
|
for (const [commandPath, surface] of Object.entries(CREATE_SURFACE)) {
|
|
661
664
|
it(`${commandPath}: the refusal's own instruction WORKS — its Missing tokens supplied back (+ --dry-run) preview, exit 0`, () => {
|
|
@@ -17,7 +17,7 @@ export const CREATE_SURFACE: Readonly<Record<string, SurfaceCommand>> = {
|
|
|
17
17
|
"application",
|
|
18
18
|
"react"
|
|
19
19
|
],
|
|
20
|
-
"description": "Scaffold a complete React application with
|
|
20
|
+
"description": "Scaffold a complete React application with routing, and either server-side rendering or a client-only SPA",
|
|
21
21
|
"prompts": [
|
|
22
22
|
{
|
|
23
23
|
"name": "appPath",
|
|
@@ -41,6 +41,23 @@ export const CREATE_SURFACE: Readonly<Record<string, SurfaceCommand>> = {
|
|
|
41
41
|
"default": false,
|
|
42
42
|
"group": "Application"
|
|
43
43
|
},
|
|
44
|
+
{
|
|
45
|
+
"name": "rendering",
|
|
46
|
+
"type": "select",
|
|
47
|
+
"message": "Rendering — ssr keeps the server layer (SSR servers and sitemap), spa is client-only",
|
|
48
|
+
"default": "ssr",
|
|
49
|
+
"choices": [
|
|
50
|
+
{
|
|
51
|
+
"label": "ssr - server-side rendering (Express + Bun servers, sitemap)",
|
|
52
|
+
"value": "ssr"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"label": "spa - client-only single-page app (no server layer)",
|
|
56
|
+
"value": "spa"
|
|
57
|
+
}
|
|
58
|
+
],
|
|
59
|
+
"group": "Application"
|
|
60
|
+
},
|
|
44
61
|
{
|
|
45
62
|
"name": "relay",
|
|
46
63
|
"type": "confirm",
|
|
@@ -278,6 +295,11 @@ export const CREATE_CLI_SYNTAX: Readonly<
|
|
|
278
295
|
"takesValue": false,
|
|
279
296
|
"kebabName": "intl"
|
|
280
297
|
},
|
|
298
|
+
"rendering": {
|
|
299
|
+
"flag": "--rendering",
|
|
300
|
+
"takesValue": true,
|
|
301
|
+
"kebabName": "rendering"
|
|
302
|
+
},
|
|
281
303
|
"relay": {
|
|
282
304
|
"flag": "--relay",
|
|
283
305
|
"takesValue": false,
|
|
@@ -258,9 +258,16 @@ describe("cross-CLI conformance matrix (PROTECTED)", () => {
|
|
|
258
258
|
// here, which is the point).
|
|
259
259
|
it("every declared generator binding path is driven by a conformance fixture", () => {
|
|
260
260
|
expect(
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
261
|
+
// Deduplicated: the assertion is that every declared path is COVERED, and
|
|
262
|
+
// one path may carry several fixtures — application/react is driven by
|
|
263
|
+
// both the SSR arm and the SPA arm.
|
|
264
|
+
[
|
|
265
|
+
...new Set(
|
|
266
|
+
CONFORMANCE_FIXTURES.map((fixture) =>
|
|
267
|
+
commandPathOf(fixture.generator),
|
|
268
|
+
),
|
|
269
|
+
),
|
|
270
|
+
].sort(),
|
|
264
271
|
).toEqual(
|
|
265
272
|
Object.values(CREATE_GENERATORS)
|
|
266
273
|
.flatMap((binding) => binding.paths as readonly string[])
|