@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.
- package/README.md +159 -188
- package/dist/artefact.d.ts +8 -0
- package/dist/artefact.d.ts.map +1 -1
- package/dist/artefact.js +18 -2
- package/dist/artefact.js.map +1 -1
- package/dist/bin.js +0 -0
- package/dist/chronicle-dsl.d.ts +191 -0
- package/dist/chronicle-dsl.d.ts.map +1 -0
- package/dist/chronicle-dsl.js +327 -0
- package/dist/chronicle-dsl.js.map +1 -0
- package/dist/chronicle-terminal.d.ts +305 -0
- package/dist/chronicle-terminal.d.ts.map +1 -0
- package/dist/chronicle-terminal.js +449 -0
- package/dist/chronicle-terminal.js.map +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +335 -34
- package/dist/cli.js.map +1 -1
- package/dist/env.d.ts +1 -3
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +4 -5
- package/dist/env.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/issue-content.d.ts +2 -0
- package/dist/issue-content.d.ts.map +1 -0
- package/dist/issue-content.js +45 -0
- package/dist/issue-content.js.map +1 -0
- package/dist/issue-ref.d.ts +10 -0
- package/dist/issue-ref.d.ts.map +1 -0
- package/dist/issue-ref.js +20 -0
- package/dist/issue-ref.js.map +1 -0
- package/dist/issue.d.ts +2 -11
- package/dist/issue.d.ts.map +1 -1
- package/dist/issue.js +6 -34
- package/dist/issue.js.map +1 -1
- package/dist/mcp-server.js +0 -0
- package/dist/register.d.ts +1 -1
- package/dist/register.d.ts.map +1 -1
- package/dist/relate.d.ts +1 -3
- package/dist/relate.d.ts.map +1 -1
- package/dist/relate.js +1 -12
- package/dist/relate.js.map +1 -1
- package/dist/skill.d.ts.map +1 -1
- package/dist/skill.js +8 -2
- package/dist/skill.js.map +1 -1
- package/dist/terminal-install.d.ts +84 -0
- package/dist/terminal-install.d.ts.map +1 -0
- package/dist/terminal-install.js +306 -0
- package/dist/terminal-install.js.map +1 -0
- package/dist/weave.d.ts +0 -2
- package/dist/weave.d.ts.map +1 -1
- package/dist/weave.js +0 -2
- package/dist/weave.js.map +1 -1
- package/package.json +11 -9
- package/rispecs/medicine-wheel-registration.spec.md +1 -4
- package/LICENSE +0 -21
- package/dist/legacy-hch.d.ts +0 -28
- package/dist/legacy-hch.d.ts.map +0 -1
- package/dist/legacy-hch.js +0 -120
- 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) ??
|
|
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
|
|
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 "./
|
|
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.d.ts.map
CHANGED
|
@@ -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,
|
|
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 "./
|
|
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,
|
|
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 @@
|
|
|
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
|
|
8
|
+
/** Working directory for the `gh` process. */
|
|
18
9
|
cwd: string;
|
|
19
10
|
env?: NodeJS.ProcessEnv;
|
|
20
11
|
}
|
package/dist/issue.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issue.d.ts","sourceRoot":"","sources":["../src/issue.ts"],"names":[],"mappings":"AAAA
|
|
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
|
|
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
|
|
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(
|
|
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(`
|
|
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
|
|
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":"AAAA
|
|
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"}
|
package/dist/mcp-server.js
CHANGED
|
File without changes
|
package/dist/register.d.ts
CHANGED
|
@@ -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
|
|
49
|
+
/** Injectable transport seam for tests. */
|
|
50
50
|
transport?: RegisterTransport;
|
|
51
51
|
}
|
|
52
52
|
export interface RegisteredWeave {
|
package/dist/register.d.ts.map
CHANGED
|
@@ -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,
|
|
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"
|
|
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
|
}
|
package/dist/relate.d.ts.map
CHANGED
|
@@ -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,
|
|
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
|
|
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
|
}
|
package/dist/relate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relate.js","sourceRoot":"","sources":["../src/relate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAyB,MAAM,eAAe,CAAA;AAErE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"relate.js","sourceRoot":"","sources":["../src/relate.ts"],"names":[],"mappings":"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"}
|
package/dist/skill.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,eAAO,MAAM,UAAU,kBAAkB,CAAA;
|
|
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.
|
|
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) · \`
|
|
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":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEnD,MAAM,CAAC,MAAM,UAAU,GAAG,eAAe,CAAA;AAEzC,MAAM,QAAQ,GAAG
|
|
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"}
|