@theglitchking/hit-em-with-the-docs 2.6.0 → 2.7.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.
Files changed (60) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +131 -3
  4. package/commands/archive.md +43 -0
  5. package/commands/help.md +10 -1
  6. package/dist/action/core/archive/candidates.d.ts +38 -0
  7. package/dist/action/core/archive/candidates.d.ts.map +1 -0
  8. package/dist/action/core/archive/links.d.ts +22 -0
  9. package/dist/action/core/archive/links.d.ts.map +1 -0
  10. package/dist/action/core/archive/manage.d.ts +50 -0
  11. package/dist/action/core/archive/manage.d.ts.map +1 -0
  12. package/dist/action/core/audit/auditor.d.ts.map +1 -1
  13. package/dist/action/core/metadata/schema.d.ts +73 -0
  14. package/dist/action/core/metadata/schema.d.ts.map +1 -1
  15. package/dist/action/generators/regenerate.d.ts +14 -3
  16. package/dist/action/generators/regenerate.d.ts.map +1 -1
  17. package/dist/action/generators/scaffold.d.ts.map +1 -1
  18. package/dist/action/index.d.ts +3 -0
  19. package/dist/action/index.d.ts.map +1 -1
  20. package/dist/action/index.js +1 -1
  21. package/dist/action/utils/config.d.ts +72 -0
  22. package/dist/action/utils/config.d.ts.map +1 -1
  23. package/dist/cli/index.js +153 -4
  24. package/dist/cli/index.js.map +1 -1
  25. package/dist/core/archive/candidates.d.ts +38 -0
  26. package/dist/core/archive/candidates.d.ts.map +1 -0
  27. package/dist/core/archive/candidates.js +113 -0
  28. package/dist/core/archive/candidates.js.map +1 -0
  29. package/dist/core/archive/links.d.ts +22 -0
  30. package/dist/core/archive/links.d.ts.map +1 -0
  31. package/dist/core/archive/links.js +33 -0
  32. package/dist/core/archive/links.js.map +1 -0
  33. package/dist/core/archive/manage.d.ts +50 -0
  34. package/dist/core/archive/manage.d.ts.map +1 -0
  35. package/dist/core/archive/manage.js +163 -0
  36. package/dist/core/archive/manage.js.map +1 -0
  37. package/dist/core/audit/auditor.d.ts.map +1 -1
  38. package/dist/core/audit/auditor.js +14 -0
  39. package/dist/core/audit/auditor.js.map +1 -1
  40. package/dist/core/metadata/schema.d.ts +73 -0
  41. package/dist/core/metadata/schema.d.ts.map +1 -1
  42. package/dist/core/metadata/schema.js +14 -1
  43. package/dist/core/metadata/schema.js.map +1 -1
  44. package/dist/generators/regenerate.d.ts +14 -3
  45. package/dist/generators/regenerate.d.ts.map +1 -1
  46. package/dist/generators/regenerate.js +99 -16
  47. package/dist/generators/regenerate.js.map +1 -1
  48. package/dist/generators/scaffold.d.ts.map +1 -1
  49. package/dist/generators/scaffold.js +37 -14
  50. package/dist/generators/scaffold.js.map +1 -1
  51. package/dist/index.d.ts +3 -0
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +4 -0
  54. package/dist/index.js.map +1 -1
  55. package/dist/utils/config.d.ts +72 -0
  56. package/dist/utils/config.d.ts.map +1 -1
  57. package/dist/utils/config.js +20 -0
  58. package/dist/utils/config.js.map +1 -1
  59. package/package.json +1 -1
  60. package/templates/claude/CLAUDE.md +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../../../src/core/archive/links.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,MAAM,WAAW,WAAW;IAC1B,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,WAAW,EAAE,CAAC,CAUxB;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAKrE"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Inbound-link detection for the archival process.
3
+ *
4
+ * Archiving a doc that active docs still link to would turn live references
5
+ * into dead ones — exactly the failure archival must prevent. This reuses the
6
+ * existing link graph (which already excludes `archive/`, since it scans via
7
+ * `findMarkdownFiles`) to find every active doc that links to a target.
8
+ */
9
+ import { relative } from 'path';
10
+ import { buildLinkGraph } from '../links/tracker.js';
11
+ /**
12
+ * Find all active (non-archived) docs that link to `targetRelPath`
13
+ * (a path relative to `docsPath`). Returns one entry per inbound link.
14
+ */
15
+ export async function findInboundLinks(docsPath, targetRelPath) {
16
+ const normalizedTarget = targetRelPath.replace(/\\/g, '/');
17
+ const graph = await buildLinkGraph(docsPath);
18
+ return graph.edges
19
+ .filter((e) => e.target.replace(/\\/g, '/') === normalizedTarget)
20
+ .map((e) => ({
21
+ source: e.source.replace(/\\/g, '/'),
22
+ lineNumber: e.lineNumber,
23
+ linkText: e.linkText,
24
+ }));
25
+ }
26
+ /** Normalize an absolute-or-relative file arg to a docs-relative POSIX path. */
27
+ export function toDocsRelative(docsPath, file) {
28
+ // If `file` is already relative and doesn't resolve under docsPath, treat it
29
+ // as docs-relative as-is; otherwise compute the relative path.
30
+ const rel = file.includes(docsPath) ? relative(docsPath, file) : file;
31
+ return rel.replace(/\\/g, '/').replace(/^\.\//, '');
32
+ }
33
+ //# sourceMappingURL=links.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"links.js","sourceRoot":"","sources":["../../../src/core/archive/links.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AASrD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgB,EAChB,aAAqB;IAErB,MAAM,gBAAgB,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC7C,OAAO,KAAK,CAAC,KAAK;SACf,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,gBAAgB,CAAC;SAChE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;QACpC,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,QAAQ,EAAE,CAAC,CAAC,QAAQ;KACrB,CAAC,CAAC,CAAC;AACR,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,cAAc,CAAC,QAAgB,EAAE,IAAY;IAC3D,6EAA6E;IAC7E,+DAA+D;IAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Archival executor: the deterministic WRITER behind `hewtd archive` /
3
+ * `hewtd unarchive`.
4
+ *
5
+ * Moves a doc into `archive/<domain-subpath>/…` (and back), preserving git
6
+ * history via `git mv` where possible, stamping reversible lifecycle metadata,
7
+ * and regenerating indexes so the doc cleanly leaves (or rejoins) the active
8
+ * corpus. Non-destructive and reversible by design: `archived_from` records the
9
+ * exact restore path.
10
+ */
11
+ import { type InboundLink } from './links.js';
12
+ export interface ArchiveDocInput {
13
+ projectRoot: string;
14
+ docsPath: string;
15
+ /** Doc to archive — docs-relative (e.g. `api/old.md`) or absolute. */
16
+ file: string;
17
+ reason?: string;
18
+ force?: boolean;
19
+ dryRun?: boolean;
20
+ /** Override "today" (YYYY-MM-DD) for deterministic tests. */
21
+ today?: string;
22
+ }
23
+ export interface ArchiveDocResult {
24
+ ok: boolean;
25
+ errors: string[];
26
+ action: 'archived' | 'dry_run' | 'blocked' | 'rejected';
27
+ from?: string;
28
+ to?: string;
29
+ moveMethod?: 'git' | 'fs';
30
+ /** Active docs that link to the target (the link guard). */
31
+ inboundLinks: InboundLink[];
32
+ }
33
+ export declare function archiveDoc(input: ArchiveDocInput): Promise<ArchiveDocResult>;
34
+ export interface UnarchiveDocInput {
35
+ projectRoot: string;
36
+ docsPath: string;
37
+ /** Archived doc — docs-relative (e.g. `archive/api/old.md`) or absolute. */
38
+ file: string;
39
+ dryRun?: boolean;
40
+ }
41
+ export interface UnarchiveDocResult {
42
+ ok: boolean;
43
+ errors: string[];
44
+ action: 'unarchived' | 'dry_run' | 'rejected';
45
+ from?: string;
46
+ to?: string;
47
+ moveMethod?: 'git' | 'fs';
48
+ }
49
+ export declare function unarchiveDoc(input: UnarchiveDocInput): Promise<UnarchiveDocResult>;
50
+ //# sourceMappingURL=manage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage.d.ts","sourceRoot":"","sources":["../../../src/core/archive/manage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,OAAO,EAAoC,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAsDhF,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,4DAA4D;IAC5D,YAAY,EAAE,WAAW,EAAE,CAAC;CAC7B;AAED,wBAAsB,UAAU,CAC9B,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,gBAAgB,CAAC,CAgE3B;AAMD,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,YAAY,GAAG,SAAS,GAAG,UAAU,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAsD7B"}
@@ -0,0 +1,163 @@
1
+ /**
2
+ * Archival executor: the deterministic WRITER behind `hewtd archive` /
3
+ * `hewtd unarchive`.
4
+ *
5
+ * Moves a doc into `archive/<domain-subpath>/…` (and back), preserving git
6
+ * history via `git mv` where possible, stamping reversible lifecycle metadata,
7
+ * and regenerating indexes so the doc cleanly leaves (or rejoins) the active
8
+ * corpus. Non-destructive and reversible by design: `archived_from` records the
9
+ * exact restore path.
10
+ */
11
+ import { execFileSync } from 'child_process';
12
+ import { mkdir, readFile, writeFile, rename, stat } from 'fs/promises';
13
+ import { dirname, join } from 'path';
14
+ import { parseFrontmatter, setFrontmatter } from '../../utils/frontmatter.js';
15
+ import { formatDate } from '../metadata/generator.js';
16
+ import { regenerateIndexes } from '../../generators/regenerate.js';
17
+ import { ARCHIVE_DIR } from '../../utils/glob.js';
18
+ import { findInboundLinks, toDocsRelative } from './links.js';
19
+ async function exists(p) {
20
+ try {
21
+ await stat(p);
22
+ return true;
23
+ }
24
+ catch {
25
+ return false;
26
+ }
27
+ }
28
+ /** True if `projectRoot` is inside a git work tree. */
29
+ function isGitRepo(projectRoot) {
30
+ try {
31
+ execFileSync('git', ['rev-parse', '--is-inside-work-tree'], {
32
+ cwd: projectRoot,
33
+ stdio: 'ignore',
34
+ });
35
+ return true;
36
+ }
37
+ catch {
38
+ return false;
39
+ }
40
+ }
41
+ /**
42
+ * Move a file, preferring `git mv` (history-preserving) and falling back to a
43
+ * plain fs rename when not in a git repo or the file is untracked. Returns the
44
+ * method used.
45
+ */
46
+ async function moveFile(projectRoot, fromAbs, toAbs) {
47
+ await mkdir(dirname(toAbs), { recursive: true });
48
+ if (isGitRepo(projectRoot)) {
49
+ try {
50
+ execFileSync('git', ['mv', '-f', fromAbs, toAbs], {
51
+ cwd: projectRoot,
52
+ stdio: 'ignore',
53
+ });
54
+ return 'git';
55
+ }
56
+ catch {
57
+ // untracked file (or other git mv refusal) → fall through to fs move
58
+ }
59
+ }
60
+ await rename(fromAbs, toAbs);
61
+ return 'fs';
62
+ }
63
+ export async function archiveDoc(input) {
64
+ const { projectRoot, docsPath, reason, force = false, dryRun = false } = input;
65
+ const today = input.today ?? formatDate(new Date());
66
+ const errors = [];
67
+ const fromRel = toDocsRelative(docsPath, input.file);
68
+ if (!fromRel.endsWith('.md')) {
69
+ errors.push(`Not a markdown file: ${fromRel}`);
70
+ return { ok: false, errors, action: 'rejected', inboundLinks: [] };
71
+ }
72
+ if (fromRel === `${ARCHIVE_DIR}/` || fromRel.startsWith(`${ARCHIVE_DIR}/`)) {
73
+ errors.push(`"${fromRel}" is already under ${ARCHIVE_DIR}/.`);
74
+ return { ok: false, errors, action: 'rejected', inboundLinks: [] };
75
+ }
76
+ const fromAbs = join(docsPath, fromRel);
77
+ if (!(await exists(fromAbs))) {
78
+ errors.push(`File not found: ${fromRel}`);
79
+ return { ok: false, errors, action: 'rejected', inboundLinks: [] };
80
+ }
81
+ const toRel = `${ARCHIVE_DIR}/${fromRel}`;
82
+ const toAbs = join(docsPath, toRel);
83
+ // Link guard: refuse by default if active docs link to this doc.
84
+ const inboundLinks = await findInboundLinks(docsPath, fromRel);
85
+ if (inboundLinks.length > 0 && !force && !dryRun) {
86
+ errors.push(`${inboundLinks.length} active doc(s) link to ${fromRel}. ` +
87
+ `Fix those links or pass --force.`);
88
+ return { ok: false, errors, action: 'blocked', from: fromRel, to: toRel, inboundLinks };
89
+ }
90
+ if (dryRun) {
91
+ return { ok: true, errors, action: 'dry_run', from: fromRel, to: toRel, inboundLinks };
92
+ }
93
+ // Stamp lifecycle metadata, then move (git mv preserves history).
94
+ const raw = await readFile(fromAbs, 'utf-8');
95
+ const { data } = parseFrontmatter(raw);
96
+ const stamped = {
97
+ ...data,
98
+ status: 'archived',
99
+ archived_on: today,
100
+ archived_from: fromRel,
101
+ };
102
+ if (reason)
103
+ stamped.archived_reason = reason;
104
+ const moveMethod = await moveFile(projectRoot, fromAbs, toAbs);
105
+ await writeFile(toAbs, setFrontmatter(raw, stamped), 'utf-8');
106
+ if (moveMethod === 'git') {
107
+ try {
108
+ execFileSync('git', ['add', toAbs], { cwd: projectRoot, stdio: 'ignore' });
109
+ }
110
+ catch {
111
+ /* staging is best-effort */
112
+ }
113
+ }
114
+ // Doc left its domain folder → refresh indexes so it drops out.
115
+ await regenerateIndexes({ docsPath, silent: true });
116
+ return { ok: true, errors, action: 'archived', from: fromRel, to: toRel, moveMethod, inboundLinks };
117
+ }
118
+ export async function unarchiveDoc(input) {
119
+ const { projectRoot, docsPath, dryRun = false } = input;
120
+ const errors = [];
121
+ const fromRel = toDocsRelative(docsPath, input.file);
122
+ if (!fromRel.startsWith(`${ARCHIVE_DIR}/`)) {
123
+ errors.push(`"${fromRel}" is not under ${ARCHIVE_DIR}/ — nothing to unarchive.`);
124
+ return { ok: false, errors, action: 'rejected' };
125
+ }
126
+ const fromAbs = join(docsPath, fromRel);
127
+ if (!(await exists(fromAbs))) {
128
+ errors.push(`File not found: ${fromRel}`);
129
+ return { ok: false, errors, action: 'rejected' };
130
+ }
131
+ const raw = await readFile(fromAbs, 'utf-8');
132
+ const { data } = parseFrontmatter(raw);
133
+ // Restore path: prefer the recorded archived_from, else strip the archive/ prefix.
134
+ const toRel = typeof data.archived_from === 'string' && data.archived_from.length > 0
135
+ ? data.archived_from
136
+ : fromRel.slice(`${ARCHIVE_DIR}/`.length);
137
+ const toAbs = join(docsPath, toRel);
138
+ if (await exists(toAbs)) {
139
+ errors.push(`Restore target already exists: ${toRel}. Move or remove it first.`);
140
+ return { ok: false, errors, action: 'rejected', from: fromRel, to: toRel };
141
+ }
142
+ if (dryRun) {
143
+ return { ok: true, errors, action: 'dry_run', from: fromRel, to: toRel };
144
+ }
145
+ // Strip the archival stamp, restore to active.
146
+ const restored = { ...data, status: 'active' };
147
+ delete restored.archived_on;
148
+ delete restored.archived_from;
149
+ delete restored.archived_reason;
150
+ const moveMethod = await moveFile(projectRoot, fromAbs, toAbs);
151
+ await writeFile(toAbs, setFrontmatter(raw, restored), 'utf-8');
152
+ if (moveMethod === 'git') {
153
+ try {
154
+ execFileSync('git', ['add', toAbs], { cwd: projectRoot, stdio: 'ignore' });
155
+ }
156
+ catch {
157
+ /* best-effort */
158
+ }
159
+ }
160
+ await regenerateIndexes({ docsPath, silent: true });
161
+ return { ok: true, errors, action: 'unarchived', from: fromRel, to: toRel, moveMethod };
162
+ }
163
+ //# sourceMappingURL=manage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage.js","sourceRoot":"","sources":["../../../src/core/archive/manage.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auditor.d.ts","sourceRoot":"","sources":["../../../src/core/audit/auditor.ts"],"names":[],"mappings":"AAYA,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAM5E,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAqJpF;AA0ND;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,CAAC,CAQ3B"}
1
+ {"version":3,"file":"auditor.d.ts","sourceRoot":"","sources":["../../../src/core/audit/auditor.ts"],"names":[],"mappings":"AAYA,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAM5E,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAqJpF;AAyOD;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,CAAC,CAQ3B"}
@@ -260,6 +260,20 @@ async function auditFile(filePath, docsPath) {
260
260
  });
261
261
  }
262
262
  }
263
+ // Deprecation nudge: a doc marked `status: deprecated` is, by definition,
264
+ // still in an active domain folder (archived docs live under archive/ and
265
+ // are not scanned). Nudge toward the archival process. This is what finally
266
+ // makes `status: deprecated` actionable.
267
+ if (data.status === 'deprecated') {
268
+ issues.push({
269
+ file: relPath,
270
+ rule: 'deprecated-not-archived',
271
+ severity: 'info',
272
+ message: 'Document is marked deprecated but still in an active domain folder',
273
+ fixable: false,
274
+ suggestion: `Retire it with \`hewtd archive ${relPath}\` (or restore it to active)`,
275
+ });
276
+ }
263
277
  // Check for empty tags
264
278
  if (data.tags && data.tags.length === 0 && data.status === 'active') {
265
279
  issues.push({
@@ -1 +1 @@
1
- {"version":3,"file":"auditor.js","sourceRoot":"","sources":["../../../src/core/audit/auditor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auditor.js","sourceRoot":"","sources":["../../../src/core/audit/auditor.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,11 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
87
87
  target?: string | undefined;
88
88
  cites?: string[] | undefined;
89
89
  }>, "many">>;
90
+ } & {
91
+ superseded_by: z.ZodOptional<z.ZodString>;
92
+ archived_on: z.ZodOptional<z.ZodEffects<z.ZodString, string, unknown>>;
93
+ archived_from: z.ZodOptional<z.ZodString>;
94
+ archived_reason: z.ZodOptional<z.ZodString>;
90
95
  }, "strip", z.ZodTypeAny, {
91
96
  status: string;
92
97
  domains: string[];
@@ -133,6 +138,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
133
138
  resolution_status?: string | undefined;
134
139
  components?: string[] | undefined;
135
140
  incident_id?: string | undefined;
141
+ superseded_by?: string | undefined;
142
+ archived_on?: string | undefined;
143
+ archived_from?: string | undefined;
144
+ archived_reason?: string | undefined;
136
145
  }, {
137
146
  status: string;
138
147
  domains: string[];
@@ -179,6 +188,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
179
188
  resolution_status?: string | undefined;
180
189
  components?: string[] | undefined;
181
190
  incident_id?: string | undefined;
191
+ superseded_by?: string | undefined;
192
+ archived_on?: unknown;
193
+ archived_from?: string | undefined;
194
+ archived_reason?: string | undefined;
182
195
  }>, {
183
196
  status: string;
184
197
  domains: string[];
@@ -225,6 +238,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
225
238
  resolution_status?: string | undefined;
226
239
  components?: string[] | undefined;
227
240
  incident_id?: string | undefined;
241
+ superseded_by?: string | undefined;
242
+ archived_on?: string | undefined;
243
+ archived_from?: string | undefined;
244
+ archived_reason?: string | undefined;
228
245
  }, {
229
246
  status: string;
230
247
  domains: string[];
@@ -271,6 +288,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
271
288
  resolution_status?: string | undefined;
272
289
  components?: string[] | undefined;
273
290
  incident_id?: string | undefined;
291
+ superseded_by?: string | undefined;
292
+ archived_on?: unknown;
293
+ archived_from?: string | undefined;
294
+ archived_reason?: string | undefined;
274
295
  }>, {
275
296
  status: string;
276
297
  domains: string[];
@@ -317,6 +338,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
317
338
  resolution_status?: string | undefined;
318
339
  components?: string[] | undefined;
319
340
  incident_id?: string | undefined;
341
+ superseded_by?: string | undefined;
342
+ archived_on?: string | undefined;
343
+ archived_from?: string | undefined;
344
+ archived_reason?: string | undefined;
320
345
  }, {
321
346
  status: string;
322
347
  domains: string[];
@@ -363,6 +388,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
363
388
  resolution_status?: string | undefined;
364
389
  components?: string[] | undefined;
365
390
  incident_id?: string | undefined;
391
+ superseded_by?: string | undefined;
392
+ archived_on?: unknown;
393
+ archived_from?: string | undefined;
394
+ archived_reason?: string | undefined;
366
395
  }>, {
367
396
  status: string;
368
397
  domains: string[];
@@ -409,6 +438,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
409
438
  resolution_status?: string | undefined;
410
439
  components?: string[] | undefined;
411
440
  incident_id?: string | undefined;
441
+ superseded_by?: string | undefined;
442
+ archived_on?: string | undefined;
443
+ archived_from?: string | undefined;
444
+ archived_reason?: string | undefined;
412
445
  }, {
413
446
  status: string;
414
447
  domains: string[];
@@ -455,6 +488,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
455
488
  resolution_status?: string | undefined;
456
489
  components?: string[] | undefined;
457
490
  incident_id?: string | undefined;
491
+ superseded_by?: string | undefined;
492
+ archived_on?: unknown;
493
+ archived_from?: string | undefined;
494
+ archived_reason?: string | undefined;
458
495
  }>, {
459
496
  status: string;
460
497
  domains: string[];
@@ -501,6 +538,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
501
538
  resolution_status?: string | undefined;
502
539
  components?: string[] | undefined;
503
540
  incident_id?: string | undefined;
541
+ superseded_by?: string | undefined;
542
+ archived_on?: string | undefined;
543
+ archived_from?: string | undefined;
544
+ archived_reason?: string | undefined;
504
545
  }, {
505
546
  status: string;
506
547
  domains: string[];
@@ -547,6 +588,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
547
588
  resolution_status?: string | undefined;
548
589
  components?: string[] | undefined;
549
590
  incident_id?: string | undefined;
591
+ superseded_by?: string | undefined;
592
+ archived_on?: unknown;
593
+ archived_from?: string | undefined;
594
+ archived_reason?: string | undefined;
550
595
  }>, {
551
596
  status: string;
552
597
  domains: string[];
@@ -593,6 +638,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
593
638
  resolution_status?: string | undefined;
594
639
  components?: string[] | undefined;
595
640
  incident_id?: string | undefined;
641
+ superseded_by?: string | undefined;
642
+ archived_on?: string | undefined;
643
+ archived_from?: string | undefined;
644
+ archived_reason?: string | undefined;
596
645
  }, {
597
646
  status: string;
598
647
  domains: string[];
@@ -639,6 +688,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
639
688
  resolution_status?: string | undefined;
640
689
  components?: string[] | undefined;
641
690
  incident_id?: string | undefined;
691
+ superseded_by?: string | undefined;
692
+ archived_on?: unknown;
693
+ archived_from?: string | undefined;
694
+ archived_reason?: string | undefined;
642
695
  }>, {
643
696
  status: string;
644
697
  domains: string[];
@@ -685,6 +738,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
685
738
  resolution_status?: string | undefined;
686
739
  components?: string[] | undefined;
687
740
  incident_id?: string | undefined;
741
+ superseded_by?: string | undefined;
742
+ archived_on?: string | undefined;
743
+ archived_from?: string | undefined;
744
+ archived_reason?: string | undefined;
688
745
  }, {
689
746
  status: string;
690
747
  domains: string[];
@@ -731,6 +788,10 @@ export declare const MetadataSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.Zo
731
788
  resolution_status?: string | undefined;
732
789
  components?: string[] | undefined;
733
790
  incident_id?: string | undefined;
791
+ superseded_by?: string | undefined;
792
+ archived_on?: unknown;
793
+ archived_from?: string | undefined;
794
+ archived_reason?: string | undefined;
734
795
  }>;
735
796
  export type DocumentMetadata = z.infer<typeof MetadataSchema>;
736
797
  /**
@@ -798,6 +859,10 @@ export declare const PartialMetadataSchema: z.ZodObject<{
798
859
  target?: string | undefined;
799
860
  cites?: string[] | undefined;
800
861
  }>, "many">>>;
862
+ superseded_by: z.ZodOptional<z.ZodOptional<z.ZodString>>;
863
+ archived_on: z.ZodOptional<z.ZodOptional<z.ZodEffects<z.ZodString, string, unknown>>>;
864
+ archived_from: z.ZodOptional<z.ZodOptional<z.ZodString>>;
865
+ archived_reason: z.ZodOptional<z.ZodOptional<z.ZodString>>;
801
866
  }, "strip", z.ZodTypeAny, {
802
867
  id?: string | undefined;
803
868
  status?: string | undefined;
@@ -844,6 +909,10 @@ export declare const PartialMetadataSchema: z.ZodObject<{
844
909
  resolution_status?: string | undefined;
845
910
  components?: string[] | undefined;
846
911
  incident_id?: string | undefined;
912
+ superseded_by?: string | undefined;
913
+ archived_on?: string | undefined;
914
+ archived_from?: string | undefined;
915
+ archived_reason?: string | undefined;
847
916
  }, {
848
917
  id?: string | undefined;
849
918
  status?: string | undefined;
@@ -890,6 +959,10 @@ export declare const PartialMetadataSchema: z.ZodObject<{
890
959
  resolution_status?: string | undefined;
891
960
  components?: string[] | undefined;
892
961
  incident_id?: string | undefined;
962
+ superseded_by?: string | undefined;
963
+ archived_on?: unknown;
964
+ archived_from?: string | undefined;
965
+ archived_reason?: string | undefined;
893
966
  }>;
894
967
  export type PartialDocumentMetadata = z.infer<typeof PartialMetadataSchema>;
895
968
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/core/metadata/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/core/metadata/schema.ts"],"names":[],"mappings":"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"}
@@ -113,6 +113,18 @@ const knowledgeBaseSchema = z.object({
113
113
  }))
114
114
  .optional(),
115
115
  });
116
+ // ----- Archival / deprecation lifecycle fields -----
117
+ //
118
+ // Stamped by `hewtd archive` (and `superseded_by` may be set by hand on a
119
+ // still-active doc to point at its replacement). All optional; archived docs
120
+ // live under `archive/` and are scan-excluded, but `superseded_by` and
121
+ // `status: deprecated` can appear on active docs, so these must validate.
122
+ const lifecycleSchema = z.object({
123
+ superseded_by: z.string().optional(),
124
+ archived_on: dateStringSchema.optional(),
125
+ archived_from: z.string().optional(),
126
+ archived_reason: z.string().optional(),
127
+ });
116
128
  // ----- Merged base (no refinements yet) -----
117
129
  const _baseMergedSchema = coreIdentitySchema
118
130
  .merge(statusSchema)
@@ -120,7 +132,8 @@ const _baseMergedSchema = coreIdentitySchema
120
132
  .merge(ownershipSchema)
121
133
  .merge(implementationSchema)
122
134
  .merge(autoGeneratedSchema)
123
- .merge(knowledgeBaseSchema);
135
+ .merge(knowledgeBaseSchema)
136
+ .merge(lifecycleSchema);
124
137
  // ----- Conditional refinements -----
125
138
  /**
126
139
  * `version` is required for any tier NOT in LIFECYCLE_TRACKED_TIERS.