@sdd-method/author-cli 0.1.0 → 0.3.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.
Files changed (73) hide show
  1. package/NOTICE +1 -1
  2. package/dist/author-program.js +1 -1
  3. package/dist/lib/api-surface/__fixtures__/serverless-repo/serverless/serverless.yml +4 -4
  4. package/dist/lib/api-surface/analyzers/serverless.js +1 -1
  5. package/dist/lib/api-surface/analyzers/spring.js +1 -1
  6. package/dist/lib/briefing/render.js +1 -2
  7. package/dist/lib/briefing/variables.js +1 -2
  8. package/dist/lib/catalogue/archetype/wireframe.js +1 -1
  9. package/dist/lib/catalogue/build.js +17 -23
  10. package/dist/lib/catalogue/builders/application-conformance-coverage.js +1 -1
  11. package/dist/lib/catalogue/builders/c4-components.js +4 -5
  12. package/dist/lib/catalogue/builders/c4-containers.js +4 -4
  13. package/dist/lib/catalogue/builders/c4-external-systems.js +1 -1
  14. package/dist/lib/catalogue/builders/c4-l1-candidates.js +2 -2
  15. package/dist/lib/catalogue/builders/capabilities.js +2 -2
  16. package/dist/lib/catalogue/builders/capability-edges.js +4 -4
  17. package/dist/lib/catalogue/builders/capability-spec-walker.js +3 -3
  18. package/dist/lib/catalogue/builders/container-dependency.js +19 -20
  19. package/dist/lib/catalogue/builders/contracts.js +5 -6
  20. package/dist/lib/catalogue/builders/data-store-mapping.js +4 -4
  21. package/dist/lib/catalogue/builders/edge-label-merge.js +2 -2
  22. package/dist/lib/catalogue/builders/entities-manifest.js +1 -1
  23. package/dist/lib/catalogue/builders/entities-mermaid.js +3 -3
  24. package/dist/lib/catalogue/builders/entity-slug.js +11 -12
  25. package/dist/lib/catalogue/builders/event-catalog-walker.js +3 -3
  26. package/dist/lib/catalogue/builders/evidence-class.js +2 -2
  27. package/dist/lib/catalogue/builders/external-system-exemption.js +1 -1
  28. package/dist/lib/catalogue/builders/feature-contract.js +1 -3
  29. package/dist/lib/catalogue/builders/feature-grounding.js +1 -2
  30. package/dist/lib/catalogue/builders/feature-groups.js +0 -1
  31. package/dist/lib/catalogue/builders/feature-subscription-channels.js +2 -3
  32. package/dist/lib/catalogue/builders/feature-tree-walker.js +1 -1
  33. package/dist/lib/catalogue/builders/features.js +3 -4
  34. package/dist/lib/catalogue/builders/glossary-xref.js +1 -1
  35. package/dist/lib/catalogue/builders/persona-c4system.js +7 -7
  36. package/dist/lib/catalogue/builders/persona-container.js +14 -14
  37. package/dist/lib/catalogue/builders/personas.js +1 -2
  38. package/dist/lib/catalogue/builders/product-platform-dependencies.js +2 -2
  39. package/dist/lib/catalogue/builders/quality-scores.js +1 -1
  40. package/dist/lib/catalogue/builders/repositories.js +2 -2
  41. package/dist/lib/catalogue/builders/screen-tree.js +2 -2
  42. package/dist/lib/catalogue/builders/screens.js +3 -4
  43. package/dist/lib/catalogue/builders/system-external-dependency.js +7 -7
  44. package/dist/lib/catalogue/canonical-schema.yaml +23 -23
  45. package/dist/lib/catalogue/coverage-predicates.js +4 -4
  46. package/dist/lib/catalogue/coverage-run.js +1 -1
  47. package/dist/lib/catalogue/dedupe-keyed-tables.js +0 -0
  48. package/dist/lib/catalogue/ext-id.js +4 -4
  49. package/dist/lib/catalogue/feature-grounding-aliases-loader.js +1 -1
  50. package/dist/lib/catalogue/finding-identity.js +3 -3
  51. package/dist/lib/catalogue/freshness.js +1 -1
  52. package/dist/lib/catalogue/manifest-loader.js +2 -2
  53. package/dist/lib/catalogue/scaffold-delta.js +1 -1
  54. package/dist/lib/catalogue/schema-compat.js +1 -2
  55. package/dist/lib/catalogue/scores-coverage.js +1 -1
  56. package/dist/lib/catalogue/screen-validation-loader.js +1 -1
  57. package/dist/lib/catalogue/service-contract-aliases-loader.js +1 -1
  58. package/dist/lib/catalogue/staleness-verdicts.js +2 -2
  59. package/dist/lib/catalogue/traceability-loader.js +2 -3
  60. package/dist/lib/conformance/index.js +29 -8
  61. package/dist/lib/lock-file.js +11 -1
  62. package/dist/lib/package-version.js +1 -1
  63. package/dist/lib/snapshot/manifest.js +1 -1
  64. package/dist/lib/snapshot/targets.js +2 -2
  65. package/dist/lib/validate/index.js +1 -1
  66. package/dist/lib/validate/plan.js +7 -4
  67. package/dist/lib/validate/yaml-parse.js +1 -1
  68. package/dist/maintain-version.json +2 -2
  69. package/dist/verbs/plan.js +3 -3
  70. package/dist/verbs/validate.js +6 -1
  71. package/dist/verify-program.js +1 -1
  72. package/dist/verify-version.json +2 -2
  73. package/package.json +2 -6
@@ -10,7 +10,7 @@
10
10
  // with it certifies exactly the corruption a line-surgery transformer
11
11
  // produces. `yaml` v2 refuses duplicate keys (DUPLICATE_KEY) and the other
12
12
  // malformations a lenient parse glosses — e.g. a `: ` inside an unquoted
13
- // scalar (`path: (none — tel: URL)`), which no pattern rule catches.
13
+ // scalar (`path: (none — see: docs)`), which no pattern rule catches.
14
14
  //
15
15
  // Scope: the YAML files git TRACKS (`*.yaml`, `*.yml`) — the repo's sources,
16
16
  // not build output or dependencies. Outside a git work tree there is no
@@ -1,4 +1,4 @@
1
1
  {
2
- "version": "0.2.0",
3
- "built_against_sdd_cli": "1.43.0"
2
+ "version": "0.4.0",
3
+ "built_against_sdd_cli": "1.45.0"
4
4
  }
@@ -5,9 +5,9 @@ export function registerPlan(program) {
5
5
  .command("plan")
6
6
  .description("Scaffold a plan markdown file from a method-distributed template. Currently supports --pilot for pilot-kickoff plans; future subcommands may add --initiative / --migration.")
7
7
  .option("--pilot", "scaffold a pilot-kickoff plan (requires --service, --capability, --domain)", false)
8
- .option("--service <name>", "service / pilot name, e.g. party-management")
9
- .option("--capability <name>", "capability under test, e.g. organization-management")
10
- .option("--domain <name>", "domain the capability belongs to, e.g. party")
8
+ .option("--service <name>", "service / pilot name, e.g. order-service")
9
+ .option("--capability <name>", "capability under test, e.g. order-management")
10
+ .option("--domain <name>", "domain the capability belongs to, e.g. orders")
11
11
  .option("--workspace-root <path>", "SDD root (defaults to cwd)", resolvePathOption)
12
12
  .option("--output <path>", "destination file (defaults to content/product/plans/{service}-pilot-kickoff.md)")
13
13
  .option("--dry-run", "print rendered output to stdout without writing", false)
@@ -14,7 +14,12 @@ export function registerValidate(program) {
14
14
  .option("--strict", "treat warnings as failures")
15
15
  .option("--list", "print the method-managed validation job for this repo's profile as JSON (the plan every CI executor runs, the Dagger module included) and run nothing")
16
16
  .option("--profile <profile>", "with --list: the profile to list, instead of reading .sdd-repo-kind (platform | application | integration)")
17
+ .option("--catalogue-rebuild", "with --list: the pipeline rebuilt the catalogues on this run (M-ADR 0220 §4.4), so the catalogue freshness step gates instead of advising")
17
18
  .action(async (opts) => {
19
+ if (opts.catalogueRebuild === true && opts.list !== true) {
20
+ process.stderr.write("--catalogue-rebuild only applies with --list\n");
21
+ process.exit(2);
22
+ }
18
23
  if (opts.list === true) {
19
24
  let profile;
20
25
  if (opts.profile !== undefined) {
@@ -32,7 +37,7 @@ export function registerValidate(program) {
32
37
  }
33
38
  profile = profileFromRepoKind(kind);
34
39
  }
35
- process.stdout.write(JSON.stringify({ profile, steps: methodValidationPlan(profile) }, null, 2) + "\n");
40
+ process.stdout.write(JSON.stringify({ profile, steps: methodValidationPlan(profile, { catalogueRebuild: opts.catalogueRebuild === true }) }, null, 2) + "\n");
36
41
  return;
37
42
  }
38
43
  const { exitCode } = await runValidate({
@@ -29,7 +29,7 @@ import { registerCatalogueBaselineCheck, registerCatalogueImpact, registerCatalo
29
29
  import { registerList } from "./verbs/list.js";
30
30
  import { registerPackValidate } from "./verbs/pack-validate.js";
31
31
  import { registerValidate } from "./verbs/validate.js";
32
- const SPEC_URL = "https://github.com/tomfosteruk/sdd-method/blob/main/docs/method/cli/sdd-cli-specification.md";
32
+ const SPEC_URL = "docs/method/cli/sdd-cli-specification.md (in the method distribution)";
33
33
  /** The full surface, as `<verb>` or `<verb> <subcommand>`. Asserted by test. */
34
34
  export const VERIFY_SURFACE = [
35
35
  "validate",
@@ -1,4 +1,4 @@
1
1
  {
2
- "version": "1.2.0",
3
- "built_against_sdd_cli": "1.43.0"
2
+ "version": "1.4.0",
3
+ "built_against_sdd_cli": "1.45.0"
4
4
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sdd-method/author-cli",
3
- "version": "0.1.0",
4
- "sddCliVersion": "1.43.0",
3
+ "version": "0.3.0",
4
+ "sddCliVersion": "1.45.0",
5
5
  "description": "Re-author one SDD's content — scaffold, plan, contracts, conformance, api-surface, snapshots, briefings, catalogue check — plus every read-only verify verb. Ships only the code those verbs reach; it cannot sync the baseline or rebuild the catalogues. Maintenance is in @sdd-method/maintain-cli, administration in @sdd-method/sdd-cli.",
6
6
  "license": "Apache-2.0",
7
7
  "type": "module",
@@ -17,10 +17,6 @@
17
17
  "zod": "^4.3.6",
18
18
  "@duckdb/node-api": "^1.5.5-r.3"
19
19
  },
20
- "repository": {
21
- "type": "git",
22
- "url": "git+https://github.com/tomfosteruk/sdd-cli.git"
23
- },
24
20
  "publishConfig": {
25
21
  "access": "public"
26
22
  },