@rryando/arcs 3.2.0 → 3.2.2
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 +2 -1
- package/dist/cli/arcs-orchestrate.d.ts +1 -1
- package/dist/cli/arcs-orchestrate.d.ts.map +1 -1
- package/dist/cli/arcs-orchestrate.js +14 -10
- package/dist/cli/arcs-orchestrate.js.map +1 -1
- package/dist/cli/commands/diagnostics.js +1 -1
- package/dist/cli/commands/diagnostics.js.map +1 -1
- package/dist/cli/commands/diagram.js +57 -3
- package/dist/cli/commands/diagram.js.map +1 -1
- package/dist/cli/commands/index.d.ts +1 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +1 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/maintenance.js +14 -6
- package/dist/cli/commands/maintenance.js.map +1 -1
- package/dist/cli/commands/project.js +12 -6
- package/dist/cli/commands/project.js.map +1 -1
- package/dist/cli/commands/proposal.d.ts +2 -0
- package/dist/cli/commands/proposal.d.ts.map +1 -0
- package/dist/cli/commands/proposal.js +509 -0
- package/dist/cli/commands/proposal.js.map +1 -0
- package/dist/cli/commands/task.js +84 -3
- package/dist/cli/commands/task.js.map +1 -1
- package/dist/cli/md-renderer.d.ts.map +1 -1
- package/dist/cli/md-renderer.js +45 -11
- package/dist/cli/md-renderer.js.map +1 -1
- package/dist/utils/diagram-generator.d.ts.map +1 -1
- package/dist/utils/diagram-generator.js +8 -1
- package/dist/utils/diagram-generator.js.map +1 -1
- package/dist/utils/diagram-store.d.ts.map +1 -1
- package/dist/utils/diagram-store.js.map +1 -1
- package/dist/utils/graphify-knowledge.d.ts +19 -3
- package/dist/utils/graphify-knowledge.d.ts.map +1 -1
- package/dist/utils/graphify-knowledge.js +45 -58
- package/dist/utils/graphify-knowledge.js.map +1 -1
- package/dist/utils/graphify.d.ts +58 -3
- package/dist/utils/graphify.d.ts.map +1 -1
- package/dist/utils/graphify.js +175 -42
- package/dist/utils/graphify.js.map +1 -1
- package/dist/utils/json-schemas.d.ts +146 -0
- package/dist/utils/json-schemas.d.ts.map +1 -1
- package/dist/utils/json-schemas.js +22 -0
- package/dist/utils/json-schemas.js.map +1 -1
- package/dist/utils/proposal-store.d.ts +64 -0
- package/dist/utils/proposal-store.d.ts.map +1 -0
- package/dist/utils/proposal-store.js +161 -0
- package/dist/utils/proposal-store.js.map +1 -0
- package/dist/utils/task-store.d.ts +20 -0
- package/dist/utils/task-store.d.ts.map +1 -1
- package/dist/utils/task-store.js +36 -0
- package/dist/utils/task-store.js.map +1 -1
- package/opencode/arcs/bundle-runtime.json +3 -0
- package/opencode/arcs/manifest.json +14 -4
- package/opencode/arcs/prompts/arcs-orchestrate-caveman.txt +14 -10
- package/opencode/arcs/prompts/arcs-orchestrate.txt +14 -10
- package/opencode/arcs/prompts/graph-explorer.txt +114 -0
- package/opencode/arcs/skills/enriching-graphify-proposals/SKILL.md +170 -0
- package/opencode/arcs/skills/init-project/SKILL.md +18 -11
- package/opencode/arcs/skills/to-diagram/SKILL.md +1 -1
- package/package.json +1 -1
- package/scripts/build-opencode-bundle.mjs +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-schemas.js","sourceRoot":"","sources":["../../src/utils/json-schemas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"json-schemas.js","sourceRoot":"","sources":["../../src/utils/json-schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage layer for `~/.arcs/projects/<slug>/proposals/graphify.json`.
|
|
3
|
+
*
|
|
4
|
+
* Graphify ingestion writes here (instead of `knowledge/`) so a downstream
|
|
5
|
+
* gate can review proposals before they are promoted into the durable
|
|
6
|
+
* knowledge index. Reads/writes mirror the rest of the storage layer:
|
|
7
|
+
* Zod-validated I/O, atomic writes via `withLock`, descriptive errors.
|
|
8
|
+
*/
|
|
9
|
+
export type ProposalKind = "architecture" | "module" | "gotcha" | "pattern";
|
|
10
|
+
export interface Proposal {
|
|
11
|
+
id: string;
|
|
12
|
+
kind: ProposalKind;
|
|
13
|
+
label: string;
|
|
14
|
+
/**
|
|
15
|
+
* Structural facts extracted from the graph. Treated permissively here
|
|
16
|
+
* (`Record<string, unknown>`); T007 will define the precise shape.
|
|
17
|
+
*/
|
|
18
|
+
structuralFacts: Record<string, unknown>;
|
|
19
|
+
sourceFiles: Array<{
|
|
20
|
+
path: string;
|
|
21
|
+
anchor?: string;
|
|
22
|
+
}>;
|
|
23
|
+
suggestedDedupCandidates: Array<{
|
|
24
|
+
id: string;
|
|
25
|
+
overlap: string[];
|
|
26
|
+
}>;
|
|
27
|
+
}
|
|
28
|
+
export interface ProposalsFile {
|
|
29
|
+
version: 1;
|
|
30
|
+
generatedAt: string;
|
|
31
|
+
graphFingerprint: string;
|
|
32
|
+
proposals: Proposal[];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Read the proposals file. Returns null if it does not exist.
|
|
36
|
+
* Throws an `invalidFileFormat` DagError if the file fails Zod validation.
|
|
37
|
+
*/
|
|
38
|
+
export declare function readProposals(slug: string): Promise<ProposalsFile | null>;
|
|
39
|
+
/**
|
|
40
|
+
* Write the proposals file atomically through `withLock`.
|
|
41
|
+
* Validates the payload with Zod before writing; creates `proposals/`
|
|
42
|
+
* if missing; produces 2-space JSON with a trailing newline.
|
|
43
|
+
*/
|
|
44
|
+
export declare function writeProposals(slug: string, data: ProposalsFile): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Remove a proposal by id. Returns true if a proposal was removed,
|
|
47
|
+
* false if no proposal with that id existed (or the file does not exist).
|
|
48
|
+
* Idempotent — never throws on a missing target.
|
|
49
|
+
*/
|
|
50
|
+
export declare function removeProposal(slug: string, proposalId: string): Promise<boolean>;
|
|
51
|
+
/**
|
|
52
|
+
* For each proposal, scan the project's `knowledge/index.json` for entries
|
|
53
|
+
* whose `sourceFiles[].path` overlap with the proposal's `sourceFiles[].path`.
|
|
54
|
+
* Returns proposals with `suggestedDedupCandidates` populated.
|
|
55
|
+
*
|
|
56
|
+
* Pure — does not write anywhere. Caller decides when (and whether) to persist.
|
|
57
|
+
*/
|
|
58
|
+
export declare function annotateDedupCandidates(slug: string, proposals: Proposal[]): Promise<Proposal[]>;
|
|
59
|
+
/**
|
|
60
|
+
* Compute a SHA256 hex digest of the given graph.json content.
|
|
61
|
+
* Deterministic — identical input bytes always produce the same digest.
|
|
62
|
+
*/
|
|
63
|
+
export declare function computeGraphFingerprint(graphJsonContent: string): string;
|
|
64
|
+
//# sourceMappingURL=proposal-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proposal-store.d.ts","sourceRoot":"","sources":["../../src/utils/proposal-store.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgBH,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE5E,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,wBAAwB,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CACpE;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,CAAC,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB;AAsBD;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAgC/E;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBrF;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAyBvF;AAMD;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,QAAQ,EAAE,GACpB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAgCrB;AAMD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAExE"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage layer for `~/.arcs/projects/<slug>/proposals/graphify.json`.
|
|
3
|
+
*
|
|
4
|
+
* Graphify ingestion writes here (instead of `knowledge/`) so a downstream
|
|
5
|
+
* gate can review proposals before they are promoted into the durable
|
|
6
|
+
* knowledge index. Reads/writes mirror the rest of the storage layer:
|
|
7
|
+
* Zod-validated I/O, atomic writes via `withLock`, descriptive errors.
|
|
8
|
+
*/
|
|
9
|
+
import { createHash } from "node:crypto";
|
|
10
|
+
import { readFile } from "node:fs/promises";
|
|
11
|
+
import { join } from "node:path";
|
|
12
|
+
import { invalidFileFormat } from "./errors.js";
|
|
13
|
+
import { withLock } from "./file-lock.js";
|
|
14
|
+
import { readJsonSafe } from "./json.js";
|
|
15
|
+
import { knowledgeIndexSchema, proposalsFileSchema } from "./json-schemas.js";
|
|
16
|
+
import { getProjectDir } from "./paths.js";
|
|
17
|
+
import { ensureDir, fileExists, writeJson } from "./storage-utils.js";
|
|
18
|
+
// ---------------------------------------------------------------------------
|
|
19
|
+
// Path helpers
|
|
20
|
+
// ---------------------------------------------------------------------------
|
|
21
|
+
function proposalsDirPath(slug) {
|
|
22
|
+
return join(getProjectDir(slug), "proposals");
|
|
23
|
+
}
|
|
24
|
+
function proposalsFilePath(slug) {
|
|
25
|
+
return join(proposalsDirPath(slug), "graphify.json");
|
|
26
|
+
}
|
|
27
|
+
function knowledgeIndexPath(slug) {
|
|
28
|
+
return join(getProjectDir(slug), "knowledge", "index.json");
|
|
29
|
+
}
|
|
30
|
+
// ---------------------------------------------------------------------------
|
|
31
|
+
// Read / write
|
|
32
|
+
// ---------------------------------------------------------------------------
|
|
33
|
+
/**
|
|
34
|
+
* Read the proposals file. Returns null if it does not exist.
|
|
35
|
+
* Throws an `invalidFileFormat` DagError if the file fails Zod validation.
|
|
36
|
+
*/
|
|
37
|
+
export async function readProposals(slug) {
|
|
38
|
+
const filePath = proposalsFilePath(slug);
|
|
39
|
+
if (!(await fileExists(filePath))) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
let raw;
|
|
43
|
+
try {
|
|
44
|
+
raw = await readFile(filePath, "utf-8");
|
|
45
|
+
}
|
|
46
|
+
catch {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
let parsed;
|
|
50
|
+
try {
|
|
51
|
+
parsed = JSON.parse(raw);
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
throw invalidFileFormat(filePath, `not valid JSON: ${err instanceof Error ? err.message : String(err)}`);
|
|
55
|
+
}
|
|
56
|
+
const result = proposalsFileSchema.safeParse(parsed);
|
|
57
|
+
if (!result.success) {
|
|
58
|
+
const issues = result.error.issues
|
|
59
|
+
.map((i) => `${i.path.join(".") || "(root)"}: ${i.message}`)
|
|
60
|
+
.join("; ");
|
|
61
|
+
throw invalidFileFormat(filePath, issues);
|
|
62
|
+
}
|
|
63
|
+
return result.data;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Write the proposals file atomically through `withLock`.
|
|
67
|
+
* Validates the payload with Zod before writing; creates `proposals/`
|
|
68
|
+
* if missing; produces 2-space JSON with a trailing newline.
|
|
69
|
+
*/
|
|
70
|
+
export async function writeProposals(slug, data) {
|
|
71
|
+
const filePath = proposalsFilePath(slug);
|
|
72
|
+
const dirPath = proposalsDirPath(slug);
|
|
73
|
+
const result = proposalsFileSchema.safeParse(data);
|
|
74
|
+
if (!result.success) {
|
|
75
|
+
const issues = result.error.issues
|
|
76
|
+
.map((i) => `${i.path.join(".") || "(root)"}: ${i.message}`)
|
|
77
|
+
.join("; ");
|
|
78
|
+
throw invalidFileFormat(filePath, issues);
|
|
79
|
+
}
|
|
80
|
+
await ensureDir(dirPath);
|
|
81
|
+
await withLock(filePath, async () => {
|
|
82
|
+
await writeJson(filePath, result.data);
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Remove a proposal by id. Returns true if a proposal was removed,
|
|
87
|
+
* false if no proposal with that id existed (or the file does not exist).
|
|
88
|
+
* Idempotent — never throws on a missing target.
|
|
89
|
+
*/
|
|
90
|
+
export async function removeProposal(slug, proposalId) {
|
|
91
|
+
const filePath = proposalsFilePath(slug);
|
|
92
|
+
if (!(await fileExists(filePath))) {
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
let removed = false;
|
|
96
|
+
await withLock(filePath, async () => {
|
|
97
|
+
const current = await readProposals(slug);
|
|
98
|
+
if (!current) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
const next = current.proposals.filter((p) => p.id !== proposalId);
|
|
102
|
+
if (next.length === current.proposals.length) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
removed = true;
|
|
106
|
+
const updated = { ...current, proposals: next };
|
|
107
|
+
await writeJson(filePath, updated);
|
|
108
|
+
});
|
|
109
|
+
return removed;
|
|
110
|
+
}
|
|
111
|
+
// ---------------------------------------------------------------------------
|
|
112
|
+
// Dedup-candidate annotation
|
|
113
|
+
// ---------------------------------------------------------------------------
|
|
114
|
+
/**
|
|
115
|
+
* For each proposal, scan the project's `knowledge/index.json` for entries
|
|
116
|
+
* whose `sourceFiles[].path` overlap with the proposal's `sourceFiles[].path`.
|
|
117
|
+
* Returns proposals with `suggestedDedupCandidates` populated.
|
|
118
|
+
*
|
|
119
|
+
* Pure — does not write anywhere. Caller decides when (and whether) to persist.
|
|
120
|
+
*/
|
|
121
|
+
export async function annotateDedupCandidates(slug, proposals) {
|
|
122
|
+
const indexPath = knowledgeIndexPath(slug);
|
|
123
|
+
const rawIndex = await readJsonSafe(indexPath);
|
|
124
|
+
const entries = (() => {
|
|
125
|
+
if (!rawIndex)
|
|
126
|
+
return [];
|
|
127
|
+
const result = knowledgeIndexSchema.safeParse(rawIndex);
|
|
128
|
+
if (!result.success) {
|
|
129
|
+
// A malformed knowledge index is not this module's problem to surface;
|
|
130
|
+
// treat it as "no candidates" so graphify can proceed. Knowledge-store
|
|
131
|
+
// owns the rebuild path.
|
|
132
|
+
return [];
|
|
133
|
+
}
|
|
134
|
+
return result.data.entries;
|
|
135
|
+
})();
|
|
136
|
+
return proposals.map((proposal) => {
|
|
137
|
+
const proposalPaths = new Set(proposal.sourceFiles.map((f) => f.path));
|
|
138
|
+
const candidates = [];
|
|
139
|
+
for (const entry of entries) {
|
|
140
|
+
if (!entry.sourceFiles || entry.sourceFiles.length === 0) {
|
|
141
|
+
continue;
|
|
142
|
+
}
|
|
143
|
+
const overlap = entry.sourceFiles.map((f) => f.path).filter((p) => proposalPaths.has(p));
|
|
144
|
+
if (overlap.length > 0) {
|
|
145
|
+
candidates.push({ id: entry.id, overlap });
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return { ...proposal, suggestedDedupCandidates: candidates };
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
// ---------------------------------------------------------------------------
|
|
152
|
+
// Graph fingerprint
|
|
153
|
+
// ---------------------------------------------------------------------------
|
|
154
|
+
/**
|
|
155
|
+
* Compute a SHA256 hex digest of the given graph.json content.
|
|
156
|
+
* Deterministic — identical input bytes always produce the same digest.
|
|
157
|
+
*/
|
|
158
|
+
export function computeGraphFingerprint(graphJsonContent) {
|
|
159
|
+
return createHash("sha256").update(graphJsonContent, "utf-8").digest("hex");
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=proposal-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proposal-store.js","sourceRoot":"","sources":["../../src/utils/proposal-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,14 @@ export interface TaskMeta {
|
|
|
15
15
|
planId?: string;
|
|
16
16
|
dependsOn?: string[];
|
|
17
17
|
sourceFiles?: import("./storage-utils.js").FileRef[];
|
|
18
|
+
/** Per-node `%% scope:` metadata for plan diagrams (paths/dirs in scope). */
|
|
19
|
+
scope?: string;
|
|
20
|
+
/** Per-node `%% acceptance:` metadata: human-readable acceptance criterion. */
|
|
21
|
+
acceptance?: string;
|
|
22
|
+
/** Per-node `%% verify:` metadata: shell command to verify task completion. */
|
|
23
|
+
verify?: string;
|
|
24
|
+
/** Per-node `%% skill:` metadata: which skill to load when executing the task. */
|
|
25
|
+
skill?: string;
|
|
18
26
|
createdAt: string;
|
|
19
27
|
updatedAt: string;
|
|
20
28
|
}
|
|
@@ -28,6 +36,10 @@ export interface CreateTaskInput {
|
|
|
28
36
|
planId?: string;
|
|
29
37
|
dependsOn?: string[];
|
|
30
38
|
sourceFiles?: import("./storage-utils.js").FileRef[];
|
|
39
|
+
scope?: string;
|
|
40
|
+
acceptance?: string;
|
|
41
|
+
verify?: string;
|
|
42
|
+
skill?: string;
|
|
31
43
|
now?: string;
|
|
32
44
|
}
|
|
33
45
|
export interface UpdateTaskInput {
|
|
@@ -38,6 +50,14 @@ export interface UpdateTaskInput {
|
|
|
38
50
|
planId?: string | null;
|
|
39
51
|
dependsOn?: string[] | null;
|
|
40
52
|
sourceFiles?: import("./storage-utils.js").FileRef[];
|
|
53
|
+
/** Pass `null` to clear; pass string to set. */
|
|
54
|
+
scope?: string | null;
|
|
55
|
+
/** Pass `null` to clear; pass string to set. */
|
|
56
|
+
acceptance?: string | null;
|
|
57
|
+
/** Pass `null` to clear; pass string to set. */
|
|
58
|
+
verify?: string | null;
|
|
59
|
+
/** Pass `null` to clear; pass string to set. */
|
|
60
|
+
skill?: string | null;
|
|
41
61
|
now?: string;
|
|
42
62
|
}
|
|
43
63
|
export declare function renderTasksMd(projectDir: string, index: TaskIndex): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-store.d.ts","sourceRoot":"","sources":["../../src/utils/task-store.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6BH,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMpE,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,oBAAoB,EAAE,UAAU,CAAC;IAChD,QAAQ,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAC;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,oBAAoB,EAAE,OAAO,EAAE,CAAC;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,SAAS;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAMD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,oBAAoB,EAAE,UAAU,CAAC;IACjD,QAAQ,CAAC,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,oBAAoB,EAAE,OAAO,EAAE,CAAC;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,oBAAoB,EAAE,UAAU,CAAC;IACjD,QAAQ,CAAC,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,oBAAoB,EAAE,OAAO,EAAE,CAAC;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAkED,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAgCvF;AAMD,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"task-store.d.ts","sourceRoot":"","sources":["../../src/utils/task-store.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/task-store.js
CHANGED
|
@@ -120,6 +120,10 @@ export async function createTask(projectDir, input) {
|
|
|
120
120
|
...(input.planId && { planId: input.planId }),
|
|
121
121
|
...(input.dependsOn && input.dependsOn.length > 0 && { dependsOn: input.dependsOn }),
|
|
122
122
|
...(sourceFiles && { sourceFiles }),
|
|
123
|
+
...(input.scope && { scope: input.scope }),
|
|
124
|
+
...(input.acceptance && { acceptance: input.acceptance }),
|
|
125
|
+
...(input.verify && { verify: input.verify }),
|
|
126
|
+
...(input.skill && { skill: input.skill }),
|
|
123
127
|
createdAt: ts,
|
|
124
128
|
updatedAt: ts,
|
|
125
129
|
};
|
|
@@ -193,6 +197,38 @@ export async function updateTask(projectDir, input) {
|
|
|
193
197
|
task.sourceFiles = sanitizeFileRefs(input.sourceFiles);
|
|
194
198
|
}
|
|
195
199
|
}
|
|
200
|
+
if (input.scope !== undefined) {
|
|
201
|
+
if (input.scope === null || input.scope === "") {
|
|
202
|
+
delete task.scope;
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
task.scope = input.scope;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
if (input.acceptance !== undefined) {
|
|
209
|
+
if (input.acceptance === null || input.acceptance === "") {
|
|
210
|
+
delete task.acceptance;
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
task.acceptance = input.acceptance;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
if (input.verify !== undefined) {
|
|
217
|
+
if (input.verify === null || input.verify === "") {
|
|
218
|
+
delete task.verify;
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
task.verify = input.verify;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
if (input.skill !== undefined) {
|
|
225
|
+
if (input.skill === null || input.skill === "") {
|
|
226
|
+
delete task.skill;
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
task.skill = input.skill;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
196
232
|
task.updatedAt = nowISO(input.now);
|
|
197
233
|
await writeTaskIndex(projectDir, index);
|
|
198
234
|
await renderTasksMd(projectDir, index);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-store.js","sourceRoot":"","sources":["../../src/utils/task-store.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EACL,SAAS,EACT,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,GACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"task-store.js","sourceRoot":"","sources":["../../src/utils/task-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -88,11 +88,21 @@
|
|
|
88
88
|
{
|
|
89
89
|
"path": [
|
|
90
90
|
"agent",
|
|
91
|
-
"
|
|
92
|
-
"model"
|
|
91
|
+
"graph-explorer"
|
|
93
92
|
],
|
|
94
|
-
"value":
|
|
95
|
-
|
|
93
|
+
"value": {
|
|
94
|
+
"description": "DAG-first codebase and knowledge exploration specialist. Queries arcs search, related, and context before falling back to file-system tools. Replaces vanilla explore for ARCS projects.",
|
|
95
|
+
"mode": "subagent",
|
|
96
|
+
"model": "github-copilot/claude-haiku-4.5",
|
|
97
|
+
"permission": {
|
|
98
|
+
"edit": "allow",
|
|
99
|
+
"bash": "allow",
|
|
100
|
+
"webfetch": "allow",
|
|
101
|
+
"mcp": "allow",
|
|
102
|
+
"external_directory": { "*": "allow" }
|
|
103
|
+
},
|
|
104
|
+
"prompt": "{file:./prompts/graph-explorer.txt}"
|
|
105
|
+
}
|
|
96
106
|
},
|
|
97
107
|
{
|
|
98
108
|
"path": [
|
|
@@ -134,7 +134,7 @@ Discovery: `arcs --commands --json` (cache once per session). Batch op names are
|
|
|
134
134
|
| List tasks | `arcs task list <slug> --json` |
|
|
135
135
|
| List plans | `arcs plan list <slug> --json` |
|
|
136
136
|
| Search | `arcs search <slug> "<query>" --json` |
|
|
137
|
-
| Diagram ready | `arcs diagram ready <slug> <planId> --json` |
|
|
137
|
+
| Diagram ready | `arcs diagram ready <slug> <planId> --json` — returns `{ready, blocked, inProgress, done}` arrays |
|
|
138
138
|
| Validate | `arcs validate <slug> --json` |
|
|
139
139
|
| Task transition | `arcs task transition <slug> <taskId> <status> --planId=<id> --diagramNodeId=<node> --json` |
|
|
140
140
|
| Batch writes | `arcs batch --file=ops.json --json` |
|
|
@@ -174,7 +174,7 @@ flowchart TD
|
|
|
174
174
|
Before acting, state: (1) detected intent, (2) workflow plan, (3) assumptions.
|
|
175
175
|
|
|
176
176
|
### Clarification Discipline
|
|
177
|
-
- Gather context FIRST (T0 +
|
|
177
|
+
- Gather context FIRST (T0 + graph-explorer sub-agent). Questions come AFTER.
|
|
178
178
|
- Challenge before accepting: "What breaks without this? Who is blocked?" If answer is hypothetical, push back.
|
|
179
179
|
- Ask only when 2+ materially divergent irreversible paths exist. One question, 2-4 numbered options.
|
|
180
180
|
- Trivial ambiguities → decide and declare, don't ask.
|
|
@@ -260,7 +260,7 @@ Use `recommendedSurface` to pick the routing branch: `QUEUE` → EXECUTE, `PLAN`
|
|
|
260
260
|
|
|
261
261
|
| Agent | Use when | Core skills it loads |
|
|
262
262
|
|-------|----------|---------------------|
|
|
263
|
-
| `
|
|
263
|
+
| `graph-explorer` | Codebase reads, knowledge graph queries, DAG body fetches, "where does X live", "what depends on Y", quick recon — DAG first, file-system fallback | none (read-only) |
|
|
264
264
|
| `software-engineer` | Implementation: write code, run tests, ship features, follow plan tasks | quick-dev, code-agent, test-driven-development, executing-plans, finishing-a-development-branch |
|
|
265
265
|
| `system-architect` | Module boundaries, plan creation, migration design, cross-project structure, diagram-as-execution-map authoring | brainstorming, writing-plans, to-diagram, dispatching-parallel-agents |
|
|
266
266
|
| `tech-architect` | Deep analysis without edits, refactor guidance, trade-off evaluation, structural root-cause | brainstorming, writing-plans |
|
|
@@ -276,8 +276,8 @@ Use `recommendedSurface` to pick the routing branch: `QUEUE` → EXECUTE, `PLAN`
|
|
|
276
276
|
|
|
277
277
|
| Situation | Primary agent | Notes |
|
|
278
278
|
|-----------|--------------|-------|
|
|
279
|
-
| Codebase read / "where is X" | `
|
|
280
|
-
| DAG body read beyond T0 | `
|
|
279
|
+
| Codebase read / "where is X" | `graph-explorer` | DAG first (arcs search/related/context), file-system fallback |
|
|
280
|
+
| DAG body read beyond T0 | `graph-explorer` | Pass `arcs <get> --body --json` calls |
|
|
281
281
|
| INIT — repo analysis (architecture) | `system-architect` | Owns architecture knowledge entries |
|
|
282
282
|
| INIT — repo analysis (tech stack, features) | `docs-researcher` | Owns reference + feature entries |
|
|
283
283
|
| BRAINSTORM scoping | `system-architect` (design open) or `tech-architect` (analysis-heavy) | |
|
|
@@ -292,6 +292,7 @@ Use `recommendedSurface` to pick the routing branch: `QUEUE` → EXECUTE, `PLAN`
|
|
|
292
292
|
| External research / docs | `docs-researcher` | |
|
|
293
293
|
| 2+ independent problems | parallel fan-out across typed agents | Load `dispatching-parallel-agents` |
|
|
294
294
|
| Multi-step plan with independent leaves | `software-engineer` × N coordinated by orchestrator | Load `subagent-driven-development` |
|
|
295
|
+
| Pending graphify enrichment after init/sync | calling agent (or sub-agent) loads `enriching-graphify-proposals` | When envelope has `pending_enrichment: true` — drives `arcs proposal list/promote/drop` |
|
|
295
296
|
|
|
296
297
|
**Anti-pattern:** dispatching `software-engineer` for analysis, audit, review, debugging, or research.
|
|
297
298
|
|
|
@@ -310,14 +311,14 @@ flowchart TD
|
|
|
310
311
|
A -->|executing pre-written plan| EP[executing-plans]
|
|
311
312
|
```
|
|
312
313
|
|
|
313
|
-
### Skill Catalogue (
|
|
314
|
+
### Skill Catalogue (15 surviving skills)
|
|
314
315
|
|
|
315
316
|
| Skill | Load when |
|
|
316
317
|
|-------|----------|
|
|
317
318
|
| `quick-dev` | Bounded change, API known, rename/refactor/extract/config nudge |
|
|
318
319
|
| `code-agent` | 50–90% clear, 1–2 open decisions resolvable by repo inspection |
|
|
319
320
|
| `test-driven-development` | Any feature or bugfix where a failing test can be written first |
|
|
320
|
-
| `brainstorming` | Design open, scope ambiguous,
|
|
321
|
+
| `brainstorming` | Design open, scope ambiguous, requires discovery work before plan |
|
|
321
322
|
| `writing-plans` | Have a spec, need a structured multi-step plan |
|
|
322
323
|
| `executing-plans` | Plan exists, execute tasks in separate session with checkpoints |
|
|
323
324
|
| `subagent-driven-development` | Multi-step plan with independent tasks in current session |
|
|
@@ -327,6 +328,7 @@ flowchart TD
|
|
|
327
328
|
| `deep-pr-review` | GitHub PR link with "deep review" trigger |
|
|
328
329
|
| `requesting-code-review` | Self-review gate at phase/feature completion |
|
|
329
330
|
| `caveman-commit` | Writing git commit messages |
|
|
331
|
+
| `enriching-graphify-proposals` | `arcs project init` or `arcs graphify-sync` returned `pending_enrichment: true` |
|
|
330
332
|
|
|
331
333
|
> **Note:** `confidence-gate` and `verification-before-completion` have been replaced by the `devil-advocate` subagent dispatched at phase checkpoints.
|
|
332
334
|
|
|
@@ -398,11 +400,12 @@ CLI:
|
|
|
398
400
|
3. Present summary → user confirms → `arcs project init`
|
|
399
401
|
4. `arcs project update-doc × 4`
|
|
400
402
|
5. Fan out (if needed): `system-architect` (architecture entries) + `docs-researcher` (tech-stack, features) + `tech-architect` (couplings, gotchas) → collect proposals → dedup → `arcs knowledge create × N`
|
|
403
|
+
6. **Proposal-gate enrichment:** if `arcs project init`'s envelope returned `data.graphify.pending_enrichment === true`, load the `enriching-graphify-proposals` skill on the calling agent (or dispatch a sub-agent with that skill). The skill reads `arcs proposal list <slug> --json`, decides per-proposal verdicts (keep / merge / drop), and persists results via `arcs proposal promote` and `arcs proposal drop`. Graphify never writes directly to the knowledge surface — promotion is the only path from proposal to knowledge entry.
|
|
401
404
|
|
|
402
405
|
**Constraints:**
|
|
403
406
|
- Do NOT read repo to infer name/description — gather from user or T0
|
|
404
407
|
- See the `init-project` skill for full category table and worked example
|
|
405
|
-
- Graphify (if on PATH): `arcs project init` auto-runs extraction
|
|
408
|
+
- Graphify (if on PATH): `arcs project init` auto-runs extraction and writes structural proposals to `proposals/graphify.json`. When the envelope returns `pending_enrichment: true`, load `enriching-graphify-proposals` and consume via `arcs proposal list/promote/drop`. The previous direct-write knowledge ingestion has been replaced — graphify never writes directly to the knowledge surface anymore.
|
|
406
409
|
|
|
407
410
|
### BRAINSTORM Workflow
|
|
408
411
|
|
|
@@ -435,7 +438,7 @@ CLI:
|
|
|
435
438
|
- `arcs next` is dependency-aware (topological sort) — it returns the first task whose `dependsOn` are all done. Use it as the primary task selection mechanism.
|
|
436
439
|
- `arcs task transition` atomically updates task status + diagram node. MUST pass both `--planId` and `--diagramNodeId` (both required for diagram patch)
|
|
437
440
|
- Sub-agents NEVER edit `.mmd` files — agents must NOT manually patch `.mmd` for status transitions. Scope changes reported back, orchestrator regenerates via `arcs diagram sort-metadata <slug> <planId> --json`
|
|
438
|
-
- `arcs diagram ready` after each transition to discover newly-unblocked nodes
|
|
441
|
+
- `arcs diagram ready` after each transition to discover newly-unblocked nodes — read `data.ready` (and `data.blocked` to surface what's still gated)
|
|
439
442
|
- If blocked → note blocker, advance to next unblocked task
|
|
440
443
|
|
|
441
444
|
**Auto-sync triggers** (any one sufficient): 3+ transitions, `lastSyncedAt` > 7 days, plan reached `done`.
|
|
@@ -447,6 +450,7 @@ CLI:
|
|
|
447
450
|
3. Delegate to arcs-docs sub-agent with T0 context + validate output + staleness info
|
|
448
451
|
4. Sub-agent: audit + repair + write checkpoints (`lastSyncedAt`, `lastSyncGitCommit`, `lastSyncStats`) via ARCS CLI
|
|
449
452
|
5. Receive sync report → present to user
|
|
453
|
+
6. **Proposal-gate enrichment:** if SYNC includes `arcs graphify-sync` and that command returned `data.graphify.pending_enrichment === true`, dispatch the `enriching-graphify-proposals` skill (same protocol as INIT step 6) before declaring SYNC complete. New proposals from the latest extraction must be triaged in the same session that surfaced them.
|
|
450
454
|
|
|
451
455
|
**arcs-docs sub-agent covers:**
|
|
452
456
|
overview.md, tasks.md, dependencies.md, knowledge.md, plans/ status, knowledge/ accuracy, .diagram.mmd diagram drift (classDef mismatch, phantom nodes), AGENTS.md staleness, sourceFiles existence. Graph recalculation includes `task_blocks_task` edges derived from `dependsOn` fields.
|
|
@@ -463,7 +467,7 @@ Gaps: [anything needing attention]
|
|
|
463
467
|
|
|
464
468
|
### EXPLORE Workflow
|
|
465
469
|
|
|
466
|
-
T0 orient → dispatch `
|
|
470
|
+
T0 orient → dispatch `graph-explorer` sub-agent per question → if durable discovery: `arcs knowledge create` → report findings.
|
|
467
471
|
|
|
468
472
|
### MULTI Workflow
|
|
469
473
|
|