@sdd-method/sdd-cli 0.13.2 → 0.14.1

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.
@@ -6,6 +6,15 @@ export interface BundleManifest {
6
6
  bundleName: BundleName;
7
7
  bundleVersion: string;
8
8
  sourceCommit: string;
9
+ /**
10
+ * Minimum sdd-cli version required to apply this bundle. Empty/absent
11
+ * means no requirement (bundles built before v0.13.2 omit the field;
12
+ * the build script started writing it as part of the v0.9.0 schema
13
+ * relocation). Set by build-method-baseline-bundle.sh at bundle-build
14
+ * time from any foundation yaml in the payload that declares
15
+ * `minimum_sdd_cli_version:`.
16
+ */
17
+ minimumSddCliVersion?: string;
9
18
  }
10
19
  export interface Bundle {
11
20
  manifest: BundleManifest;
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/lib/bundle.ts"],"names":[],"mappings":"AAKA,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI/D,eAAO,MAAM,aAAa,yBAAyB,CAAC;AACpD,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AACtD,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,cAAc,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA2BpE;AAaD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAuBzD;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAKvD"}
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/lib/bundle.ts"],"names":[],"mappings":"AAKA,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI/D,eAAO,MAAM,aAAa,yBAAyB,CAAC;AACpD,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AACtD,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,cAAc,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA2BpE;AAaD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CA4BzD;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAKvD"}
@@ -52,13 +52,18 @@ export function parseManifest(raw) {
52
52
  const bundleName = scalars.get("bundle_name");
53
53
  const bundleVersion = scalars.get("bundle_version");
54
54
  const sourceCommit = scalars.get("source_commit");
55
+ const minimumSddCliVersionRaw = scalars.get("minimum_sdd_cli_version");
55
56
  if (!bundleName || !bundleVersion || !sourceCommit) {
56
57
  throw new Error(`BUNDLE_MANIFEST.yaml missing required keys (bundle_name, bundle_version, source_commit)`);
57
58
  }
58
59
  if (!isBundleName(bundleName)) {
59
60
  throw new Error(`Unknown bundle_name in manifest: ${JSON.stringify(bundleName)}`);
60
61
  }
61
- return { bundleName, bundleVersion, sourceCommit };
62
+ const manifest = { bundleName, bundleVersion, sourceCommit };
63
+ if (minimumSddCliVersionRaw && minimumSddCliVersionRaw.length > 0) {
64
+ manifest.minimumSddCliVersion = minimumSddCliVersionRaw;
65
+ }
66
+ return manifest;
62
67
  }
63
68
  export function parseManagedPaths(raw) {
64
69
  return raw
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/lib/bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../src/lib/bundle.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/domains.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC;AAID,wBAAsB,YAAY,CAChC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,YAAY,EAAE,CAAC,CAwCzB"}
1
+ {"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/domains.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC;AAID,wBAAsB,YAAY,CAChC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,YAAY,EAAE,CAAC,CA+CzB"}
@@ -7,10 +7,32 @@
7
7
  // this SDD's method profile).
8
8
  // - repo_count is computed by the build orchestrator after repositories
9
9
  // are discovered, since this builder runs first.
10
+ //
11
+ // Per ADR 0136 ("App and Integration Products Do Not Belong to a Primary
12
+ // Domain"), only platform-profile SDDs own domains. Application-product
13
+ // and integration-product SDDs may have a `docs/domains/<umbrella>/`
14
+ // subdirectory as a structural-organisation convention (where their
15
+ // feature-trees and per-app evidence live), but those subdirectories
16
+ // don't represent domain ownership — they're just where the SDD's
17
+ // artefacts are organised. Emitting a domain row from a non-platform
18
+ // profile creates a duplicate-PK collision at aggregation time when the
19
+ // platform-profile SDD also emits a row for the same umbrella id (e.g.
20
+ // `applications`, `integrations`).
21
+ //
22
+ // The platform-profile SDD is the canonical owner; member SDDs reference
23
+ // their umbrella implicitly via profile + their own identity, not via
24
+ // a redundant domain row. This builder therefore returns an empty list
25
+ // for non-platform-profile SDDs.
10
26
  import { readdir, readFile, stat } from "node:fs/promises";
11
27
  import { join } from "node:path";
12
28
  const DOMAINS_DIR_REL = join("docs", "domains");
13
29
  export async function buildDomains(inputs) {
30
+ // Per ADR 0136: only platform-profile SDDs own domains. Non-platform
31
+ // SDDs return an empty list to avoid duplicate-PK collisions at
32
+ // aggregation against the canonical platform-profile contribution.
33
+ if (inputs.manifest.profile !== "platform-profile") {
34
+ return [];
35
+ }
14
36
  const domainsDir = join(inputs.sddPath, DOMAINS_DIR_REL);
15
37
  let entries;
16
38
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"domains.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/domains.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"domains.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/domains.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,22 @@
7
7
  * their own builds; the aggregator merges by primary key.
8
8
  *
9
9
  * domain_id selection (per ADR 0136):
10
- * - manifest.domainId when declared,
11
- * - else a sensible default for platform-profile categories (where a
12
- * real `platform` domain exists locally),
13
- * - else empty (app and integration products do not have a primary
14
- * domain they are federation nodes that consume capabilities
15
- * across multiple domains via product_capability).
10
+ * - For platform-profile SDDs: manifest.domainId when declared, else
11
+ * a sensible default for platform-profile categories (where a real
12
+ * `platform` domain exists locally).
13
+ * - For application-product / integration-product / support-repo
14
+ * SDDs: always empty. App and integration products do not have a
15
+ * primary domain they are federation nodes that consume
16
+ * capabilities across multiple domains via product_capability. Any
17
+ * domain_id declared in the manifest of a non-platform SDD is
18
+ * typically the umbrella name (e.g. "applications", "integrations")
19
+ * used as a structural-organisation convention; that umbrella is
20
+ * not a domain row in any SDD's domains.csv (only platform-profile
21
+ * SDDs emit domain rows post-v0.14.0), so propagating it would
22
+ * produce a dangling FK reference.
23
+ *
24
+ * When such a manifest declaration is present, we clear the field
25
+ * and emit an "inferred" finding so the override is traceable.
16
26
  */
17
27
  import type { CatalogueRow } from "../csv-writer.js";
18
28
  import type { FindingsLog } from "../findings.js";
@@ -1 +1 @@
1
- {"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/products.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAY,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC;AAYD,wBAAgB,aAAa,CAC3B,MAAM,EAAE,mBAAmB,GAC1B,YAAY,EAAE,CA6BhB"}
1
+ {"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/products.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAY,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;CAChC;AAYD,wBAAgB,aAAa,CAC3B,MAAM,EAAE,mBAAmB,GAC1B,YAAY,EAAE,CA+ChB"}
@@ -7,12 +7,22 @@
7
7
  * their own builds; the aggregator merges by primary key.
8
8
  *
9
9
  * domain_id selection (per ADR 0136):
10
- * - manifest.domainId when declared,
11
- * - else a sensible default for platform-profile categories (where a
12
- * real `platform` domain exists locally),
13
- * - else empty (app and integration products do not have a primary
14
- * domain they are federation nodes that consume capabilities
15
- * across multiple domains via product_capability).
10
+ * - For platform-profile SDDs: manifest.domainId when declared, else
11
+ * a sensible default for platform-profile categories (where a real
12
+ * `platform` domain exists locally).
13
+ * - For application-product / integration-product / support-repo
14
+ * SDDs: always empty. App and integration products do not have a
15
+ * primary domain they are federation nodes that consume
16
+ * capabilities across multiple domains via product_capability. Any
17
+ * domain_id declared in the manifest of a non-platform SDD is
18
+ * typically the umbrella name (e.g. "applications", "integrations")
19
+ * used as a structural-organisation convention; that umbrella is
20
+ * not a domain row in any SDD's domains.csv (only platform-profile
21
+ * SDDs emit domain rows post-v0.14.0), so propagating it would
22
+ * produce a dangling FK reference.
23
+ *
24
+ * When such a manifest declaration is present, we clear the field
25
+ * and emit an "inferred" finding so the override is traceable.
16
26
  */
17
27
  /**
18
28
  * Default domain_id per category when the manifest doesn't declare one.
@@ -26,9 +36,25 @@ const DEFAULT_DOMAIN_BY_CATEGORY = {
26
36
  export function buildProducts(inputs) {
27
37
  const m = inputs.manifest;
28
38
  const defaulted = DEFAULT_DOMAIN_BY_CATEGORY[m.category];
29
- const domainId = m.domainId ?? defaulted ?? "";
30
- if (m.domainId === undefined && defaulted !== undefined) {
31
- inputs.findings.add("inferred", `products: domain_id="${defaulted}" inferred from category=${m.category} (manifest had no domain_id)`);
39
+ let domainId;
40
+ if (m.profile === "platform-profile") {
41
+ domainId = m.domainId ?? defaulted ?? "";
42
+ if (m.domainId === undefined && defaulted !== undefined) {
43
+ inputs.findings.add("inferred", `products: domain_id="${defaulted}" inferred from category=${m.category} (manifest had no domain_id)`);
44
+ }
45
+ }
46
+ else {
47
+ // Per ADR 0136: app/integration/support products do not have a
48
+ // primary domain. Even if the manifest declares one (typically the
49
+ // umbrella name like "applications" or "integrations"), clear it
50
+ // here so the products.domain_id FK reference does not dangle
51
+ // against domains.csv (which only platform-profile SDDs populate
52
+ // post-v0.14.0). Emit a finding when the manifest declared a value
53
+ // so the override is traceable.
54
+ domainId = "";
55
+ if (m.domainId !== undefined && m.domainId.length > 0) {
56
+ inputs.findings.add("inferred", `products: domain_id cleared (manifest declared "${m.domainId}") for profile=${m.profile} per ADR 0136 — app/integration/support products do not have a primary domain`);
57
+ }
32
58
  }
33
59
  return [
34
60
  {
@@ -1 +1 @@
1
- {"version":3,"file":"products.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/products.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAYH;;;;GAIG;AACH,MAAM,0BAA0B,GAAgD;IAC9E,eAAe,EAAE,UAAU;IAC3B,oBAAoB,EAAE,UAAU;CACjC,CAAC;AAEF,MAAM,UAAU,aAAa,CAC3B,MAA2B;IAE3B,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC1B,MAAM,SAAS,GAAG,0BAA0B,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,SAAS,IAAI,EAAE,CAAC;IAE/C,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACxD,MAAM,CAAC,QAAQ,CAAC,GAAG,CACjB,UAAU,EACV,wBAAwB,SAAS,4BAA4B,CAAC,CAAC,QAAQ,8BAA8B,CACtG,CAAC;IACJ,CAAC;IAED,OAAO;QACL;YACE,EAAE,EAAE,CAAC,CAAC,KAAK;YACX,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;YACxB,SAAS,EAAE,QAAQ;YACnB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,QAAQ,EAAE,GAAG;YACb,MAAM,EAAE,QAAQ;YAChB,iBAAiB,EAAE,EAAE;YACrB,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,EAAE;YACjB,uBAAuB,EAAE,EAAE;YAC3B,UAAU,EAAE,MAAM,CAAC,SAAS;YAC5B,aAAa,EAAE,EAAE;SAClB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI;SACR,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SACnE,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"products.js","sourceRoot":"","sources":["../../../../src/lib/catalogue/builders/products.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAYH;;;;GAIG;AACH,MAAM,0BAA0B,GAAgD;IAC9E,eAAe,EAAE,UAAU;IAC3B,oBAAoB,EAAE,UAAU;CACjC,CAAC;AAEF,MAAM,UAAU,aAAa,CAC3B,MAA2B;IAE3B,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC1B,MAAM,SAAS,GAAG,0BAA0B,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEzD,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;QACrC,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,SAAS,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACxD,MAAM,CAAC,QAAQ,CAAC,GAAG,CACjB,UAAU,EACV,wBAAwB,SAAS,4BAA4B,CAAC,CAAC,QAAQ,8BAA8B,CACtG,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,CAAC;QACN,+DAA+D;QAC/D,mEAAmE;QACnE,iEAAiE;QACjE,8DAA8D;QAC9D,iEAAiE;QACjE,mEAAmE;QACnE,gCAAgC;QAChC,QAAQ,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,CAAC,QAAQ,CAAC,GAAG,CACjB,UAAU,EACV,mDAAmD,CAAC,CAAC,QAAQ,kBAAkB,CAAC,CAAC,OAAO,+EAA+E,CACxK,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL;YACE,EAAE,EAAE,CAAC,CAAC,KAAK;YACX,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;YACxB,SAAS,EAAE,QAAQ;YACnB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,QAAQ,EAAE,GAAG;YACb,MAAM,EAAE,QAAQ;YAChB,iBAAiB,EAAE,EAAE;YACrB,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,EAAE;YACjB,uBAAuB,EAAE,EAAE;YAC3B,UAAU,EAAE,MAAM,CAAC,SAAS;YAC5B,aAAa,EAAE,EAAE;SAClB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI;SACR,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SACnE,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { type BundleManifest } from "../bundle.js";
1
2
  export interface SyncOptions {
2
3
  bundle: string;
3
4
  targetRepo: string;
@@ -14,4 +15,15 @@ export interface SyncResult {
14
15
  exitCode: number;
15
16
  }
16
17
  export declare function runSync(opts: SyncOptions, stdout?: (line: string) => void): Promise<SyncResult>;
18
+ /**
19
+ * If the bundle manifest declares a minimum sdd-cli version, verify the
20
+ * installed version satisfies it. Returns null on success or no
21
+ * declared minimum; returns a formatted error message on failure.
22
+ *
23
+ * Comparison is structural semver (major.minor.patch) — installed >=
24
+ * minimum at each segment. Pre-release identifiers (e.g. "0.14.0-rc.1")
25
+ * are stripped before comparison; the minimum field always declares a
26
+ * stable release version.
27
+ */
28
+ export declare function checkMinimumSddCliVersion(manifest: BundleManifest, installedOverride?: string): string | null;
17
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/sync/index.ts"],"names":[],"mappings":"AAyCA,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAID,wBAAsB,OAAO,CAC3B,IAAI,EAAE,WAAW,EACjB,MAAM,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAA2C,GACpE,OAAO,CAAC,UAAU,CAAC,CAmQrB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/sync/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAwC/D,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAID,wBAAsB,OAAO,CAC3B,IAAI,EAAE,WAAW,EACjB,MAAM,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAA2C,GACpE,OAAO,CAAC,UAAU,CAAC,CAsRrB;AA2BD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,cAAc,EACxB,iBAAiB,CAAC,EAAE,MAAM,GACzB,MAAM,GAAG,IAAI,CAUf"}
@@ -1,6 +1,7 @@
1
1
  import { createHash } from "node:crypto";
2
2
  import { access, readFile } from "node:fs/promises";
3
3
  import { loadBundle } from "../bundle.js";
4
+ import { getPackageVersion } from "../package-version.js";
4
5
  import { findBundle, hasForwardBase, pathToBundleMap, readLockFile, upsertBundle, writeLockFile, } from "../lock-file.js";
5
6
  import { REPO_KIND_FILE, isForwardBase, profileFromBundleName, repoKindFromProfile, writeRepoKind, } from "../repo-kind.js";
6
7
  import { join } from "node:path";
@@ -22,6 +23,20 @@ export async function runSync(opts, stdout = (line) => process.stdout.write(line
22
23
  stdout(section("Sync Method Baseline"));
23
24
  const bundle = await loadBundle(opts.bundle);
24
25
  try {
26
+ // Enforce minimum sdd-cli version declared by the bundle manifest.
27
+ // Bundles built before v0.13.2 omit the field; for those, no check
28
+ // applies. Forward-baseline bundles starting at v0.6.0 (sdd-method
29
+ // v0.9.0, schema relocation) declare a minimum so adopters whose
30
+ // installed sdd-cli predates the relocation cannot apply a bundle
31
+ // that depends on schema-from-sdd-cli rather than schema-from-bundle.
32
+ const minVersionError = checkMinimumSddCliVersion(bundle.manifest);
33
+ if (minVersionError !== null) {
34
+ stdout(fail(minVersionError));
35
+ return { exitCode: 1 };
36
+ }
37
+ if (bundle.manifest.minimumSddCliVersion) {
38
+ stdout(info(`sdd-cli ${getPackageVersion()} satisfies bundle minimum ${bundle.manifest.minimumSddCliVersion}`));
39
+ }
25
40
  const missing = await findMissingPayloadFiles(bundle.managedPaths, bundle.payloadDir);
26
41
  if (missing.length > 0) {
27
42
  stdout(fail(`Missing payload file listed in MANAGED_PATHS.txt: ${missing[0]}`));
@@ -210,6 +225,52 @@ async function exists(path) {
210
225
  return false;
211
226
  }
212
227
  }
228
+ /**
229
+ * If the bundle manifest declares a minimum sdd-cli version, verify the
230
+ * installed version satisfies it. Returns null on success or no
231
+ * declared minimum; returns a formatted error message on failure.
232
+ *
233
+ * Comparison is structural semver (major.minor.patch) — installed >=
234
+ * minimum at each segment. Pre-release identifiers (e.g. "0.14.0-rc.1")
235
+ * are stripped before comparison; the minimum field always declares a
236
+ * stable release version.
237
+ */
238
+ export function checkMinimumSddCliVersion(manifest, installedOverride) {
239
+ const required = manifest.minimumSddCliVersion;
240
+ if (!required || required.length === 0)
241
+ return null;
242
+ const installed = installedOverride ?? getPackageVersion();
243
+ if (versionAtLeast(installed, required))
244
+ return null;
245
+ return [
246
+ `Bundle ${manifest.bundleName} ${manifest.bundleVersion} requires sdd-cli >= ${required}`,
247
+ `but installed sdd-cli is ${installed}.`,
248
+ `Remediation: npm install -g @sdd-method/sdd-cli@^${required}`,
249
+ ].join(" ");
250
+ }
251
+ function versionAtLeast(installed, minimum) {
252
+ const i = parseSimpleSemver(installed);
253
+ const m = parseSimpleSemver(minimum);
254
+ if (i === null || m === null)
255
+ return false;
256
+ if (i.major !== m.major)
257
+ return i.major > m.major;
258
+ if (i.minor !== m.minor)
259
+ return i.minor > m.minor;
260
+ return i.patch >= m.patch;
261
+ }
262
+ function parseSimpleSemver(s) {
263
+ // Strip optional `v` prefix and any pre-release / build suffix.
264
+ const cleaned = s.replace(/^v/, "").replace(/[-+].*$/, "");
265
+ const m = /^(\d+)\.(\d+)\.(\d+)$/.exec(cleaned);
266
+ if (!m)
267
+ return null;
268
+ return {
269
+ major: parseInt(m[1], 10),
270
+ minor: parseInt(m[2], 10),
271
+ patch: parseInt(m[3], 10),
272
+ };
273
+ }
213
274
  async function tryReadFile(path) {
214
275
  try {
215
276
  await access(path);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/sync/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/sync/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sdd-method/sdd-cli",
3
- "version": "0.13.2",
4
- "description": "Method-layer CLI for SDD repository lifecycle — init, sync, validate, list, plan, generate-claude-md, mcp serve, catalogue {build,aggregate,validate,version}. v0.13.2 fixes the aggregator's sibling-vendored-schema cross-check to use semver range satisfaction against SCHEMA_COMPAT.catalogue_schema (^2.0.0) instead of strict equality — siblings vendored at lower minor versions inside the same major are now accepted, unblocking aggregation across federated cohorts where the canonical schema is ahead of the bundled schema. v0.13.0 ships the feature-tree.md bullet parser per sdd-method schema 2.2.0 + plan extract-feature-tree-bullets.md: application-product builders now emit features.csv rows with source: \"feature-tree\" from per-app feature-tree.md bullets, populating the previously-empty edge catalogues (persona_feature, journey_feature) for portfolio monoliths whose feature inventory lives in the bullet form. Adds the optional runway column on features.csv with adopter-owned controlled-vocabulary validation via feature-runway-vocabulary.yaml at the SDD root. v0.12.2 dedupes equivalent unmarked adopter PreToolUse entries on settings.json upsert. v0.12.0 extends the integration profileType enum to 11 values (per sdd-method ADR 0137) and fixes the init→sync conflict. v0.11.0 shipped the canonical catalogue surface per ADR 0134 + schema 2.1.0.",
3
+ "version": "0.14.1",
4
+ "description": "Method-layer CLI for SDD repository lifecycle — init, sync, validate, list, plan, generate-claude-md, mcp serve, catalogue {build,aggregate,validate,version}. v0.14.1 patches v0.14.0's domains-builder fix: products-builder now also clears domain_id for non-platform-profile rows even when manifest.domainId is declared. v0.14.0 stopped emitting umbrella domain rows but products.domain_id (and the applications.csv filtered view) still pointed at them, dangling at FK validation. Per ADR 0136 + schema description for products.domain_id, app/integration/support products do not have a primary domain — the builder now honours that statement regardless of manifest declaration, and emits an inferred finding when a manifest-declared value is overridden. v0.14.0 ships two post-v0.9.0-release fixes surfaced by the connect-cohort sync: (1) sync now enforces minimum_sdd_cli_version declared by bundle manifests — previously the orchestration check existed only in the shell sync script and was a no-op when adopters used `sdd-cli sync`, leaving the safety net for stale-CLI scenarios silently absent; (2) per ADR 0136 (App and Integration Products Do Not Belong to a Primary Domain), the domains.ts catalogue builder now skips row emission for non-platform-profile SDDs — application-product and integration-product SDDs that have a docs/domains/<umbrella>/ subdirectory as a structural-organisation convention no longer emit a member-declaration row that collides on PK at aggregation against the canonical platform-profile contribution. v0.13.2 fixed the aggregator's sibling-vendored-schema cross-check to use semver range satisfaction against SCHEMA_COMPAT.catalogue_schema (^2.0.0) instead of strict equality — siblings vendored at lower minor versions inside the same major are now accepted, unblocking aggregation across federated cohorts where the canonical schema is ahead of the bundled schema. v0.13.0 ships the feature-tree.md bullet parser per sdd-method schema 2.2.0 + plan extract-feature-tree-bullets.md: application-product builders now emit features.csv rows with source: \"feature-tree\" from per-app feature-tree.md bullets, populating the previously-empty edge catalogues (persona_feature, journey_feature) for portfolio monoliths whose feature inventory lives in the bullet form. Adds the optional runway column on features.csv with adopter-owned controlled-vocabulary validation via feature-runway-vocabulary.yaml at the SDD root. v0.12.2 dedupes equivalent unmarked adopter PreToolUse entries on settings.json upsert. v0.12.0 extends the integration profileType enum to 11 values (per sdd-method ADR 0137) and fixes the init→sync conflict. v0.11.0 shipped the canonical catalogue surface per ADR 0134 + schema 2.1.0.",
5
5
  "keywords": [
6
6
  "sdd-method",
7
7
  "sdd",