@poetics/cli 0.1.1 → 0.2.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 (60) hide show
  1. package/dist/backfill.d.ts +98 -0
  2. package/dist/backfill.d.ts.map +1 -0
  3. package/dist/backfill.js +582 -0
  4. package/dist/backfill.js.map +1 -0
  5. package/dist/change.d.ts +18 -0
  6. package/dist/change.d.ts.map +1 -0
  7. package/dist/change.js +155 -0
  8. package/dist/change.js.map +1 -0
  9. package/dist/changes.d.ts +4 -0
  10. package/dist/changes.d.ts.map +1 -0
  11. package/dist/changes.js +38 -0
  12. package/dist/changes.js.map +1 -0
  13. package/dist/commands.d.ts.map +1 -1
  14. package/dist/commands.js +6 -2
  15. package/dist/commands.js.map +1 -1
  16. package/dist/coverage.d.ts +39 -0
  17. package/dist/coverage.d.ts.map +1 -0
  18. package/dist/coverage.js +88 -0
  19. package/dist/coverage.js.map +1 -0
  20. package/dist/declarations.d.ts +26 -0
  21. package/dist/declarations.d.ts.map +1 -0
  22. package/dist/declarations.js +34 -0
  23. package/dist/declarations.js.map +1 -0
  24. package/dist/drift.d.ts +29 -0
  25. package/dist/drift.d.ts.map +1 -0
  26. package/dist/drift.js +84 -0
  27. package/dist/drift.js.map +1 -0
  28. package/dist/frameworks.d.ts +6 -0
  29. package/dist/frameworks.d.ts.map +1 -0
  30. package/dist/frameworks.js +8 -0
  31. package/dist/frameworks.js.map +1 -0
  32. package/dist/git.d.ts +19 -0
  33. package/dist/git.d.ts.map +1 -0
  34. package/dist/git.js +40 -0
  35. package/dist/git.js.map +1 -0
  36. package/dist/history.d.ts +6 -0
  37. package/dist/history.d.ts.map +1 -0
  38. package/dist/history.js +53 -0
  39. package/dist/history.js.map +1 -0
  40. package/dist/index.d.ts +21 -0
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +12 -0
  43. package/dist/index.js.map +1 -1
  44. package/dist/indexing.d.ts +91 -0
  45. package/dist/indexing.d.ts.map +1 -0
  46. package/dist/indexing.js +372 -0
  47. package/dist/indexing.js.map +1 -0
  48. package/dist/init.d.ts +35 -0
  49. package/dist/init.d.ts.map +1 -0
  50. package/dist/init.js +186 -0
  51. package/dist/init.js.map +1 -0
  52. package/dist/rehash.d.ts +31 -0
  53. package/dist/rehash.d.ts.map +1 -0
  54. package/dist/rehash.js +73 -0
  55. package/dist/rehash.js.map +1 -0
  56. package/dist/run.d.ts +2 -2
  57. package/dist/run.d.ts.map +1 -1
  58. package/dist/run.js +258 -2
  59. package/dist/run.js.map +1 -1
  60. package/package.json +6 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import type { IndexedUnit } from "@poetics/adapter-typescript";
2
+ import type { Actor, Hash } from "@poetics/core";
3
+ import type { PoeticsConfig, StoreValidator } from "@poetics/store";
4
+ export interface RehashEntry {
5
+ uid: string;
6
+ name: string;
7
+ file: string;
8
+ /** The provisional hash the new version follows. */
9
+ parent: Hash;
10
+ contentHash: Hash;
11
+ interfaceHash: Hash;
12
+ }
13
+ export interface RehashPlan {
14
+ rehash: RehashEntry[];
15
+ /** Units that cannot be rehashed yet, with what to do first. */
16
+ skipped: Array<{
17
+ uid: string;
18
+ name: string;
19
+ file: string;
20
+ reason: string;
21
+ }>;
22
+ /** Live units whose latest version already has a b3: hash. */
23
+ alreadyIndexed: number;
24
+ }
25
+ /** Which units the rehash would touch, and which it must leave until their code is recorded. */
26
+ export declare function planRehash(root: string, config: PoeticsConfig): Promise<RehashPlan>;
27
+ /** Appends a `rehash` version for each planned unit, as `actor`. Returns how many were written. */
28
+ export declare function applyRehash(root: string, plan: RehashPlan, actor: Actor, validator?: StoreValidator): Promise<number>;
29
+ /** The indexer's hashes for the units in one file, for writing a version by hand. */
30
+ export declare function unitHashes(root: string, config: PoeticsConfig, file: string): Promise<Array<Pick<IndexedUnit, "name" | "kind" | "startLine" | "endLine" | "contentHash" | "interfaceHash">>>;
31
+ //# sourceMappingURL=rehash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rehash.d.ts","sourceRoot":"","sources":["../src/rehash.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAQ,MAAM,eAAe,CAAC;AAEvD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEpE,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,MAAM,EAAE,IAAI,CAAC;IACb,WAAW,EAAE,IAAI,CAAC;IAClB,aAAa,EAAE,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,gEAAgE;IAChE,OAAO,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5E,8DAA8D;IAC9D,cAAc,EAAE,MAAM,CAAC;CACxB;AAID,gGAAgG;AAChG,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAkCzF;AAED,mGAAmG;AACnG,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAc3H;AAED,qFAAqF;AACrF,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC,CAIlM"}
package/dist/rehash.js ADDED
@@ -0,0 +1,73 @@
1
+ // The one-off rehash (ADR 0014): every live unit still on a provisional git:
2
+ // hash gets a `rehash` version with the indexer's b3: hashes, but only when its
3
+ // code is exactly what that git: hash recorded, so no code change is hidden.
4
+ import { readFile } from "node:fs/promises";
5
+ import { join } from "node:path";
6
+ import { createTypeScriptIndexer } from "@poetics/adapter-typescript";
7
+ import { pluginsFor } from "./frameworks.js";
8
+ import { gitBlobHash, isProvisional, isRemoved } from "@poetics/core";
9
+ import { appendVersion, filesInScope, parseUnit, readUnitFiles, storePaths } from "@poetics/store";
10
+ const LINKS = [{ kind: "decision", ref: "docs/decisions/0014-rehash-versions.md" }];
11
+ /** Which units the rehash would touch, and which it must leave until their code is recorded. */
12
+ export async function planRehash(root, config) {
13
+ const { parseable } = await filesInScope(root, config);
14
+ const tsconfig = config.typescript?.tsconfig;
15
+ const indexed = createTypeScriptIndexer({ root, files: parseable, plugins: pluginsFor(config), ...(tsconfig ? { tsconfig } : {}) }).index().units;
16
+ const byPlace = new Map(indexed.map((unit) => [place(unit.span.file, unit.name, unit.kind === "type"), unit]));
17
+ const texts = new Map();
18
+ const textOf = async (file) => {
19
+ if (!texts.has(file))
20
+ texts.set(file, await readFile(join(root, file), "utf8"));
21
+ return texts.get(file);
22
+ };
23
+ const plan = { rehash: [], skipped: [], alreadyIndexed: 0 };
24
+ const units = (await readUnitFiles(storePaths(root))).map(parseUnit).sort((a, b) => (a.uid < b.uid ? -1 : 1));
25
+ for (const unit of units) {
26
+ if (isRemoved(unit))
27
+ continue;
28
+ const latest = unit.versions.at(-1).contentHash;
29
+ if (!isProvisional(latest)) {
30
+ plan.alreadyIndexed++;
31
+ continue;
32
+ }
33
+ const where = { uid: unit.uid, name: unit.name, file: unit.location.file };
34
+ const code = byPlace.get(place(unit.location.file, unit.location.export ?? unit.name, unit.kind === "type"));
35
+ if (!code) {
36
+ plan.skipped.push({ ...where, reason: `no ${unit.kind} ${unit.name} in ${unit.location.file} that the indexer can read` });
37
+ continue;
38
+ }
39
+ const text = (await textOf(code.span.file)).slice(code.span.start, code.span.end);
40
+ if (gitBlobHash(text) !== latest) {
41
+ plan.skipped.push({ ...where, reason: `the code changed since ${latest}; record that change first` });
42
+ continue;
43
+ }
44
+ plan.rehash.push({ ...where, parent: latest, contentHash: code.contentHash, interfaceHash: code.interfaceHash });
45
+ }
46
+ return plan;
47
+ }
48
+ /** Appends a `rehash` version for each planned unit, as `actor`. Returns how many were written. */
49
+ export async function applyRehash(root, plan, actor, validator) {
50
+ const ctx = { paths: storePaths(root), actor, ...(validator ? { validator } : {}) };
51
+ for (const entry of plan.rehash) {
52
+ await appendVersion(ctx, entry.uid, {
53
+ contentHash: entry.contentHash,
54
+ interfaceHash: entry.interfaceHash,
55
+ parent: entry.parent,
56
+ change: "rehash",
57
+ actor,
58
+ rationale: "Rehashed by the indexer: the code is unchanged since the provisional hash, now recorded as the hash of its normalised syntax tree.",
59
+ links: LINKS,
60
+ });
61
+ }
62
+ return plan.rehash.length;
63
+ }
64
+ /** The indexer's hashes for the units in one file, for writing a version by hand. */
65
+ export async function unitHashes(root, config, file) {
66
+ const tsconfig = config.typescript?.tsconfig;
67
+ const { units } = createTypeScriptIndexer({ root, files: [file], plugins: pluginsFor(config), ...(tsconfig ? { tsconfig } : {}) }).index();
68
+ return units.map(({ name, kind, startLine, endLine, contentHash, interfaceHash }) => ({ name, kind, startLine, endLine, contentHash, interfaceHash }));
69
+ }
70
+ function place(file, name, isType) {
71
+ return `${file}#${name}#${isType ? "type" : "value"}`;
72
+ }
73
+ //# sourceMappingURL=rehash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rehash.js","sourceRoot":"","sources":["../src/rehash.ts"],"names":[],"mappings":"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"}
package/dist/run.d.ts CHANGED
@@ -3,6 +3,6 @@ export interface Io {
3
3
  err(text: string): void;
4
4
  }
5
5
  export declare const VERSION: string;
6
- /** Exit codes: 0 ok, 1 findings (e.g. verify), 2 usage or not-implemented. */
7
- export declare function run(argv: readonly string[], io: Io): Promise<number>;
6
+ /** Exit codes: 0 ok, 1 findings (e.g. verify), 2 usage or not-implemented. `root` is the repository root. */
7
+ export declare function run(argv: readonly string[], io: Io, root?: string): Promise<number>;
8
8
  //# sourceMappingURL=run.d.ts.map
package/dist/run.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,EAAE;IACjB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAGD,eAAO,MAAM,OAAO,EAAE,MAEb,CAAC;AAEV,8EAA8E;AAC9E,wBAAsB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA6B1E"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,EAAE;IACjB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAGD,eAAO,MAAM,OAAO,EAAE,MAEb,CAAC;AAEV,6GAA6G;AAC7G,wBAAsB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,GAAE,MAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAsCxG"}
package/dist/run.js CHANGED
@@ -1,10 +1,19 @@
1
1
  import { readFileSync } from "node:fs";
2
2
  import { NotImplementedError } from "@poetics/core";
3
+ import { changesBetween, openIndex, readConfig, rebuildIndex, resolveUnit, storePaths } from "@poetics/store";
4
+ import { checkChange } from "./change.js";
5
+ import { formatChanges } from "./changes.js";
3
6
  import { COMMANDS } from "./commands.js";
7
+ import { coverageFor, formatCoverage } from "./coverage.js";
8
+ import { formatLog, formatWhy } from "./history.js";
9
+ import { applyBackfill, applyPrehistory, formatBackfillPlan, formatPrehistoryPlan, planBackfill, planPrehistory } from "./backfill.js";
10
+ import { applyIndex, formatIndexPlan, needsRationale, planIndex } from "./indexing.js";
11
+ import { applyInit, formatInitPlan, planInit } from "./init.js";
12
+ import { applyRehash, planRehash, unitHashes } from "./rehash.js";
4
13
  // src/ and dist/ both sit one level below package.json.
5
14
  export const VERSION = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8")).version;
6
- /** Exit codes: 0 ok, 1 findings (e.g. verify), 2 usage or not-implemented. */
7
- export async function run(argv, io) {
15
+ /** Exit codes: 0 ok, 1 findings (e.g. verify), 2 usage or not-implemented. `root` is the repository root. */
16
+ export async function run(argv, io, root = process.cwd()) {
8
17
  const json = argv.includes("--json");
9
18
  const args = argv.filter((arg) => arg !== "--json");
10
19
  const [name] = args;
@@ -22,6 +31,24 @@ export async function run(argv, io) {
22
31
  return 2;
23
32
  }
24
33
  try {
34
+ if (command.name === "changes")
35
+ return await changes(args.slice(1), io, json, root);
36
+ if (command.name === "log" || command.name === "why")
37
+ return await history(command.name, args.slice(1), io, json, root);
38
+ if (command.name === "verify")
39
+ return await verify(args.slice(1), io, json, root);
40
+ if (command.name === "coverage")
41
+ return await coverage(args.slice(1), io, json, root);
42
+ if (command.name === "hash")
43
+ return await hash(args.slice(1), io, json, root);
44
+ if (command.name === "rehash")
45
+ return await rehash(args.slice(1), io, json, root);
46
+ if (command.name === "index")
47
+ return await index(args.slice(1), io, json, root);
48
+ if (command.name === "backfill")
49
+ return await backfill(args.slice(1), io, json, root);
50
+ if (command.name === "init")
51
+ return await init(args.slice(1), io, json, root);
25
52
  throw new NotImplementedError(`poetics ${command.name}`);
26
53
  }
27
54
  catch (error) {
@@ -32,6 +59,235 @@ export async function run(argv, io) {
32
59
  throw error;
33
60
  }
34
61
  }
62
+ async function changes(args, io, json, root) {
63
+ // --impact needs the composition graph, which arrives with the indexer.
64
+ if (args.includes("--impact"))
65
+ throw new NotImplementedError("poetics changes --impact");
66
+ const [from, to, ...extra] = args;
67
+ if (extra.length > 0 || args.some((arg) => arg.startsWith("-"))) {
68
+ report(io, json, { error: "usage", command: "changes", message: "Usage: poetics changes [from] [to]" });
69
+ return 2;
70
+ }
71
+ let set;
72
+ try {
73
+ set = await changesBetween(storePaths(root), { ...(from ? { from } : {}), ...(to ? { to } : {}) });
74
+ }
75
+ catch (error) {
76
+ report(io, json, { error: "invalid-argument", command: "changes", message: error.message });
77
+ return 2;
78
+ }
79
+ io.out(json ? JSON.stringify(set) : formatChanges(set));
80
+ return 0;
81
+ }
82
+ async function history(name, args, io, json, root) {
83
+ const [ref, ...extra] = args;
84
+ if (ref === undefined || ref.startsWith("-") || extra.length > 0) {
85
+ report(io, json, { error: "usage", command: name, message: `Usage: poetics ${name} <unit>` });
86
+ return 2;
87
+ }
88
+ const paths = storePaths(root);
89
+ const db = openIndex(paths.indexDb);
90
+ let unit;
91
+ try {
92
+ await rebuildIndex(paths, db);
93
+ unit = await resolveUnit(paths, db, ref);
94
+ }
95
+ catch (error) {
96
+ report(io, json, { error: "invalid-argument", command: name, message: error.message });
97
+ return 2;
98
+ }
99
+ finally {
100
+ db.close();
101
+ }
102
+ if (!json) {
103
+ io.out(name === "log" ? formatLog(unit) : formatWhy(unit));
104
+ }
105
+ else if (name === "log") {
106
+ const versions = unit.versions.map((version, seq) => ({ seq, ...version })).reverse();
107
+ io.out(JSON.stringify({ uid: unit.uid, name: unit.name, location: unit.location, versions, lineage: unit.lineage ?? [] }));
108
+ }
109
+ else {
110
+ const chain = unit.versions.map(({ change, rationale, links, commit }, seq) => ({ seq, change, rationale, links: links ?? [], ...(commit ? { commit } : {}) }));
111
+ io.out(JSON.stringify({ uid: unit.uid, name: unit.name, location: unit.location, chain, lineage: unit.lineage ?? [] }));
112
+ }
113
+ return 0;
114
+ }
115
+ // The day-one change check (ADR 0007): code against the store since a ref. The
116
+ // indexer's unverified units, stale docs and unresolved edges join it later.
117
+ async function verify(args, io, json, root) {
118
+ const [flag, since = "HEAD", ...extra] = args;
119
+ if ((flag !== undefined && flag !== "--since") || (flag === "--since" && args[1] === undefined) || extra.length > 0) {
120
+ report(io, json, { error: "usage", command: "verify", message: "Usage: poetics verify [--since <ref>]" });
121
+ return 2;
122
+ }
123
+ let result;
124
+ try {
125
+ result = await checkChange(root, since, await readConfig(root));
126
+ }
127
+ catch (error) {
128
+ report(io, json, { error: "invalid-argument", command: "verify", message: error.message });
129
+ return 2;
130
+ }
131
+ const errors = result.findings.filter((finding) => finding.severity === "error").length;
132
+ if (json) {
133
+ io.out(JSON.stringify(result));
134
+ }
135
+ else {
136
+ for (const finding of result.findings)
137
+ io.err(`${finding.severity}: ${finding.kind}: ${finding.file}: ${finding.message}`);
138
+ io.out(`Poetics verify since ${since} (${result.base.slice(0, 7)}): ${result.changedCodeFiles.length} code file(s), ` +
139
+ `${result.changedUnits} unit file(s) changed; ${errors} error(s), ${result.findings.length - errors} warning(s).`);
140
+ }
141
+ return errors > 0 ? 1 : 0;
142
+ }
143
+ async function coverage(args, io, json, root) {
144
+ if (args.length > 0) {
145
+ report(io, json, { error: "usage", command: "coverage", message: "Usage: poetics coverage" });
146
+ return 2;
147
+ }
148
+ const result = await coverageFor(root);
149
+ io.out(json ? JSON.stringify(result) : formatCoverage(result));
150
+ return result.failures.length > 0 ? 1 : 0;
151
+ }
152
+ async function hash(args, io, json, root) {
153
+ const [ref, ...extra] = args;
154
+ if (ref === undefined || extra.length > 0 || ref.startsWith("-")) {
155
+ report(io, json, { error: "usage", command: "hash", message: "Usage: poetics hash <file>[#name]" });
156
+ return 2;
157
+ }
158
+ const hashAt = ref.lastIndexOf("#");
159
+ const [file, name] = hashAt > 0 ? [ref.slice(0, hashAt), ref.slice(hashAt + 1)] : [ref, undefined];
160
+ const units = (await unitHashes(root, await readConfig(root), file)).filter((unit) => name === undefined || unit.name === name);
161
+ if (units.length === 0) {
162
+ report(io, json, { error: "invalid-argument", command: "hash", message: `No unit ${name ? `${name} ` : ""}in ${file}` });
163
+ return 2;
164
+ }
165
+ io.out(json
166
+ ? JSON.stringify({ file, units })
167
+ : units.map((u) => `${u.name} (${u.kind}, lines ${u.startLine}-${u.endLine})\n contentHash ${u.contentHash}\n interfaceHash ${u.interfaceHash}`).join("\n"));
168
+ return 0;
169
+ }
170
+ async function rehash(args, io, json, root) {
171
+ const parsed = parseFlags(args, ["--write"], ["--agent", "--model"]);
172
+ if (!parsed) {
173
+ report(io, json, { error: "usage", command: "rehash", message: "Usage: poetics rehash [--write] [--agent <tool> [--model <id>]]" });
174
+ return 2;
175
+ }
176
+ const plan = await planRehash(root, await readConfig(root));
177
+ const written = parsed.flags.has("--write") ? await applyRehash(root, plan, actorOf(parsed.values)) : 0;
178
+ if (json) {
179
+ io.out(JSON.stringify({ ...plan, written }));
180
+ }
181
+ else {
182
+ const lines = plan.skipped.map((s) => `skipped: ${s.file}#${s.name} (${s.uid}): ${s.reason}`);
183
+ const verb = parsed.flags.has("--write") ? `Rehashed ${written}` : `Would rehash ${plan.rehash.length}`;
184
+ lines.push(`${verb} unit(s); ${plan.skipped.length} skipped; ${plan.alreadyIndexed} already on b3: hashes.`);
185
+ io.out(lines.join("\n"));
186
+ }
187
+ return plan.skipped.length > 0 ? 1 : 0;
188
+ }
189
+ async function index(args, io, json, root) {
190
+ const usage = "Usage: poetics index [--since <ref>] [--write] [--rationale <text>] [--agent <tool> [--model <id>]]";
191
+ const parsed = parseFlags(args, ["--write"], ["--since", "--rationale", "--agent", "--model"]);
192
+ if (!parsed) {
193
+ report(io, json, { error: "usage", command: "index", message: usage });
194
+ return 2;
195
+ }
196
+ const config = await readConfig(root);
197
+ const since = parsed.values.get("--since");
198
+ const rationale = parsed.values.get("--rationale");
199
+ let plan;
200
+ try {
201
+ plan = await planIndex(root, config, { ...(since ? { since } : {}), ...(rationale ? { rationale } : {}) });
202
+ }
203
+ catch (error) {
204
+ report(io, json, { error: "invalid-argument", command: "index", message: error.message });
205
+ return 2;
206
+ }
207
+ const write = parsed.flags.has("--write");
208
+ if (write && plan.rationale === undefined && needsRationale(plan)) {
209
+ report(io, json, { error: "usage", command: "index", message: "No rationale: pass --rationale, or commit with a message first" });
210
+ return 2;
211
+ }
212
+ const written = write ? await applyIndex(root, plan, actorOf(parsed.values), config.store?.layout) : 0;
213
+ io.out(json ? JSON.stringify({ ...plan, written }) : formatIndexPlan(plan, write ? written : undefined));
214
+ return plan.queued.length > 0 ? 1 : 0;
215
+ }
216
+ async function init(args, io, json, root) {
217
+ // Installing skills, an AGENTS.md pointer and the MCP server needs the skills published as a package.
218
+ if (args.includes("--agents"))
219
+ throw new NotImplementedError("poetics init --agents");
220
+ const parsed = parseFlags(args, ["--write"], []);
221
+ if (!parsed) {
222
+ report(io, json, { error: "usage", command: "init", message: "Usage: poetics init [--write]" });
223
+ return 2;
224
+ }
225
+ const plan = await planInit(root);
226
+ const written = parsed.flags.has("--write") && !plan.existing ? await applyInit(root, plan) : undefined;
227
+ io.out(json ? JSON.stringify({ ...plan, written: written ?? 0 }) : formatInitPlan(plan, written));
228
+ return plan.existing ? 1 : 0;
229
+ }
230
+ async function backfill(args, io, json, root) {
231
+ // `--history [from] [to]`: up to two commits, the only arguments that are not flags.
232
+ const range = args.filter((arg) => !arg.startsWith("--"));
233
+ const parsed = parseFlags(args.filter((arg) => arg.startsWith("--")), ["--snapshot", "--history", "--include-removed", "--write"], []);
234
+ const history = parsed?.flags.has("--history") === true;
235
+ if (!parsed || parsed.flags.has("--snapshot") === history || range.length > (history ? 2 : 0) || (parsed.flags.has("--include-removed") && !history)) {
236
+ report(io, json, { error: "usage", command: "backfill", message: "Usage: poetics backfill --snapshot [--write] | --history [<from>] [<to>] [--include-removed] [--write]" });
237
+ return 2;
238
+ }
239
+ const config = await readConfig(root);
240
+ if (history) {
241
+ let plan;
242
+ try {
243
+ plan = await planPrehistory(root, config, {
244
+ ...(range[0] ? { from: range[0] } : {}),
245
+ ...(range[1] ? { to: range[1] } : {}),
246
+ ...(parsed.flags.has("--include-removed") ? { includeRemoved: true } : {}),
247
+ });
248
+ }
249
+ catch (error) {
250
+ report(io, json, { error: "range", command: "backfill", message: error.message });
251
+ return 2;
252
+ }
253
+ const recorded = parsed.flags.has("--write") ? await applyPrehistory(root, plan, config.store?.layout) : undefined;
254
+ io.out(json ? JSON.stringify({ ...plan, written: recorded ?? 0 }) : formatPrehistoryPlan(plan, recorded));
255
+ return 0;
256
+ }
257
+ const snapshot = await planBackfill(root, config);
258
+ const written = parsed.flags.has("--write") ? await applyBackfill(root, snapshot, config.store?.layout) : undefined;
259
+ io.out(json ? JSON.stringify({ ...snapshot, written: written ?? 0 }) : formatBackfillPlan(snapshot, written));
260
+ return 0;
261
+ }
262
+ /**
263
+ * Boolean `flags` and `--name <value>` options, or undefined when an argument is
264
+ * unknown, a value is missing, or `--model` comes without `--agent`.
265
+ */
266
+ function parseFlags(args, flags, options) {
267
+ const seen = new Set();
268
+ const values = new Map();
269
+ for (let i = 0; i < args.length; i++) {
270
+ const arg = args[i];
271
+ if (flags.includes(arg))
272
+ seen.add(arg);
273
+ else if (options.includes(arg)) {
274
+ const value = args[++i];
275
+ if (value === undefined || value.startsWith("--"))
276
+ return undefined;
277
+ values.set(arg, value);
278
+ }
279
+ else
280
+ return undefined;
281
+ }
282
+ if (values.has("--model") && !values.has("--agent"))
283
+ return undefined;
284
+ return { flags: seen, values };
285
+ }
286
+ function actorOf(values) {
287
+ const agent = values.get("--agent");
288
+ const model = values.get("--model");
289
+ return agent ? { kind: "agent", tool: agent, ...(model ? { model } : {}), reviewed: false } : { kind: "human" };
290
+ }
35
291
  function report(io, json, payload) {
36
292
  io.err(json ? JSON.stringify(payload) : payload.message);
37
293
  }
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@poetics/cli",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "The poetics command-line interface, with --json output for agents.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -14,7 +14,6 @@
14
14
  },
15
15
  "exports": {
16
16
  ".": {
17
- "poetics-source": "./src/index.ts",
18
17
  "types": "./dist/index.d.ts",
19
18
  "default": "./dist/index.js"
20
19
  }
@@ -32,8 +31,11 @@
32
31
  "poetics": "./dist/bin.js"
33
32
  },
34
33
  "dependencies": {
35
- "@poetics/core": "0.2.0",
36
- "@poetics/store": "0.2.0"
34
+ "@poetics/adapter-react": "0.2.0",
35
+ "@poetics/adapter-typescript": "0.1.0",
36
+ "@poetics/core": "0.3.0",
37
+ "@poetics/store": "0.3.0",
38
+ "typescript": "^6.0.3"
37
39
  },
38
40
  "scripts": {
39
41
  "build": "tsc -b"