adr-kit 0.12.0 → 0.14.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 (96) hide show
  1. package/README.md +62 -209
  2. package/README.zh.md +54 -174
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +40 -25
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/archive.d.ts +2 -0
  7. package/dist/commands/archive.d.ts.map +1 -0
  8. package/dist/commands/archive.js +62 -0
  9. package/dist/commands/archive.js.map +1 -0
  10. package/dist/commands/completion.d.ts.map +1 -1
  11. package/dist/commands/completion.js +5 -4
  12. package/dist/commands/completion.js.map +1 -1
  13. package/dist/commands/{accept.d.ts → implement.d.ts} +2 -2
  14. package/dist/commands/implement.d.ts.map +1 -0
  15. package/dist/commands/implement.js +42 -0
  16. package/dist/commands/implement.js.map +1 -0
  17. package/dist/commands/init.d.ts.map +1 -1
  18. package/dist/commands/init.js +5 -3
  19. package/dist/commands/init.js.map +1 -1
  20. package/dist/commands/instructions.d.ts.map +1 -1
  21. package/dist/commands/instructions.js +24 -81
  22. package/dist/commands/instructions.js.map +1 -1
  23. package/dist/commands/list.d.ts.map +1 -1
  24. package/dist/commands/list.js +9 -14
  25. package/dist/commands/list.js.map +1 -1
  26. package/dist/commands/propose.d.ts.map +1 -1
  27. package/dist/commands/propose.js +9 -10
  28. package/dist/commands/propose.js.map +1 -1
  29. package/dist/commands/{decide.d.ts → record.d.ts} +2 -2
  30. package/dist/commands/record.d.ts.map +1 -0
  31. package/dist/commands/{decide.js → record.js} +6 -6
  32. package/dist/commands/{decide.js.map → record.js.map} +1 -1
  33. package/dist/commands/reject.d.ts +1 -1
  34. package/dist/commands/reject.d.ts.map +1 -1
  35. package/dist/commands/reject.js +24 -8
  36. package/dist/commands/reject.js.map +1 -1
  37. package/dist/commands/show.d.ts.map +1 -1
  38. package/dist/commands/show.js +2 -16
  39. package/dist/commands/show.js.map +1 -1
  40. package/dist/commands/status.d.ts.map +1 -1
  41. package/dist/commands/status.js +6 -17
  42. package/dist/commands/status.js.map +1 -1
  43. package/dist/commands/supersede.d.ts.map +1 -1
  44. package/dist/commands/supersede.js +44 -10
  45. package/dist/commands/supersede.js.map +1 -1
  46. package/dist/commands/update.d.ts.map +1 -1
  47. package/dist/commands/update.js +4 -1
  48. package/dist/commands/update.js.map +1 -1
  49. package/dist/commands/validate.d.ts +1 -1
  50. package/dist/commands/validate.d.ts.map +1 -1
  51. package/dist/commands/validate.js +11 -3
  52. package/dist/commands/validate.js.map +1 -1
  53. package/dist/core/adr.d.ts +22 -20
  54. package/dist/core/adr.d.ts.map +1 -1
  55. package/dist/core/adr.js +97 -14
  56. package/dist/core/adr.js.map +1 -1
  57. package/dist/core/archive-seal.d.ts +48 -0
  58. package/dist/core/archive-seal.d.ts.map +1 -0
  59. package/dist/core/archive-seal.js +122 -0
  60. package/dist/core/archive-seal.js.map +1 -0
  61. package/dist/core/cli-options.d.ts +2 -2
  62. package/dist/core/cli-options.d.ts.map +1 -1
  63. package/dist/core/cli-options.js +8 -6
  64. package/dist/core/cli-options.js.map +1 -1
  65. package/dist/core/config.d.ts +1 -1
  66. package/dist/core/git.d.ts +17 -0
  67. package/dist/core/git.d.ts.map +1 -1
  68. package/dist/core/git.js +50 -0
  69. package/dist/core/git.js.map +1 -1
  70. package/dist/core/graph-html.js +5 -5
  71. package/dist/core/graph-html.js.map +1 -1
  72. package/dist/core/graph.d.ts +2 -1
  73. package/dist/core/graph.d.ts.map +1 -1
  74. package/dist/core/graph.js +9 -4
  75. package/dist/core/graph.js.map +1 -1
  76. package/dist/core/repository.d.ts +3 -11
  77. package/dist/core/repository.d.ts.map +1 -1
  78. package/dist/core/repository.js +52 -136
  79. package/dist/core/repository.js.map +1 -1
  80. package/dist/core/templates.d.ts +6 -7
  81. package/dist/core/templates.d.ts.map +1 -1
  82. package/dist/core/templates.js +11 -12
  83. package/dist/core/templates.js.map +1 -1
  84. package/dist/core/tool-integrations.d.ts +24 -0
  85. package/dist/core/tool-integrations.d.ts.map +1 -1
  86. package/dist/core/tool-integrations.js +129 -423
  87. package/dist/core/tool-integrations.js.map +1 -1
  88. package/dist/core/validate.d.ts +20 -6
  89. package/dist/core/validate.d.ts.map +1 -1
  90. package/dist/core/validate.js +302 -90
  91. package/dist/core/validate.js.map +1 -1
  92. package/package.json +1 -1
  93. package/dist/commands/accept.d.ts.map +0 -1
  94. package/dist/commands/accept.js +0 -42
  95. package/dist/commands/accept.js.map +0 -1
  96. package/dist/commands/decide.d.ts.map +0 -1
@@ -1,42 +0,0 @@
1
- import { existsSync } from 'node:fs';
2
- import { join } from 'node:path';
3
- import { requireRoot } from '../core/config.js';
4
- import { gitHead } from '../core/git.js';
5
- import { folderPath, nextDecisionNumber, removeRecord, resolveDraft, writeRecord } from '../core/repository.js';
6
- import { droppedSections, proposalToDecision } from '../core/templates.js';
7
- import { formatIssues, validateDraft } from '../core/validate.js';
8
- /**
9
- * `decidedBy` is the declaration the caller made for the promoted decision:
10
- * the CLI cannot observe who chose, so the value travels in rather than being
11
- * inferred. Promotion is also where the value enters the durable record.
12
- */
13
- export function acceptCommand(query, cwd, decidedBy, raisedBy) {
14
- const root = requireRoot(cwd);
15
- const draft = resolveDraft(root, query);
16
- if (/^\d+\s+/.test(draft.title)) {
17
- throw new Error('proposal title must not start with a number; ADR Kit assigns decision numbers');
18
- }
19
- const issues = validateDraft(root, draft);
20
- if (issues.length > 0) {
21
- throw new Error(`draft is not ready; fix it before accepting:\n${formatIssues(issues)}`);
22
- }
23
- const number = nextDecisionNumber(root);
24
- const slug = draft.fileName.replace(/^\d{4}-\d{2}-\d{2}-/, '').replace(/\.md$/, '');
25
- const fileName = `${number}-${slug}.md`;
26
- const path = join(folderPath(root, 'decisions'), fileName);
27
- if (existsSync(path)) {
28
- throw new Error(`decision already exists: adr/decisions/${fileName}`);
29
- }
30
- const content = proposalToDecision(draft, number, gitHead(root), decidedBy, raisedBy);
31
- writeRecord(root, 'decisions', fileName, content);
32
- removeRecord(draft);
33
- let output = `accepted adr/.drafts/${draft.fileName} as adr/decisions/${fileName}`;
34
- const dropped = droppedSections(draft);
35
- if (dropped.length > 0) {
36
- output += `\nwarning: dropped section(s) with no place in an accepted decision: ${dropped
37
- .map((heading) => `## ${heading}`)
38
- .join(', ')}`;
39
- }
40
- return output;
41
- }
42
- //# sourceMappingURL=accept.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accept.js","sourceRoot":"","sources":["../../src/commands/accept.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAChH,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAElE;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,KAAa,EACb,GAAW,EACX,SAAoB,EACpB,QAAkB;IAElB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAC;IACnG,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,iDAAiD,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3F,CAAC;IAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACpF,MAAM,QAAQ,GAAG,GAAG,MAAM,IAAI,IAAI,KAAK,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3D,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACtF,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,YAAY,CAAC,KAAK,CAAC,CAAC;IACpB,IAAI,MAAM,GAAG,wBAAwB,KAAK,CAAC,QAAQ,qBAAqB,QAAQ,EAAE,CAAC;IACnF,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,wEAAwE,OAAO;aACtF,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,OAAO,EAAE,CAAC;aACjC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAClB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"decide.d.ts","sourceRoot":"","sources":["../../src/commands/decide.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO1D;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,GACjB,MAAM,CAyBR"}