@miadi/inquiry-weave 0.7.0 → 0.8.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 (62) hide show
  1. package/README.md +159 -188
  2. package/dist/artefact.d.ts +8 -0
  3. package/dist/artefact.d.ts.map +1 -1
  4. package/dist/artefact.js +18 -2
  5. package/dist/artefact.js.map +1 -1
  6. package/dist/bin.js +0 -0
  7. package/dist/chronicle-dsl.d.ts +191 -0
  8. package/dist/chronicle-dsl.d.ts.map +1 -0
  9. package/dist/chronicle-dsl.js +327 -0
  10. package/dist/chronicle-dsl.js.map +1 -0
  11. package/dist/chronicle-terminal.d.ts +305 -0
  12. package/dist/chronicle-terminal.d.ts.map +1 -0
  13. package/dist/chronicle-terminal.js +449 -0
  14. package/dist/chronicle-terminal.js.map +1 -0
  15. package/dist/cli.d.ts.map +1 -1
  16. package/dist/cli.js +335 -34
  17. package/dist/cli.js.map +1 -1
  18. package/dist/env.d.ts +1 -3
  19. package/dist/env.d.ts.map +1 -1
  20. package/dist/env.js +4 -5
  21. package/dist/env.js.map +1 -1
  22. package/dist/index.d.ts +2 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +2 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/issue-content.d.ts +2 -0
  27. package/dist/issue-content.d.ts.map +1 -0
  28. package/dist/issue-content.js +45 -0
  29. package/dist/issue-content.js.map +1 -0
  30. package/dist/issue-ref.d.ts +10 -0
  31. package/dist/issue-ref.d.ts.map +1 -0
  32. package/dist/issue-ref.js +20 -0
  33. package/dist/issue-ref.js.map +1 -0
  34. package/dist/issue.d.ts +2 -11
  35. package/dist/issue.d.ts.map +1 -1
  36. package/dist/issue.js +6 -34
  37. package/dist/issue.js.map +1 -1
  38. package/dist/mcp-server.js +0 -0
  39. package/dist/register.d.ts +1 -1
  40. package/dist/register.d.ts.map +1 -1
  41. package/dist/relate.d.ts +1 -3
  42. package/dist/relate.d.ts.map +1 -1
  43. package/dist/relate.js +1 -12
  44. package/dist/relate.js.map +1 -1
  45. package/dist/skill.d.ts.map +1 -1
  46. package/dist/skill.js +8 -2
  47. package/dist/skill.js.map +1 -1
  48. package/dist/terminal-install.d.ts +84 -0
  49. package/dist/terminal-install.d.ts.map +1 -0
  50. package/dist/terminal-install.js +306 -0
  51. package/dist/terminal-install.js.map +1 -0
  52. package/dist/weave.d.ts +0 -2
  53. package/dist/weave.d.ts.map +1 -1
  54. package/dist/weave.js +0 -2
  55. package/dist/weave.js.map +1 -1
  56. package/package.json +11 -9
  57. package/rispecs/medicine-wheel-registration.spec.md +1 -4
  58. package/LICENSE +0 -21
  59. package/dist/legacy-hch.d.ts +0 -28
  60. package/dist/legacy-hch.d.ts.map +0 -1
  61. package/dist/legacy-hch.js +0 -120
  62. package/dist/legacy-hch.js.map +0 -1
package/dist/env.js CHANGED
@@ -2,10 +2,8 @@
2
2
  * Root/env/repo resolution for the three identities.
3
3
  *
4
4
  * Precedence: explicit option (CLI flag) → MIADI_* env → legacy env → default.
5
- * The uncommitted MIADI_INQUIRY_ROOT draft in binscripts' bash_env_common is
6
- * honored as-is; INQUIRY_ROOT remains the legacy fallback.
7
5
  */
8
- export const DEFAULT_INQUIRY_ROOT = "/src/IAIP/prototypes/artefacts";
6
+ export const DEFAULT_INQUIRY_ROOT = "/a/src/IAIP/prototypes/artefacts";
9
7
  export const DEFAULT_CHRONICLE_ROOT = "/srv/miadi/episodes/miadi-chronicle";
10
8
  export const DEFAULT_INQUIRY_REPO = "miadisabelle/Etuaptmumk-RSM";
11
9
  export const DEFAULT_MW_URL = "http://127.0.0.1:8040";
@@ -18,10 +16,11 @@ function firstNonEmpty(...values) {
18
16
  }
19
17
  export function resolveEnv(options = {}, env = process.env) {
20
18
  return {
21
- inquiryRoot: firstNonEmpty(options.inquiryRoot, env.MIADI_INQUIRY_ROOT, env.INQUIRY_ROOT) ??
19
+ inquiryRoot: firstNonEmpty(options.inquiryRoot, env.MIADI_INQUIRY_DIR, env.MIADI_INQUIRY_ROOT, env.INQUIRY_ROOT) ??
22
20
  DEFAULT_INQUIRY_ROOT,
23
21
  chronicleRoot: firstNonEmpty(options.chronicleRoot, env.MIADI_CHRONICLE_ROOT) ?? DEFAULT_CHRONICLE_ROOT,
24
- repo: firstNonEmpty(options.repo, env.MIADI_INQUIRY_REPO) ?? DEFAULT_INQUIRY_REPO,
22
+ repo: firstNonEmpty(options.repo, env.MIADI_INQUIRY_GITHUB_REPO, env.MIADI_INQUIRY_REPO) ??
23
+ DEFAULT_INQUIRY_REPO,
25
24
  mwUrl: firstNonEmpty(options.mwUrl, env.MW_API_URL) ?? DEFAULT_MW_URL,
26
25
  };
27
26
  }
package/dist/env.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,gCAAgC,CAAA;AACpE,MAAM,CAAC,MAAM,sBAAsB,GAAG,qCAAqC,CAAA;AAC3E,MAAM,CAAC,MAAM,oBAAoB,GAAG,6BAA6B,CAAA;AACjE,MAAM,CAAC,MAAM,cAAc,GAAG,uBAAuB,CAAA;AAgBrD,SAAS,aAAa,CAAC,GAAG,MAA8B;IACtD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,KAAK,CAAA;IAC9D,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,UAA2B,EAAE,EAC7B,MAAyB,OAAO,CAAC,GAAG;IAEpC,OAAO;QACL,WAAW,EACT,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,kBAAkB,EAAE,GAAG,CAAC,YAAY,CAAC;YAC5E,oBAAoB;QACtB,aAAa,EACX,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,oBAAoB,CAAC,IAAI,sBAAsB;QAC1F,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,kBAAkB,CAAC,IAAI,oBAAoB;QACjF,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,cAAc;KACtE,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,kCAAkC,CAAA;AACtE,MAAM,CAAC,MAAM,sBAAsB,GAAG,qCAAqC,CAAA;AAC3E,MAAM,CAAC,MAAM,oBAAoB,GAAG,6BAA6B,CAAA;AACjE,MAAM,CAAC,MAAM,cAAc,GAAG,uBAAuB,CAAA;AAgBrD,SAAS,aAAa,CAAC,GAAG,MAA8B;IACtD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,KAAK,CAAA;IAC9D,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,UAA2B,EAAE,EAC7B,MAAyB,OAAO,CAAC,GAAG;IAEpC,OAAO;QACL,WAAW,EACT,aAAa,CACX,OAAO,CAAC,WAAW,EACnB,GAAG,CAAC,iBAAiB,EACrB,GAAG,CAAC,kBAAkB,EACtB,GAAG,CAAC,YAAY,CACjB;YACD,oBAAoB;QACtB,aAAa,EACX,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,oBAAoB,CAAC,IAAI,sBAAsB;QAC1F,IAAI,EACF,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,kBAAkB,CAAC;YAClF,oBAAoB;QACtB,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,IAAI,cAAc;KACtE,CAAA;AACH,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,11 +1,12 @@
1
1
  export * from "./env.js";
2
2
  export * from "./weave.js";
3
- export * from "./legacy-hch.js";
3
+ export * from "./issue-ref.js";
4
4
  export * from "./artefact.js";
5
5
  export * from "./episode.js";
6
6
  export * from "./tree.js";
7
7
  export * from "./sync.js";
8
8
  export * from "./issue.js";
9
+ export * from "./issue-content.js";
9
10
  export * from "./relate.js";
10
11
  export * from "./lineage.js";
11
12
  export * from "./status.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,UAAU,CAAA"}
package/dist/index.js CHANGED
@@ -1,11 +1,12 @@
1
1
  export * from "./env.js";
2
2
  export * from "./weave.js";
3
- export * from "./legacy-hch.js";
3
+ export * from "./issue-ref.js";
4
4
  export * from "./artefact.js";
5
5
  export * from "./episode.js";
6
6
  export * from "./tree.js";
7
7
  export * from "./sync.js";
8
8
  export * from "./issue.js";
9
+ export * from "./issue-content.js";
9
10
  export * from "./relate.js";
10
11
  export * from "./lineage.js";
11
12
  export * from "./status.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,OAAO,EAAE,MAAM,EAAuC,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,OAAO,EAAE,MAAM,EAAuC,MAAM,UAAU,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare function issueBodyFromArtefact(artefactDir: string, episodeName: string): Promise<string>;
2
+ //# sourceMappingURL=issue-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issue-content.d.ts","sourceRoot":"","sources":["../src/issue-content.ts"],"names":[],"mappings":"AA4BA,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAiBjB"}
@@ -0,0 +1,45 @@
1
+ import { readFile, readdir } from "node:fs/promises";
2
+ import { extname, join, relative } from "node:path";
3
+ const TEXT_EXTENSIONS = new Set([
4
+ ".md",
5
+ ".txt",
6
+ ".rst",
7
+ ".adoc",
8
+ ".json",
9
+ ".yaml",
10
+ ".yml",
11
+ ]);
12
+ const OWNED_METADATA = new Set([".weave.yaml", "AGENTS.md"]);
13
+ async function textFiles(dir, root = dir) {
14
+ const files = [];
15
+ for (const entry of await readdir(dir, { withFileTypes: true })) {
16
+ if (entry.name.startsWith(".") || OWNED_METADATA.has(entry.name))
17
+ continue;
18
+ const path = join(dir, entry.name);
19
+ if (entry.isDirectory())
20
+ files.push(...(await textFiles(path, root)));
21
+ else if (entry.isFile() && TEXT_EXTENSIONS.has(extname(entry.name).toLowerCase())) {
22
+ files.push(relative(root, path));
23
+ }
24
+ }
25
+ return files.sort();
26
+ }
27
+ export async function issueBodyFromArtefact(artefactDir, episodeName) {
28
+ const files = await textFiles(artefactDir);
29
+ const relation = [
30
+ "---",
31
+ `Inquiry artefact: \`${artefactDir}\``,
32
+ `Chronicle episode: \`${episodeName}\``,
33
+ ].join("\n");
34
+ if (files.length === 0)
35
+ return relation;
36
+ const sections = [];
37
+ for (const file of files) {
38
+ const content = (await readFile(join(artefactDir, file), "utf8")).trim();
39
+ if (content === "")
40
+ continue;
41
+ sections.push(files.length === 1 ? content : `## ${file}\n\n${content}`);
42
+ }
43
+ return sections.length === 0 ? relation : `${sections.join("\n\n")}\n\n${relation}`;
44
+ }
45
+ //# sourceMappingURL=issue-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issue-content.js","sourceRoot":"","sources":["../src/issue-content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEnD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC9B,KAAK;IACL,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;CACP,CAAC,CAAA;AAEF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAA;AAE5D,KAAK,UAAU,SAAS,CAAC,GAAW,EAAE,IAAI,GAAG,GAAG;IAC9C,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAChE,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,KAAK,CAAC,WAAW,EAAE;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;aAChE,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAClF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QAClC,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAA;AACrB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,WAAmB,EACnB,WAAmB;IAEnB,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAA;IAC1C,MAAM,QAAQ,GAAG;QACf,KAAK;QACL,uBAAuB,WAAW,IAAI;QACtC,wBAAwB,WAAW,IAAI;KACxC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEZ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAA;IAEvC,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACxE,IAAI,OAAO,KAAK,EAAE;YAAE,SAAQ;QAC5B,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,OAAO,OAAO,EAAE,CAAC,CAAA;IAC1E,CAAC;IACD,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,QAAQ,EAAE,CAAA;AACrF,CAAC"}
@@ -0,0 +1,10 @@
1
+ export interface IssueRef {
2
+ owner: string;
3
+ repo: string;
4
+ number: number;
5
+ }
6
+ export declare function parseIssueRef(ref: string): IssueRef | undefined;
7
+ export declare function formatIssueRef(ref: IssueRef): string;
8
+ export declare function issueRefFromUrl(url: string): IssueRef | undefined;
9
+ export declare function issueUrlFromRef(ref: IssueRef): string;
10
+ //# sourceMappingURL=issue-ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issue-ref.d.ts","sourceRoot":"","sources":["../src/issue-ref.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACf;AAID,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAI/D;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,CAEpD;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAIjE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,CAErD"}
@@ -0,0 +1,20 @@
1
+ const ISSUE_URL_PATTERN = /github\.com\/([^/\s]+)\/([^/\s]+)\/issues\/(\d+)/;
2
+ export function parseIssueRef(ref) {
3
+ const match = /^([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)#(\d+)$/.exec(ref.trim());
4
+ if (!match)
5
+ return undefined;
6
+ return { owner: match[1], repo: match[2], number: Number(match[3]) };
7
+ }
8
+ export function formatIssueRef(ref) {
9
+ return `${ref.owner}/${ref.repo}#${ref.number}`;
10
+ }
11
+ export function issueRefFromUrl(url) {
12
+ const match = ISSUE_URL_PATTERN.exec(url);
13
+ if (!match)
14
+ return undefined;
15
+ return { owner: match[1], repo: match[2], number: Number(match[3]) };
16
+ }
17
+ export function issueUrlFromRef(ref) {
18
+ return `https://github.com/${ref.owner}/${ref.repo}/issues/${ref.number}`;
19
+ }
20
+ //# sourceMappingURL=issue-ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issue-ref.js","sourceRoot":"","sources":["../src/issue-ref.ts"],"names":[],"mappings":"AAMA,MAAM,iBAAiB,GAAG,kDAAkD,CAAA;AAE5E,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,MAAM,KAAK,GAAG,8CAA8C,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;IAC7E,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IAC5B,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AACtE,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAa;IAC1C,OAAO,GAAG,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,EAAE,CAAA;AACjD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACzC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IAC5B,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AACtE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAa;IAC3C,OAAO,sBAAsB,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,MAAM,EAAE,CAAA;AAC3E,CAAC"}
package/dist/issue.d.ts CHANGED
@@ -1,20 +1,11 @@
1
- /**
2
- * GitHub issue creation — delegated to the sourced functions in
3
- * fn_github_issue.sh (gh CLI wrappers), the successor of issue_add_V2.sh.
4
- *
5
- * The functions write their own `.hch/` cache in the cwd; this package treats
6
- * that as fn's private cache and records the issue identity into .weave.yaml
7
- * from the parsed stdout, so nothing downstream depends on `.hch`.
8
- */
9
- export declare const ISSUE_LIB_CANDIDATES: string[];
1
+ /** GitHub issue creation through the authenticated `gh` CLI. */
10
2
  export declare class IssueCreationError extends Error {
11
3
  }
12
- export declare function resolveIssueLib(env?: NodeJS.ProcessEnv): string | undefined;
13
4
  export interface IssueCreationInput {
14
5
  title: string;
15
6
  body: string;
16
7
  repo: string;
17
- /** Working directory for issue_add — the artefact dir, so fn's .hch cache lands there. */
8
+ /** Working directory for the `gh` process. */
18
9
  cwd: string;
19
10
  env?: NodeJS.ProcessEnv;
20
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,eAAO,MAAM,oBAAoB,UAGhC,CAAA;AAED,qBAAa,kBAAmB,SAAQ,KAAK;CAAG;AAEhD,wBAAgB,eAAe,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,GAAG,SAAS,CAIxF;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,0FAA0F;IAC1F,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,CAmClF"}
1
+ {"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAQhE,qBAAa,kBAAmB,SAAQ,KAAK;CAAG;AAEhD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,8CAA8C;IAC9C,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,CAuBlF"}
package/dist/issue.js CHANGED
@@ -1,55 +1,27 @@
1
- /**
2
- * GitHub issue creation — delegated to the sourced functions in
3
- * fn_github_issue.sh (gh CLI wrappers), the successor of issue_add_V2.sh.
4
- *
5
- * The functions write their own `.hch/` cache in the cwd; this package treats
6
- * that as fn's private cache and records the issue identity into .weave.yaml
7
- * from the parsed stdout, so nothing downstream depends on `.hch`.
8
- */
1
+ /** GitHub issue creation through the authenticated `gh` CLI. */
9
2
  import { execFile } from "node:child_process";
10
- import { existsSync } from "node:fs";
11
3
  import { promisify } from "node:util";
12
- import { issueRefFromUrl, formatIssueRef, issueUrlFromRef, parseIssueRef } from "./legacy-hch.js";
4
+ import { issueRefFromUrl, formatIssueRef, issueUrlFromRef } from "./issue-ref.js";
13
5
  const execFileAsync = promisify(execFile);
14
- export const ISSUE_LIB_CANDIDATES = [
15
- "/a/src/scripts/fn_github_issue.sh",
16
- "/src/scripts/fn_github_issue.sh",
17
- ];
18
6
  export class IssueCreationError extends Error {
19
7
  }
20
- export function resolveIssueLib(env = process.env) {
21
- const override = env.INQUIRY_WEAVE_ISSUE_LIB;
22
- if (override && override.trim() !== "")
23
- return override;
24
- return ISSUE_LIB_CANDIDATES.find((candidate) => existsSync(candidate));
25
- }
26
8
  export async function createIssue(input) {
27
9
  const env = input.env ?? process.env;
28
- const lib = resolveIssueLib(env);
29
- if (!lib || !existsSync(lib)) {
30
- throw new IssueCreationError(`fn_github_issue.sh not found (tried INQUIRY_WEAVE_ISSUE_LIB, ${ISSUE_LIB_CANDIDATES.join(", ")}). ` +
31
- `Install it or pass --no-issue and create the issue manually.`);
32
- }
10
+ const gh = env.INQUIRY_WEAVE_GH_BIN?.trim() || "gh";
33
11
  let stdout;
34
12
  try {
35
- const result = await execFileAsync("bash", ["-c", '. "$0" && issue_add "$1" "$2" "$3"', lib, input.title, input.body, input.repo], { cwd: input.cwd, env: { ...env } });
13
+ const result = await execFileAsync(gh, ["issue", "create", "--repo", input.repo, "--title", input.title, "--body", input.body], { cwd: input.cwd, env: { ...env } });
36
14
  stdout = result.stdout;
37
15
  }
38
16
  catch (error) {
39
17
  const failure = error;
40
- throw new IssueCreationError(`issue_add failed (is 'gh' installed and authenticated?): ${failure.stderr || failure.stdout || failure.message}`);
41
- }
42
- // issue_add prints `* owner/repo#N` on success — authoritative capture.
43
- const refMatch = /\*\s+([A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+#\d+)/.exec(stdout);
44
- const ref = refMatch ? parseIssueRef(refMatch[1]) : undefined;
45
- if (ref) {
46
- return { issue: formatIssueRef(ref), issue_url: issueUrlFromRef(ref), stdout };
18
+ throw new IssueCreationError(`gh issue create failed (is 'gh' installed and authenticated?): ${failure.stderr || failure.stdout || failure.message}`);
47
19
  }
48
20
  const urlMatch = /https:\/\/github\.com\/[^\s]+\/issues\/\d+/.exec(stdout);
49
21
  const fromUrl = urlMatch ? issueRefFromUrl(urlMatch[0]) : undefined;
50
22
  if (fromUrl) {
51
23
  return { issue: formatIssueRef(fromUrl), issue_url: issueUrlFromRef(fromUrl), stdout };
52
24
  }
53
- throw new IssueCreationError(`could not parse issue reference from issue_add output:\n${stdout}`);
25
+ throw new IssueCreationError(`could not parse issue reference from gh output:\n${stdout}`);
54
26
  }
55
27
  //# sourceMappingURL=issue.js.map
package/dist/issue.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"issue.js","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"issue.js","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAEhE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEjF,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;AAEzC,MAAM,OAAO,kBAAmB,SAAQ,KAAK;CAAG;AAiBhD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAyB;IACzD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAA;IACpC,MAAM,EAAE,GAAG,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,IAAI,IAAI,CAAA;IACnD,IAAI,MAAc,CAAA;IAClB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC,EAAE,EACF,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,EACvF,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,CACpC,CAAA;QACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAA8D,CAAA;QAC9E,MAAM,IAAI,kBAAkB,CAC1B,kEAAkE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CACxH,CAAA;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,4CAA4C,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC1E,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACnE,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,EAAE,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IACxF,CAAC;IACD,MAAM,IAAI,kBAAkB,CAAC,oDAAoD,MAAM,EAAE,CAAC,CAAA;AAC5F,CAAC"}
File without changes
@@ -46,7 +46,7 @@ export type RegisterTransport = (record: MedicineWheelWeaveRecord) => Promise<vo
46
46
  export interface RegisterOptions {
47
47
  dryRun?: boolean;
48
48
  now?: () => Date;
49
- /** Injectable test seam, like INQUIRY_WEAVE_ISSUE_LIB for issues. */
49
+ /** Injectable transport seam for tests. */
50
50
  transport?: RegisterTransport;
51
51
  }
52
52
  export interface RegisteredWeave {
@@ -1 +1 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,WAAW,CAAA;AAQ7D,2EAA2E;AAC3E,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,CAAC,CAAA;IACR,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACvC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC1C,SAAS,EAAE;QACT,KAAK,EAAE,SAAS,CAAA;QAChB,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,CAAA;IACD,MAAM,EAAE;QACN,OAAO,EAAE,sBAAsB,CAAA;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,aAAa,EAAE,MAAM,CAAA;QACrB,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAEnF,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;IAChB,qEAAqE;IACrE,SAAS,CAAC,EAAE,iBAAiB,CAAA;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,SAAS,CAAA;IAChB,UAAU,EAAE,OAAO,CAAA;IACnB,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,wBAAwB,EAAE,CAAA;IACnC,UAAU,EAAE,eAAe,EAAE,CAAA;CAC9B;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAqB9D;AA4ED,wBAAsB,eAAe,CACnC,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAezB;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,QAAQ,EACb,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAgCzB"}
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,WAAW,CAAA;AAQ7D,2EAA2E;AAC3E,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,CAAC,CAAA;IACR,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACvC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC1C,SAAS,EAAE;QACT,KAAK,EAAE,SAAS,CAAA;QAChB,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,WAAW,CAAC,EAAE,MAAM,CAAA;KACrB,CAAA;IACD,MAAM,EAAE;QACN,OAAO,EAAE,sBAAsB,CAAA;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,aAAa,EAAE,MAAM,CAAA;QACrB,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAEnF,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;IAChB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,iBAAiB,CAAA;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,SAAS,CAAA;IAChB,UAAU,EAAE,OAAO,CAAA;IACnB,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,wBAAwB,EAAE,CAAA;IACnC,UAAU,EAAE,eAAe,EAAE,CAAA;CAC9B;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAqB9D;AA4ED,wBAAsB,eAAe,CACnC,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAezB;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,QAAQ,EACb,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,cAAc,CAAC,CAgCzB"}
package/dist/relate.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { type ArtefactIdentity } from "./artefact.js";
6
6
  import type { EpisodeIdentity } from "./episode.js";
7
- export type IssueSeedSource = "flag" | "created" | "artefact-weave" | "legacy-hch";
7
+ export type IssueSeedSource = "flag" | "created" | "artefact-weave";
8
8
  export interface RelateInput {
9
9
  artefact: ArtefactIdentity;
10
10
  episode: EpisodeIdentity;
@@ -12,8 +12,6 @@ export interface RelateInput {
12
12
  issue?: string;
13
13
  issueUrl?: string;
14
14
  issueSource?: IssueSeedSource;
15
- /** Repo assumed when legacy .hch knows only an issue id. */
16
- fallbackRepo: string;
17
15
  now?: () => Date;
18
16
  dryRun?: boolean;
19
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"relate.d.ts","sourceRoot":"","sources":["../src/relate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAcnD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,YAAY,CAAA;AAElF,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,OAAO,EAAE,eAAe,CAAA;IACxB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAA;IACpB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B,gBAAgB,EAAE,OAAO,CAAA;IACzB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,wBAAsB,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAsFtE"}
1
+ {"version":3,"file":"relate.d.ts","sourceRoot":"","sources":["../src/relate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAcnD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,gBAAgB,CAAA;AAEnE,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,OAAO,EAAE,eAAe,CAAA;IACxB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B,GAAG,CAAC,EAAE,MAAM,IAAI,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B,gBAAgB,EAAE,OAAO,CAAA;IACzB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,wBAAsB,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CA2EtE"}
package/dist/relate.js CHANGED
@@ -3,7 +3,7 @@
3
3
  * and appends the artefact's AGENTS.md back-link. No copying, no content.
4
4
  */
5
5
  import { appendBackLink } from "./artefact.js";
6
- import { parseIssueRef, issueUrlFromRef, readLegacyHch } from "./legacy-hch.js";
6
+ import { parseIssueRef, issueUrlFromRef } from "./issue-ref.js";
7
7
  import { newArtefactWeave, newEpisodeWeave, readArtefactWeave, readEpisodeWeave, upsertEpisodeLink, upsertInquiry, writeArtefactWeave, writeEpisodeWeave, WeaveError, } from "./weave.js";
8
8
  export async function relate(input) {
9
9
  const diagnostics = [];
@@ -23,17 +23,6 @@ export async function relate(input) {
23
23
  issueUrl = artefactWeave.issue_url;
24
24
  issueSource = "artefact-weave";
25
25
  }
26
- if (!issue) {
27
- const seed = await readLegacyHch(input.artefact.dir, input.fallbackRepo);
28
- if (seed) {
29
- diagnostics.push(...seed.diagnostics);
30
- if (seed.issue) {
31
- issue = seed.issue;
32
- issueUrl = seed.issue_url;
33
- issueSource = "legacy-hch";
34
- }
35
- }
36
- }
37
26
  if (!issue) {
38
27
  diagnostics.push("no GitHub issue is woven yet — pass --issue owner/repo#N or use 'inquire' to create one");
39
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"relate.js","sourceRoot":"","sources":["../src/relate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relate.js","sourceRoot":"","sources":["../src/relate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,eAAO,MAAM,UAAU,kBAAkB,CAAA;AAwKzC,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AAE/C,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,wFAAwF;IACxF,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;CAClD;AAWD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,kBAAkB,CAqClF"}
1
+ {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,eAAO,MAAM,UAAU,kBAAkB,CAAA;AA8KzC,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AAE/C,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,wFAAwF;IACxF,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;CAClD;AAWD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,kBAAkB,CAqClF"}
package/dist/skill.js CHANGED
@@ -18,7 +18,7 @@ license: MIT
18
18
  compatibility: Requires the inquiry-weave CLI from @miadi/inquiry-weave.
19
19
  metadata:
20
20
  author: Guillaume D. Isabelle
21
- version: "0.6.0"
21
+ version: "0.8.1"
22
22
  kin:
23
23
  - miaco
24
24
  - passages
@@ -59,12 +59,18 @@ surface is the proof, not the yaml edit. See
59
59
 
60
60
  \`\`\`bash
61
61
  inquiry-weave relate --artefact <name|path> --episode <num|name|path> [--issue owner/repo#N]
62
+ inquiry-weave inquire (--episode <ref> | --new-episode <slug>) --artefact <path>
63
+ [--title <text>] [--body <text> | --body-file <path>]
62
64
  inquiry-weave promote --artefact <name|path> --new-episode <slug> [--title <t>]
63
65
  inquiry-weave sync --episode <ref> [--all]
64
66
  inquiry-weave status --episode <ref> [--json]
65
67
  inquiry-weave register --episode <ref> [--dry-run]
66
68
  \`\`\`
67
69
 
70
+ \`inquire --artefact .\` uses the current folder's documents as the issue body,
71
+ adds the required \`ep<number>-\` prefix when absent, and can allocate, sync, and
72
+ register a new Chronicle episode with \`--new-episode <slug>\`.
73
+
68
74
  ## The two catalogs (cycle three seam)
69
75
 
70
76
  \`\`\`bash
@@ -91,7 +97,7 @@ authors a story; \`packages/passages\` derives a book from a vessel; the
91
97
 
92
98
  ## Environment
93
99
 
94
- \`MIADI_CHRONICLE_ROOT\` (chronicle corpus) · \`MIADI_INQUIRY_ROOT\` (artefact
100
+ \`MIADI_CHRONICLE_ROOT\` (chronicle corpus) · \`MIADI_INQUIRY_DIR\` (artefact
95
101
  vessels) · \`MIADI_STORIES_ROOT\` (Twine shelf) · \`MW_API_URL\` (medicine
96
102
  wheel). Flags \`--chronicle-root\` / \`--inquiry-root\` override per call.
97
103
 
package/dist/skill.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Install the terminal handler for `miadi-chronicle:` references.
3
+ *
4
+ * Contract: rispecs/miadi-chronicle-dsl/SPEC-TERMINAL.md §3.
5
+ *
6
+ * Two files, shipped as embedded strings so `dist/` is self-contained — the
7
+ * same shape `installSkill` uses. Hand-writing them into a home directory is
8
+ * how a working setup becomes unreproducible on the next machine.
9
+ *
10
+ * ~/.config/terminator/plugins/miadi_chronicle_url_handler.py
11
+ * ~/bin/miadi-chronicle-open
12
+ *
13
+ * The plugin makes a bare `miadi-chronicle:311` clickable in ANY output — a
14
+ * git log, a grep hit, an agent's raw text — output that knows nothing about
15
+ * miadi and will never wrap itself in an OSC 8 escape. That is why it lives
16
+ * alongside OSC 8 rather than competing with it: Terminator has two click
17
+ * paths, and only the regex one consults url_handler plugins
18
+ * (`terminal.py` — OSC 8 calls `open_url(prepare=False)` and goes straight to
19
+ * xdg-open, bypassing the plugin API entirely).
20
+ */
21
+ export declare class TerminalInstallError extends Error {
22
+ constructor(message: string);
23
+ }
24
+ export declare const PLUGIN_CLASS = "MiadiChronicleURLHandler";
25
+ export declare const PLUGIN_FILENAME = "miadi_chronicle_url_handler.py";
26
+ export declare const WRAPPER_FILENAME = "miadi-chronicle-open";
27
+ export declare const ENV_DROPIN_FILENAME = "50-miadi-chronicle.conf";
28
+ /**
29
+ * The URI regex, in one place.
30
+ *
31
+ * Accepts the rootless canonical form and the legacy `//` form. The character
32
+ * class stops at what ends a URI in running text — RFC 3986 Appendix C's point
33
+ * that a reader cannot tell a sentence's trailing period from part of the
34
+ * address. The callback strips trailing punctuation for the same reason.
35
+ */
36
+ export declare const URI_MATCH_REGEX: string;
37
+ export interface InstallTerminalOptions {
38
+ homeDir?: string;
39
+ /** Absolute path to the inquiry-weave bin the wrapper should call. */
40
+ binPath?: string;
41
+ /** Absolute path to the node executable the wrapper should use. */
42
+ nodePath?: string;
43
+ /** Default door a click opens: public | internal | local. */
44
+ defaultBase?: string;
45
+ /** Baked into the wrapper, because a GUI process inherits no environment. */
46
+ chronicleRoot?: string;
47
+ publicBase?: string;
48
+ internalBase?: string;
49
+ mwUrl?: string;
50
+ /** Environment the bakeable values are read from. */
51
+ env?: NodeJS.ProcessEnv;
52
+ force?: boolean;
53
+ dryRun?: boolean;
54
+ /** Also add the class to `enabled_plugins` in the Terminator config. */
55
+ enable?: boolean;
56
+ }
57
+ export interface InstalledFile {
58
+ path: string;
59
+ state: "written" | "exists" | "would-write";
60
+ }
61
+ export interface InstallTerminalResult {
62
+ files: InstalledFile[];
63
+ configPath: string;
64
+ configState: "enabled" | "already-enabled" | "no-config" | "not-requested" | "would-enable";
65
+ backupPath?: string;
66
+ binPath: string;
67
+ }
68
+ /**
69
+ * Install both files, and optionally enable the plugin.
70
+ *
71
+ * Idempotent: an existing file is left alone unless `force` is set, so running
72
+ * this twice is safe and running it after an upgrade is the repair.
73
+ */
74
+ export declare function installTerminalHandler(options?: InstallTerminalOptions): InstallTerminalResult;
75
+ export interface UninstallTerminalResult {
76
+ removed: string[];
77
+ configState: "disabled" | "not-enabled" | "no-config";
78
+ }
79
+ /** Remove both files and drop the class from `enabled_plugins`. */
80
+ export declare function uninstallTerminalHandler(options?: {
81
+ homeDir?: string;
82
+ dryRun?: boolean;
83
+ }): UninstallTerminalResult;
84
+ //# sourceMappingURL=terminal-install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-install.d.ts","sourceRoot":"","sources":["../src/terminal-install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAMH,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI5B;AAED,eAAO,MAAM,YAAY,6BAA6B,CAAA;AACtD,eAAO,MAAM,eAAe,mCAAmC,CAAA;AAC/D,eAAO,MAAM,gBAAgB,yBAAyB,CAAA;AACtD,eAAO,MAAM,mBAAmB,4BAA4B,CAAA;AAE5D;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,QACwG,CAAA;AAoKpI,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa,CAAA;CAC5C;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,aAAa,EAAE,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,SAAS,GAAG,iBAAiB,GAAG,WAAW,GAAG,eAAe,GAAG,cAAc,CAAA;IAC3F,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;CAChB;AAWD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,GAAE,sBAA2B,GACnC,qBAAqB,CAkFvB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,WAAW,EAAE,UAAU,GAAG,aAAa,GAAG,WAAW,CAAA;CACtD;AAED,mEAAmE;AACnE,wBAAgB,wBAAwB,CACtC,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,uBAAuB,CA0BzB"}