@thjodann/wk 1.0.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 (153) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +197 -0
  3. package/dist/cli/commands/article.d.ts +2 -0
  4. package/dist/cli/commands/article.js +47 -0
  5. package/dist/cli/commands/article.js.map +1 -0
  6. package/dist/cli/commands/closeout.d.ts +2 -0
  7. package/dist/cli/commands/closeout.js +37 -0
  8. package/dist/cli/commands/closeout.js.map +1 -0
  9. package/dist/cli/commands/compile.d.ts +2 -0
  10. package/dist/cli/commands/compile.js +50 -0
  11. package/dist/cli/commands/compile.js.map +1 -0
  12. package/dist/cli/commands/concept.d.ts +2 -0
  13. package/dist/cli/commands/concept.js +36 -0
  14. package/dist/cli/commands/concept.js.map +1 -0
  15. package/dist/cli/commands/decision.d.ts +2 -0
  16. package/dist/cli/commands/decision.js +38 -0
  17. package/dist/cli/commands/decision.js.map +1 -0
  18. package/dist/cli/commands/event.d.ts +2 -0
  19. package/dist/cli/commands/event.js +32 -0
  20. package/dist/cli/commands/event.js.map +1 -0
  21. package/dist/cli/commands/init.d.ts +2 -0
  22. package/dist/cli/commands/init.js +52 -0
  23. package/dist/cli/commands/init.js.map +1 -0
  24. package/dist/cli/commands/installAgent.d.ts +2 -0
  25. package/dist/cli/commands/installAgent.js +130 -0
  26. package/dist/cli/commands/installAgent.js.map +1 -0
  27. package/dist/cli/commands/link.d.ts +2 -0
  28. package/dist/cli/commands/link.js +36 -0
  29. package/dist/cli/commands/link.js.map +1 -0
  30. package/dist/cli/commands/note.d.ts +2 -0
  31. package/dist/cli/commands/note.js +34 -0
  32. package/dist/cli/commands/note.js.map +1 -0
  33. package/dist/cli/commands/pages.d.ts +2 -0
  34. package/dist/cli/commands/pages.js +46 -0
  35. package/dist/cli/commands/pages.js.map +1 -0
  36. package/dist/cli/commands/record.d.ts +2 -0
  37. package/dist/cli/commands/record.js +101 -0
  38. package/dist/cli/commands/record.js.map +1 -0
  39. package/dist/cli/commands/render.d.ts +2 -0
  40. package/dist/cli/commands/render.js +33 -0
  41. package/dist/cli/commands/render.js.map +1 -0
  42. package/dist/cli/commands/search.d.ts +2 -0
  43. package/dist/cli/commands/search.js +125 -0
  44. package/dist/cli/commands/search.js.map +1 -0
  45. package/dist/cli/commands/setup.d.ts +2 -0
  46. package/dist/cli/commands/setup.js +53 -0
  47. package/dist/cli/commands/setup.js.map +1 -0
  48. package/dist/cli/commands/site.d.ts +2 -0
  49. package/dist/cli/commands/site.js +47 -0
  50. package/dist/cli/commands/site.js.map +1 -0
  51. package/dist/cli/commands/spin.d.ts +2 -0
  52. package/dist/cli/commands/spin.js +43 -0
  53. package/dist/cli/commands/spin.js.map +1 -0
  54. package/dist/cli/commands/status.d.ts +2 -0
  55. package/dist/cli/commands/status.js +63 -0
  56. package/dist/cli/commands/status.js.map +1 -0
  57. package/dist/cli/commands/symbol.d.ts +2 -0
  58. package/dist/cli/commands/symbol.js +37 -0
  59. package/dist/cli/commands/symbol.js.map +1 -0
  60. package/dist/cli/commands/theme.d.ts +2 -0
  61. package/dist/cli/commands/theme.js +52 -0
  62. package/dist/cli/commands/theme.js.map +1 -0
  63. package/dist/cli/commands/validate.d.ts +2 -0
  64. package/dist/cli/commands/validate.js +44 -0
  65. package/dist/cli/commands/validate.js.map +1 -0
  66. package/dist/cli/helpers.d.ts +30 -0
  67. package/dist/cli/helpers.js +131 -0
  68. package/dist/cli/helpers.js.map +1 -0
  69. package/dist/core/articles.d.ts +5 -0
  70. package/dist/core/articles.js +25 -0
  71. package/dist/core/articles.js.map +1 -0
  72. package/dist/core/automation.d.ts +96 -0
  73. package/dist/core/automation.js +384 -0
  74. package/dist/core/automation.js.map +1 -0
  75. package/dist/core/beads.d.ts +43 -0
  76. package/dist/core/beads.js +358 -0
  77. package/dist/core/beads.js.map +1 -0
  78. package/dist/core/compiler.d.ts +45 -0
  79. package/dist/core/compiler.js +399 -0
  80. package/dist/core/compiler.js.map +1 -0
  81. package/dist/core/config.d.ts +59 -0
  82. package/dist/core/config.js +187 -0
  83. package/dist/core/config.js.map +1 -0
  84. package/dist/core/git.d.ts +21 -0
  85. package/dist/core/git.js +109 -0
  86. package/dist/core/git.js.map +1 -0
  87. package/dist/core/ids.d.ts +2 -0
  88. package/dist/core/ids.js +8 -0
  89. package/dist/core/ids.js.map +1 -0
  90. package/dist/core/pages.d.ts +34 -0
  91. package/dist/core/pages.js +233 -0
  92. package/dist/core/pages.js.map +1 -0
  93. package/dist/core/paths.d.ts +15 -0
  94. package/dist/core/paths.js +67 -0
  95. package/dist/core/paths.js.map +1 -0
  96. package/dist/core/profiles.d.ts +30 -0
  97. package/dist/core/profiles.js +243 -0
  98. package/dist/core/profiles.js.map +1 -0
  99. package/dist/core/renderer.d.ts +8 -0
  100. package/dist/core/renderer.js +106 -0
  101. package/dist/core/renderer.js.map +1 -0
  102. package/dist/core/schemas.d.ts +1039 -0
  103. package/dist/core/schemas.js +108 -0
  104. package/dist/core/schemas.js.map +1 -0
  105. package/dist/core/site.d.ts +20 -0
  106. package/dist/core/site.js +2684 -0
  107. package/dist/core/site.js.map +1 -0
  108. package/dist/core/spin.d.ts +42 -0
  109. package/dist/core/spin.js +265 -0
  110. package/dist/core/spin.js.map +1 -0
  111. package/dist/core/store.d.ts +29 -0
  112. package/dist/core/store.js +146 -0
  113. package/dist/core/store.js.map +1 -0
  114. package/dist/core/theme.d.ts +35 -0
  115. package/dist/core/theme.js +1086 -0
  116. package/dist/core/theme.js.map +1 -0
  117. package/dist/core/validator.d.ts +8 -0
  118. package/dist/core/validator.js +154 -0
  119. package/dist/core/validator.js.map +1 -0
  120. package/dist/index.d.ts +3 -0
  121. package/dist/index.js +61 -0
  122. package/dist/index.js.map +1 -0
  123. package/dist/templates/articlesPage.d.ts +3 -0
  124. package/dist/templates/articlesPage.js +46 -0
  125. package/dist/templates/articlesPage.js.map +1 -0
  126. package/dist/templates/conceptsPage.d.ts +2 -0
  127. package/dist/templates/conceptsPage.js +24 -0
  128. package/dist/templates/conceptsPage.js.map +1 -0
  129. package/dist/templates/decisionsPage.d.ts +2 -0
  130. package/dist/templates/decisionsPage.js +27 -0
  131. package/dist/templates/decisionsPage.js.map +1 -0
  132. package/dist/templates/devlogPage.d.ts +2 -0
  133. package/dist/templates/devlogPage.js +22 -0
  134. package/dist/templates/devlogPage.js.map +1 -0
  135. package/dist/templates/indexPage.d.ts +6 -0
  136. package/dist/templates/indexPage.js +33 -0
  137. package/dist/templates/indexPage.js.map +1 -0
  138. package/dist/templates/linksPage.d.ts +2 -0
  139. package/dist/templates/linksPage.js +26 -0
  140. package/dist/templates/linksPage.js.map +1 -0
  141. package/dist/templates/notesPage.d.ts +2 -0
  142. package/dist/templates/notesPage.js +26 -0
  143. package/dist/templates/notesPage.js.map +1 -0
  144. package/dist/templates/symbolsPage.d.ts +2 -0
  145. package/dist/templates/symbolsPage.js +25 -0
  146. package/dist/templates/symbolsPage.js.map +1 -0
  147. package/docs/concepts.md +249 -0
  148. package/docs/reference.md +356 -0
  149. package/docs/setup.md +331 -0
  150. package/docs/workflows.md +154 -0
  151. package/package.json +61 -0
  152. package/skills/wk/SKILL.md +251 -0
  153. package/skills/wk/agents/openai.yaml +4 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site.js","sourceRoot":"","sources":["../../src/core/site.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { type IntegrationSummary } from "./beads";
2
+ import { type GitStatusEntry, type SuppressedGitStatusSummary } from "./git";
3
+ import { type ProfileSeed, type SiteAudience, type WikiProfile } from "./profiles";
4
+ export type SuggestedUpdate = {
5
+ type: "concept" | "decision" | "event" | "note";
6
+ reason: string;
7
+ files: string[];
8
+ tags: string[];
9
+ confidence: "low" | "medium" | "high";
10
+ draft: Record<string, unknown>;
11
+ command_hint: string;
12
+ };
13
+ export type FirstPassSuggestion = {
14
+ type: ProfileSeed["type"];
15
+ title: string;
16
+ purpose: string;
17
+ audience: SiteAudience;
18
+ tags: string[];
19
+ draft: Record<string, unknown>;
20
+ command_hint: string;
21
+ };
22
+ export type FirstPassRecipe = {
23
+ name: WikiProfile;
24
+ description: string;
25
+ target_counts: Partial<Record<string, number>>;
26
+ page_emphasis: string[];
27
+ recommended_tags: string[];
28
+ suggested_records: FirstPassSuggestion[];
29
+ };
30
+ export type SpinResult = {
31
+ changed_files: string[];
32
+ suppressed_changed_files: SuppressedGitStatusSummary;
33
+ file_status: GitStatusEntry[];
34
+ diff_stat: string;
35
+ profile: FirstPassRecipe;
36
+ suggested_updates: SuggestedUpdate[];
37
+ integrations?: IntegrationSummary;
38
+ };
39
+ export declare function createSpinResult(root: string, profile: WikiProfile): SpinResult;
40
+ export declare function filterSuggestionFiles(root: string, files: string[]): string[];
41
+ export declare function suggestUpdates(files: string[]): SuggestedUpdate[];
42
+ export declare function firstPassRecipe(profile: WikiProfile): FirstPassRecipe;
@@ -0,0 +1,265 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createSpinResult = createSpinResult;
7
+ exports.filterSuggestionFiles = filterSuggestionFiles;
8
+ exports.suggestUpdates = suggestUpdates;
9
+ exports.firstPassRecipe = firstPassRecipe;
10
+ const fs_1 = __importDefault(require("fs"));
11
+ const beads_1 = require("./beads");
12
+ const git_1 = require("./git");
13
+ const config_1 = require("./config");
14
+ const profiles_1 = require("./profiles");
15
+ function createSpinResult(root, profile) {
16
+ const status = (0, git_1.readGitStatus)(root);
17
+ const fileStatus = status.filter((entry) => !(0, git_1.isSuppressedGitPath)(entry.path));
18
+ const changedFiles = fileStatus.map((entry) => entry.path);
19
+ const suggestionFiles = filterSuggestionFiles(root, changedFiles);
20
+ const integrations = (0, beads_1.readIntegrations)(root, (0, config_1.readWikiwikiConfig)(root));
21
+ const result = {
22
+ changed_files: changedFiles,
23
+ suppressed_changed_files: (0, git_1.summarizeSuppressedGitStatus)(status),
24
+ file_status: fileStatus,
25
+ diff_stat: (0, git_1.readGitDiffStat)(root),
26
+ profile: firstPassRecipe(profile),
27
+ suggested_updates: suggestUpdates(suggestionFiles)
28
+ };
29
+ if ((0, beads_1.shouldReportIntegrations)(integrations)) {
30
+ result.integrations = integrations;
31
+ }
32
+ return result;
33
+ }
34
+ function filterSuggestionFiles(root, files) {
35
+ return files.filter((file) => !isWikiwikiManagedPath(file) &&
36
+ !isWikiwikiSetupOnlyPackageChange(root, file) &&
37
+ !isWikiwikiSetupOnlyConfigChange(root, file));
38
+ }
39
+ function suggestUpdates(files) {
40
+ const suggestions = [];
41
+ const coreFiles = files.filter((file) => file.startsWith("src/core/"));
42
+ const cliFiles = files.filter((file) => file.startsWith("src/cli/"));
43
+ const docsFiles = files.filter((file) => file.endsWith(".md") || file.startsWith("docs/") || file.startsWith("wiki/"));
44
+ const configFiles = files.filter((file) => ["package.json", "tsconfig.json", ".wikiwiki/config.json", ".wikiwiki/site-theme.json"].includes(file) || file.startsWith(".github/"));
45
+ if (coreFiles.length > 0) {
46
+ suggestions.push({
47
+ type: "concept",
48
+ reason: "Core system files changed.",
49
+ files: coreFiles,
50
+ ...draftFields("concept", coreFiles, ["audience:developer", "core", "architecture"], "Core system changes")
51
+ });
52
+ }
53
+ if (cliFiles.length > 0) {
54
+ suggestions.push({
55
+ type: "concept",
56
+ reason: "CLI behavior changed.",
57
+ files: cliFiles,
58
+ ...draftFields("concept", cliFiles, ["audience:developer", "cli"], "CLI behavior changes")
59
+ });
60
+ }
61
+ if (configFiles.length > 0) {
62
+ suggestions.push({
63
+ type: "decision",
64
+ reason: "Project configuration changed.",
65
+ files: configFiles,
66
+ ...draftFields("decision", configFiles, ["audience:developer", "config"], "Project configuration changes")
67
+ });
68
+ }
69
+ if (docsFiles.length > 0) {
70
+ suggestions.push({
71
+ type: "note",
72
+ reason: "Documentation or generated wiki files changed.",
73
+ files: docsFiles,
74
+ ...draftFields("note", docsFiles, ["audience:all", "docs"], "Documentation changes")
75
+ });
76
+ }
77
+ if (files.length > 0) {
78
+ suggestions.push({
79
+ type: "event",
80
+ reason: "Repo has meaningful working tree changes.",
81
+ files,
82
+ ...draftFields("event", files, ["audience:developer", "devlog"], "Working tree changes")
83
+ });
84
+ }
85
+ return suggestions;
86
+ }
87
+ function firstPassRecipe(profile) {
88
+ const recipe = profiles_1.profileRecipes[profile];
89
+ return {
90
+ name: recipe.name,
91
+ description: recipe.description,
92
+ target_counts: recipe.target_counts,
93
+ page_emphasis: recipe.page_emphasis,
94
+ recommended_tags: recipe.recommended_tags,
95
+ suggested_records: recipe.seeds.map((seed) => firstPassSuggestion(seed))
96
+ };
97
+ }
98
+ function draftFields(type, files, tags, title) {
99
+ const confidence = "medium";
100
+ const base = {
101
+ source: "git-diff",
102
+ authority: "agent",
103
+ confidence,
104
+ files,
105
+ tags
106
+ };
107
+ const draft = draftPayload(type, title, base);
108
+ return {
109
+ tags,
110
+ confidence,
111
+ draft,
112
+ command_hint: `wk ${type} add --json '${JSON.stringify(draft)}'`
113
+ };
114
+ }
115
+ function draftPayload(type, title, base) {
116
+ switch (type) {
117
+ case "concept":
118
+ return {
119
+ ...base,
120
+ name: title,
121
+ summary: "TODO: summarize the durable concept behind these changes.",
122
+ details: ""
123
+ };
124
+ case "decision":
125
+ return {
126
+ ...base,
127
+ title,
128
+ context: "TODO: capture the context behind this configuration change.",
129
+ decision: "TODO: capture the decision.",
130
+ consequences: ""
131
+ };
132
+ case "note":
133
+ return {
134
+ ...base,
135
+ body: "TODO: capture the useful documentation context from these changes."
136
+ };
137
+ case "event":
138
+ return {
139
+ ...base,
140
+ summary: title,
141
+ details: "TODO: capture what changed and why it matters."
142
+ };
143
+ }
144
+ }
145
+ function firstPassSuggestion(seed) {
146
+ const draft = seedDraftPayload(seed);
147
+ return {
148
+ type: seed.type,
149
+ title: seed.title,
150
+ purpose: seed.purpose,
151
+ audience: seed.audience,
152
+ tags: seed.tags,
153
+ draft,
154
+ command_hint: `wk ${seed.type} add --json '${JSON.stringify(draft)}'`
155
+ };
156
+ }
157
+ function isWikiwikiManagedPath(file) {
158
+ return file.startsWith(".wikiwiki/drafts/") ||
159
+ file.startsWith(".wikiwiki/records/") ||
160
+ file.startsWith("wiki/") ||
161
+ file.startsWith("wiki-site/");
162
+ }
163
+ function isWikiwikiSetupOnlyPackageChange(root, file) {
164
+ if (file !== "package.json") {
165
+ return false;
166
+ }
167
+ let previous;
168
+ let current;
169
+ try {
170
+ previous = JSON.parse((0, git_1.runGit)(root, ["show", "HEAD:package.json"]));
171
+ current = JSON.parse(fs_1.default.readFileSync(`${root}/package.json`, "utf8"));
172
+ }
173
+ catch {
174
+ return false;
175
+ }
176
+ return JSON.stringify(withoutWikiwikiScripts(previous)) === JSON.stringify(withoutWikiwikiScripts(current));
177
+ }
178
+ function isWikiwikiSetupOnlyConfigChange(root, file) {
179
+ if (file !== ".wikiwiki/config.json") {
180
+ return false;
181
+ }
182
+ try {
183
+ (0, git_1.runGit)(root, ["show", "HEAD:.wikiwiki/config.json"]);
184
+ return false;
185
+ }
186
+ catch {
187
+ return true;
188
+ }
189
+ }
190
+ function withoutWikiwikiScripts(value) {
191
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
192
+ return value;
193
+ }
194
+ const copy = { ...value };
195
+ const scripts = copy.scripts;
196
+ if (scripts && typeof scripts === "object" && !Array.isArray(scripts)) {
197
+ const nextScripts = Object.fromEntries(Object.entries(scripts).filter(([name]) => !name.startsWith("wiki:")));
198
+ if (Object.keys(nextScripts).length > 0) {
199
+ copy.scripts = nextScripts;
200
+ }
201
+ else {
202
+ delete copy.scripts;
203
+ }
204
+ }
205
+ return copy;
206
+ }
207
+ function seedDraftPayload(seed) {
208
+ const base = {
209
+ source: "agent",
210
+ authority: "agent",
211
+ confidence: "medium",
212
+ tags: seed.tags
213
+ };
214
+ switch (seed.type) {
215
+ case "article":
216
+ return {
217
+ ...base,
218
+ title: seed.title,
219
+ summary: `TODO: ${seed.purpose}`,
220
+ body: "TODO: write the public wiki page.",
221
+ categories: seed.tags.filter((tag) => !tag.startsWith("audience:")),
222
+ aliases: [],
223
+ source_record_ids: [],
224
+ files: []
225
+ };
226
+ case "concept":
227
+ return {
228
+ ...base,
229
+ name: seed.title,
230
+ summary: `TODO: ${seed.purpose}`,
231
+ details: "",
232
+ files: []
233
+ };
234
+ case "decision":
235
+ return {
236
+ ...base,
237
+ title: seed.title,
238
+ context: `TODO: capture the context. ${seed.purpose}`,
239
+ decision: "TODO: capture the decision.",
240
+ consequences: "",
241
+ files: []
242
+ };
243
+ case "event":
244
+ return {
245
+ ...base,
246
+ summary: seed.title,
247
+ details: `TODO: ${seed.purpose}`,
248
+ files: []
249
+ };
250
+ case "note":
251
+ return {
252
+ ...base,
253
+ body: `TODO: ${seed.purpose}`
254
+ };
255
+ case "symbol":
256
+ return {
257
+ ...base,
258
+ name: seed.title,
259
+ kind: "TODO",
260
+ file: seed.file ?? "TODO",
261
+ summary: `TODO: ${seed.purpose}`
262
+ };
263
+ }
264
+ }
265
+ //# sourceMappingURL=spin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spin.js","sourceRoot":"","sources":["../../src/core/spin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { type AnyRecord, type RecordByType, type RecordType } from "./schemas";
2
+ export type JsonlIssue = {
3
+ file: string;
4
+ line?: number;
5
+ message: string;
6
+ };
7
+ export type RecordsByType = {
8
+ [Type in RecordType]: RecordByType[Type][];
9
+ };
10
+ export declare function isInitialized(root: string): boolean;
11
+ export declare function ensureStore(root: string): void;
12
+ export declare function appendRecord<T extends RecordType>(root: string, type: T, record: RecordByType[T]): RecordByType[T];
13
+ export declare function readRecords<T extends RecordType>(root: string, type: T): RecordByType[T][];
14
+ export declare function readRecordsWithIssues<T extends RecordType>(root: string, type: T): {
15
+ records: RecordByType[T][];
16
+ issues: JsonlIssue[];
17
+ };
18
+ export declare function readAllRecords(root: string): RecordsByType;
19
+ export declare function readActiveRecord<T extends RecordType>(root: string, type: T, id: string): RecordByType[T] | undefined;
20
+ export declare function readAllRecordsWithIssues(root: string): {
21
+ records: Record<RecordType, AnyRecord[]>;
22
+ issues: JsonlIssue[];
23
+ };
24
+ export declare function recordCounts(root: string): Record<RecordType, number>;
25
+ export declare function relativePath(root: string, absolutePath: string): string;
26
+ export declare function activeRecords<T extends AnyRecord>(records: T[]): T[];
27
+ export declare function latestRecords<T extends AnyRecord>(records: T[]): T[];
28
+ export declare function isDeletedRecord(record: AnyRecord): boolean;
29
+ export declare function recordTimestamp(record: AnyRecord): string;
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.isInitialized = isInitialized;
7
+ exports.ensureStore = ensureStore;
8
+ exports.appendRecord = appendRecord;
9
+ exports.readRecords = readRecords;
10
+ exports.readRecordsWithIssues = readRecordsWithIssues;
11
+ exports.readAllRecords = readAllRecords;
12
+ exports.readActiveRecord = readActiveRecord;
13
+ exports.readAllRecordsWithIssues = readAllRecordsWithIssues;
14
+ exports.recordCounts = recordCounts;
15
+ exports.relativePath = relativePath;
16
+ exports.activeRecords = activeRecords;
17
+ exports.latestRecords = latestRecords;
18
+ exports.isDeletedRecord = isDeletedRecord;
19
+ exports.recordTimestamp = recordTimestamp;
20
+ const fs_1 = __importDefault(require("fs"));
21
+ const schemas_1 = require("./schemas");
22
+ const paths_1 = require("./paths");
23
+ function isInitialized(root) {
24
+ return fs_1.default.existsSync((0, paths_1.wikiwikiPath)(root)) && fs_1.default.existsSync((0, paths_1.recordsPath)(root));
25
+ }
26
+ function ensureStore(root) {
27
+ fs_1.default.mkdirSync((0, paths_1.recordsPath)(root), { recursive: true });
28
+ for (const type of schemas_1.recordTypes) {
29
+ const file = (0, paths_1.recordPath)(root, type);
30
+ if (!fs_1.default.existsSync(file)) {
31
+ fs_1.default.writeFileSync(file, "", "utf8");
32
+ }
33
+ }
34
+ }
35
+ function appendRecord(root, type, record) {
36
+ ensureStore(root);
37
+ const schema = schemas_1.recordSchemas[type];
38
+ const parsed = schema.parse(record);
39
+ fs_1.default.appendFileSync((0, paths_1.recordPath)(root, type), `${JSON.stringify(parsed)}\n`, "utf8");
40
+ return parsed;
41
+ }
42
+ function readRecords(root, type) {
43
+ const { records, issues } = readRecordsWithIssues(root, type);
44
+ if (issues.length > 0) {
45
+ const issue = issues[0];
46
+ const where = issue.line ? `${issue.file}:${issue.line}` : issue.file;
47
+ throw new Error(`${where}: ${issue.message}`);
48
+ }
49
+ return activeRecords(records);
50
+ }
51
+ function readRecordsWithIssues(root, type) {
52
+ const file = (0, paths_1.recordPath)(root, type);
53
+ const schema = schemas_1.recordSchemas[type];
54
+ const records = [];
55
+ const issues = [];
56
+ if (!fs_1.default.existsSync(file)) {
57
+ issues.push({ file, message: "Record file does not exist." });
58
+ return { records, issues };
59
+ }
60
+ const lines = fs_1.default.readFileSync(file, "utf8").split(/\r?\n/);
61
+ lines.forEach((line, index) => {
62
+ if (line.trim().length === 0) {
63
+ return;
64
+ }
65
+ try {
66
+ const parsedJson = JSON.parse(line);
67
+ const parsedRecord = schema.parse(parsedJson);
68
+ records.push(parsedRecord);
69
+ }
70
+ catch (error) {
71
+ const message = error instanceof Error ? error.message : String(error);
72
+ issues.push({
73
+ file,
74
+ line: index + 1,
75
+ message
76
+ });
77
+ }
78
+ });
79
+ return { records, issues };
80
+ }
81
+ function readAllRecords(root) {
82
+ return {
83
+ article: readRecords(root, "article"),
84
+ concept: readRecords(root, "concept"),
85
+ decision: readRecords(root, "decision"),
86
+ event: readRecords(root, "event"),
87
+ note: readRecords(root, "note"),
88
+ symbol: readRecords(root, "symbol"),
89
+ link: readRecords(root, "link")
90
+ };
91
+ }
92
+ function readActiveRecord(root, type, id) {
93
+ return readRecords(root, type).find((record) => record.id === id);
94
+ }
95
+ function readAllRecordsWithIssues(root) {
96
+ const records = {};
97
+ const issues = [];
98
+ for (const type of schemas_1.recordTypes) {
99
+ const result = readRecordsWithIssues(root, type);
100
+ records[type] = result.records;
101
+ issues.push(...result.issues);
102
+ }
103
+ return { records, issues };
104
+ }
105
+ function recordCounts(root) {
106
+ const counts = {};
107
+ for (const type of schemas_1.recordTypes) {
108
+ const file = (0, paths_1.recordPath)(root, type);
109
+ if (!fs_1.default.existsSync(file)) {
110
+ counts[type] = 0;
111
+ continue;
112
+ }
113
+ const { records } = readRecordsWithIssues(root, type);
114
+ counts[type] = activeRecords(records).length;
115
+ }
116
+ return counts;
117
+ }
118
+ function relativePath(root, absolutePath) {
119
+ return (0, paths_1.relativeReportPath)(root, absolutePath);
120
+ }
121
+ function activeRecords(records) {
122
+ return latestRecords(records).filter((record) => !isDeletedRecord(record));
123
+ }
124
+ function latestRecords(records) {
125
+ const latest = new Map();
126
+ for (const record of records) {
127
+ const current = latest.get(record.id);
128
+ if (!current || recordTimestamp(record) >= recordTimestamp(current)) {
129
+ latest.set(record.id, record);
130
+ }
131
+ }
132
+ return [...latest.values()];
133
+ }
134
+ function isDeletedRecord(record) {
135
+ return typeof record.deleted_at === "string" && record.deleted_at.length > 0;
136
+ }
137
+ function recordTimestamp(record) {
138
+ if (typeof record.deleted_at === "string" && record.deleted_at.length > 0) {
139
+ return record.deleted_at;
140
+ }
141
+ if (typeof record.updated_at === "string" && record.updated_at.length > 0) {
142
+ return record.updated_at;
143
+ }
144
+ return record.created_at;
145
+ }
146
+ //# sourceMappingURL=store.js.map