@floh-solutions/pharos-cli 0.12.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +37 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/task.d.ts +13 -0
- package/dist/commands/task.d.ts.map +1 -1
- package/dist/commands/task.js +106 -4
- package/dist/commands/task.js.map +1 -1
- package/package.json +3 -3
- package/skill/SKILL.md +77 -1
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAoB1D,OAAO,EAKL,KAAK,QAAQ,EAEd,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAoB1D,OAAO,EAKL,KAAK,QAAQ,EAEd,MAAM,aAAa,CAAC;AAmQrB,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,gDAAgD;IAChD,SAAS,CAAC,EAAE,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;IAChD,+EAA+E;IAC/E,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CAChC;AAED,wBAAsB,GAAG,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAOhE"}
|
package/dist/cli.js
CHANGED
|
@@ -113,6 +113,12 @@ COMMANDS
|
|
|
113
113
|
their titles, and the CONTENT of any linked wiki
|
|
114
114
|
pages plus the discussion on them. This is the
|
|
115
115
|
command the rest exists to support.
|
|
116
|
+
--children fetch the children too, whole. An epic and
|
|
117
|
+
what is under it in ONE call instead of one
|
|
118
|
+
call per child
|
|
119
|
+
--depth <n> more generations than one (max 5)
|
|
120
|
+
--compact flatten identities to display names and drop
|
|
121
|
+
board-extension keys. ~24% smaller, measured
|
|
116
122
|
--no-wiki-content do not fetch linked page content
|
|
117
123
|
--no-wiki-comments do not fetch comments on linked pages
|
|
118
124
|
--no-related-titles ids only; skip the batch that names them
|
|
@@ -288,6 +294,9 @@ async function dispatch(io, options) {
|
|
|
288
294
|
"no-wiki-content": { type: "boolean" },
|
|
289
295
|
"no-wiki-comments": { type: "boolean" },
|
|
290
296
|
"no-related-titles": { type: "boolean" },
|
|
297
|
+
children: { type: "boolean" },
|
|
298
|
+
depth: { type: "string" },
|
|
299
|
+
compact: { type: "boolean" },
|
|
291
300
|
}
|
|
292
301
|
: command === "query"
|
|
293
302
|
? {
|
|
@@ -478,6 +487,11 @@ async function dispatch(io, options) {
|
|
|
478
487
|
wikiContent: values["no-wiki-content"] !== true,
|
|
479
488
|
wikiComments: values["no-wiki-comments"] !== true,
|
|
480
489
|
relatedTitles: values["no-related-titles"] !== true,
|
|
490
|
+
// `--children` is `--depth 1` and exists because that is the case
|
|
491
|
+
// worth a name: an epic and the items under it. `--depth` wins when
|
|
492
|
+
// both are given, since it is the more specific instruction.
|
|
493
|
+
depth: taskDepth(values["depth"], values["children"] === true),
|
|
494
|
+
compact: values["compact"] === true,
|
|
481
495
|
});
|
|
482
496
|
case "wiki":
|
|
483
497
|
// Two wiki verbs are not page verbs and are handled before `runWiki` sees
|
|
@@ -649,6 +663,29 @@ function expectRev(raw) {
|
|
|
649
663
|
}
|
|
650
664
|
return value;
|
|
651
665
|
}
|
|
666
|
+
/**
|
|
667
|
+
* How deep `task` should walk the hierarchy.
|
|
668
|
+
*
|
|
669
|
+
* Capped at 5. Not a guess about how deep a board goes — the Basic process is
|
|
670
|
+
* three levels — but a guard: depth is a MULTIPLIER on requests, and a typo of
|
|
671
|
+
* `--depth 50` on a wide epic is thousands of calls and a rate limit before
|
|
672
|
+
* anybody can stop it.
|
|
673
|
+
*/
|
|
674
|
+
function taskDepth(raw, children) {
|
|
675
|
+
if (typeof raw !== "string")
|
|
676
|
+
return children ? 1 : 0;
|
|
677
|
+
const value = Number(raw);
|
|
678
|
+
if (!Number.isInteger(value) || value < 0) {
|
|
679
|
+
throw usageError(`--depth takes a whole number of 0 or more, not "${raw}".`);
|
|
680
|
+
}
|
|
681
|
+
if (value > 5) {
|
|
682
|
+
throw usageError(`--depth is capped at 5; ${value} would be thousands of calls.`, {
|
|
683
|
+
given: value,
|
|
684
|
+
maximum: 5,
|
|
685
|
+
});
|
|
686
|
+
}
|
|
687
|
+
return value;
|
|
688
|
+
}
|
|
652
689
|
function top(raw) {
|
|
653
690
|
if (typeof raw !== "string")
|
|
654
691
|
return undefined;
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/task.d.ts
CHANGED
|
@@ -18,6 +18,19 @@ export interface TaskOptions {
|
|
|
18
18
|
wikiContent: boolean;
|
|
19
19
|
wikiComments: boolean;
|
|
20
20
|
relatedTitles: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* How many generations of children to fetch as well. `0` is this item alone,
|
|
23
|
+
* which is the default and what every earlier version did.
|
|
24
|
+
*
|
|
25
|
+
* **Why this exists.** The header above claims `task` is one call, and for a
|
|
26
|
+
* leaf it is. For an EPIC it was one call plus one per child: measured on
|
|
27
|
+
* Epic #39, nine calls and ~38 KB to answer one question about one epic. The
|
|
28
|
+
* `related[]` array already names the children, so an agent knew *what* they
|
|
29
|
+
* were — and still had to fetch each one to know what any of them SAID.
|
|
30
|
+
*/
|
|
31
|
+
depth: number;
|
|
32
|
+
/** Flatten identities and drop board-extension noise — see ``compact``. */
|
|
33
|
+
compact: boolean;
|
|
21
34
|
}
|
|
22
35
|
export declare function runTask(io: Io, session: Session, positionals: readonly string[], options: TaskOptions): Promise<ExitCode>;
|
|
23
36
|
//# sourceMappingURL=task.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"AAEA,OAAO,EAA8B,KAAK,QAAQ,EAAE,KAAK,EAAE,EAAE,MAAM,cAAc,CAAC;AAClF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"AAEA,OAAO,EAA8B,KAAK,QAAQ,EAAE,KAAK,EAAE,EAAE,MAAM,cAAc,CAAC;AAClF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB;;;;;;;;;OASG;IACH,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,OAAO,EAAE,OAAO,CAAC;CAClB;AAeD,wBAAsB,OAAO,CAC3B,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,QAAQ,CAAC,CAkBnB"}
|
package/dist/commands/task.js
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import { taskContext } from "@floh-solutions/ado-core";
|
|
2
2
|
import { emit, emitText, usageError } from "../output.js";
|
|
3
|
+
/**
|
|
4
|
+
* How many child fetches are in flight at once.
|
|
5
|
+
*
|
|
6
|
+
* Six rather than unbounded: an epic with forty children would otherwise open
|
|
7
|
+
* forty connections and invite the rate limiter, and `taskContext` is itself
|
|
8
|
+
* several requests per item. Rather than a number tuned to nothing, this is the
|
|
9
|
+
* smallest value that keeps a typical epic (eight children) to two rounds.
|
|
10
|
+
*/
|
|
11
|
+
const CHILD_CONCURRENCY = 6;
|
|
3
12
|
export async function runTask(io, session, positionals, options) {
|
|
4
13
|
const raw = positionals[0];
|
|
5
14
|
if (raw === undefined)
|
|
@@ -7,12 +16,95 @@ export async function runTask(io, session, positionals, options) {
|
|
|
7
16
|
if (!/^\d+$/.test(raw)) {
|
|
8
17
|
throw usageError(`"${raw}" is not a work item id.`, { given: raw });
|
|
9
18
|
}
|
|
10
|
-
const
|
|
19
|
+
const fetch = async (id) => taskContext(session.client, id, {
|
|
11
20
|
includeWikiContent: options.wikiContent,
|
|
12
21
|
includeWikiComments: options.wikiComments,
|
|
13
22
|
includeRelatedTitles: options.relatedTitles,
|
|
14
23
|
});
|
|
15
|
-
|
|
24
|
+
const tree = await withChildren(await fetch(Number(raw)), options.depth, fetch);
|
|
25
|
+
const shaped = options.compact ? compact(tree) : tree;
|
|
26
|
+
return session.pretty ? emitText(io, render(shaped)) : emit(io, shaped);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Fetches the hierarchy under an item, breadth-first and bounded.
|
|
30
|
+
*
|
|
31
|
+
* **A child that cannot be read becomes a `problems[]` entry, not a failure.**
|
|
32
|
+
* One unreadable item out of forty must not cost the other thirty-nine — a
|
|
33
|
+
* partial tree that says what is missing is far more useful than an error, and
|
|
34
|
+
* it is the same rule `taskContext` already applies to a wiki page it cannot
|
|
35
|
+
* reach.
|
|
36
|
+
*/
|
|
37
|
+
async function withChildren(context, depth, fetch) {
|
|
38
|
+
if (depth <= 0)
|
|
39
|
+
return context;
|
|
40
|
+
const ids = context.related
|
|
41
|
+
.filter((item) => item.rel === "System.LinkTypes.Hierarchy-Forward")
|
|
42
|
+
.map((item) => item.id);
|
|
43
|
+
if (ids.length === 0)
|
|
44
|
+
return context;
|
|
45
|
+
const children = [];
|
|
46
|
+
const problems = [];
|
|
47
|
+
for (let start = 0; start < ids.length; start += CHILD_CONCURRENCY) {
|
|
48
|
+
const batch = ids.slice(start, start + CHILD_CONCURRENCY);
|
|
49
|
+
const settled = await Promise.all(batch.map(async (id) => {
|
|
50
|
+
try {
|
|
51
|
+
return await withChildren(await fetch(id), depth - 1, fetch);
|
|
52
|
+
}
|
|
53
|
+
catch (error) {
|
|
54
|
+
problems.push(`child #${id} could not be read: ${error instanceof Error ? error.message : String(error)}`);
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
}));
|
|
58
|
+
for (const child of settled)
|
|
59
|
+
if (child !== undefined)
|
|
60
|
+
children.push(child);
|
|
61
|
+
}
|
|
62
|
+
return {
|
|
63
|
+
...context,
|
|
64
|
+
children,
|
|
65
|
+
problems: problems.length === 0 ? context.problems : [...context.problems, ...problems],
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* The same context with the parts no agent reads taken out.
|
|
70
|
+
*
|
|
71
|
+
* **Measured, on work item #40: 2,466 of 10,367 bytes — 24% — were identity
|
|
72
|
+
* blobs.** `System.CreatedBy` and its three siblings each carry `url`,
|
|
73
|
+
* `_links.avatar.href`, `imageUrl`, `descriptor` and a GUID, and what gets used
|
|
74
|
+
* is `displayName`. Over the nine calls an epic used to cost, that is some nine
|
|
75
|
+
* kilobytes of avatar URLs.
|
|
76
|
+
*
|
|
77
|
+
* Two rules, and deliberately only two — this trims noise, it does not decide
|
|
78
|
+
* which FIELDS matter:
|
|
79
|
+
*
|
|
80
|
+
* - an object with a `displayName` collapses to that string. The `--pretty`
|
|
81
|
+
* renderer has always done this (see ``identity``); the JSON path simply
|
|
82
|
+
* never did.
|
|
83
|
+
* - `WEF_…` keys go. They are the board extension's own per-team markers —
|
|
84
|
+
* `WEF_<guid>_Kanban.Column` — and they are already in `System.BoardColumn`.
|
|
85
|
+
*
|
|
86
|
+
* Nothing else is dropped. A field bag that quietly loses fields would be worse
|
|
87
|
+
* than a large one, because the loss is invisible at the point it matters.
|
|
88
|
+
*/
|
|
89
|
+
function compact(context) {
|
|
90
|
+
const fields = {};
|
|
91
|
+
for (const [name, value] of Object.entries(context.fields)) {
|
|
92
|
+
if (name.startsWith("WEF_"))
|
|
93
|
+
continue;
|
|
94
|
+
if (typeof value === "object" && value !== null) {
|
|
95
|
+
const display = value.displayName;
|
|
96
|
+
if (typeof display === "string") {
|
|
97
|
+
fields[name] = display;
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
fields[name] = value;
|
|
102
|
+
}
|
|
103
|
+
return {
|
|
104
|
+
...context,
|
|
105
|
+
fields,
|
|
106
|
+
...(context.children === undefined ? {} : { children: context.children.map(compact) }),
|
|
107
|
+
};
|
|
16
108
|
}
|
|
17
109
|
/**
|
|
18
110
|
* The human rendering.
|
|
@@ -22,7 +114,7 @@ export async function runTask(io, session, positionals, options) {
|
|
|
22
114
|
* LAST and never omitted — a context with a silent hole in it is worse than no
|
|
23
115
|
* context, because it is reasoned from confidently.
|
|
24
116
|
*/
|
|
25
|
-
function render(context) {
|
|
117
|
+
function render(context, indent = "") {
|
|
26
118
|
const field = (name) => {
|
|
27
119
|
const value = context.fields[name];
|
|
28
120
|
return typeof value === "string" && value.trim() !== "" ? value : undefined;
|
|
@@ -94,7 +186,17 @@ function render(context) {
|
|
|
94
186
|
for (const problem of context.problems)
|
|
95
187
|
lines.push(` - ${problem}`);
|
|
96
188
|
}
|
|
97
|
-
|
|
189
|
+
// The children LAST and set off by a rule, so a long epic still reads as one
|
|
190
|
+
// item followed by its parts rather than as an undifferentiated wall.
|
|
191
|
+
if (context.children !== undefined && context.children.length > 0) {
|
|
192
|
+
lines.push("", `${"=".repeat(60)}`, `## Children of #${context.id} (${context.children.length})`);
|
|
193
|
+
for (const child of context.children) {
|
|
194
|
+
lines.push("", "-".repeat(60), render(child, `${indent} `));
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
return indent === ""
|
|
198
|
+
? lines.join("\n")
|
|
199
|
+
: lines.map((line) => (line === "" ? line : `${indent}${line}`)).join("\n");
|
|
98
200
|
}
|
|
99
201
|
/** `System.LinkTypes.Hierarchy-Forward` reads as `Child`. */
|
|
100
202
|
function shortRel(rel) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAoB,MAAM,0BAA0B,CAAC;AAEzE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAA0B,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@floh-solutions/pharos-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"description": "Azure DevOps from a headless shell, for an agent: the whole context of a task in one call, and the wiki/comment verbs Microsoft's MCP server does not ship.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"author": "FLOH Solutions",
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"node": ">=22"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@floh-solutions/
|
|
28
|
-
"@floh-solutions/
|
|
27
|
+
"@floh-solutions/ado-core": "0.7.0",
|
|
28
|
+
"@floh-solutions/plan-to-board": "0.1.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/node": "^22.10.2",
|
package/skill/SKILL.md
CHANGED
|
@@ -20,6 +20,9 @@ query WHICH work items — assigned to you, in a sprint
|
|
|
20
20
|
task <id> one work item, whole: fields, comments,
|
|
21
21
|
attachments, relations WITH titles, and the
|
|
22
22
|
content + discussion of every linked wiki page
|
|
23
|
+
--children an EPIC and everything under it, in
|
|
24
|
+
ONE call. --depth <n> for deeper (max 5)
|
|
25
|
+
--compact flatten identities, drop board keys
|
|
23
26
|
create <type> --title "…" one work item. --parent goes in the SAME patch
|
|
24
27
|
update <id> change a field: --state --priority --assignee
|
|
25
28
|
--title, or --field Name=value for anything else
|
|
@@ -276,7 +279,8 @@ guards are, and they are the reason to come back here rather than hand-roll.
|
|
|
276
279
|
## Start every task with one command
|
|
277
280
|
|
|
278
281
|
```bash
|
|
279
|
-
pharos task <id>
|
|
282
|
+
pharos task <id> # a leaf
|
|
283
|
+
pharos task <id> --children --compact # an EPIC and everything under it
|
|
280
284
|
```
|
|
281
285
|
|
|
282
286
|
One call: the item, its comments, its attachments, its relations **with their
|
|
@@ -291,6 +295,78 @@ Anything that could not be fetched appears in `problems[]`. **If that array is
|
|
|
291
295
|
not empty, say so before acting** — a context with an invisible hole in it gets
|
|
292
296
|
reasoned from confidently.
|
|
293
297
|
|
|
298
|
+
### What it actually returns
|
|
299
|
+
|
|
300
|
+
**Read this before writing a parser.** The shapes below are the CLI's, not the
|
|
301
|
+
Azure DevOps API's, and they differ in exactly the places you would guess wrong:
|
|
302
|
+
|
|
303
|
+
```jsonc
|
|
304
|
+
{
|
|
305
|
+
"id": 40,
|
|
306
|
+
"fields": { // the raw ADO field bag
|
|
307
|
+
"System.Title": "…",
|
|
308
|
+
"System.State": "To Do",
|
|
309
|
+
"System.Description": "plain text, real newlines — NOT html",
|
|
310
|
+
"System.AssignedTo": { "displayName": "…", "uniqueName": "…" }
|
|
311
|
+
},
|
|
312
|
+
"comments": [
|
|
313
|
+
{ "id": 1741895,
|
|
314
|
+
"text": "I have updated the description",
|
|
315
|
+
"createdBy": "André Kwakernaat", // a STRING, already flattened
|
|
316
|
+
"createdDate": "2026-08-05T10:15:43.167Z" }
|
|
317
|
+
],
|
|
318
|
+
"attachments": [],
|
|
319
|
+
"related": [ // titles and states ALREADY resolved
|
|
320
|
+
{ "id": 46, "rel": "System.LinkTypes.Hierarchy-Forward",
|
|
321
|
+
"title": "Skill: …", "state": "To Do" }
|
|
322
|
+
],
|
|
323
|
+
"wikiPages": [],
|
|
324
|
+
"problems": [],
|
|
325
|
+
"children": [] // only with --children/--depth
|
|
326
|
+
}
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
Three things that trip up a parser written against the REST API:
|
|
330
|
+
|
|
331
|
+
- **`comments[].createdBy` is a string**, not an identity object. There is no
|
|
332
|
+
`.displayName` on it.
|
|
333
|
+
- **Description and comment text are plain text**, already converted. Do not
|
|
334
|
+
strip tags; there are none.
|
|
335
|
+
- **A field is ABSENT when unset, not empty.** `fields["System.Description"]` is
|
|
336
|
+
simply missing on an item nobody has written one for — which is a *finding*
|
|
337
|
+
worth reporting, not a crash. Measured: seven of eight children of one epic.
|
|
338
|
+
|
|
339
|
+
`--pretty` renders all of the above as readable markdown and drops the identity
|
|
340
|
+
noise. It is not only "for a human" — for reading a single item it is usually
|
|
341
|
+
the better format for you too.
|
|
342
|
+
|
|
343
|
+
### Starting from an EPIC
|
|
344
|
+
|
|
345
|
+
An epic is not a big task, and the loop below is written for a leaf. Handed a
|
|
346
|
+
parent, the first question is **which children are actually specified**:
|
|
347
|
+
|
|
348
|
+
```bash
|
|
349
|
+
pharos task 39 --children --compact
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
One call instead of one per child — measured on a real epic, nine calls and
|
|
353
|
+
~42 KB became one call and ~22 KB. Then, **before proposing any work**, report
|
|
354
|
+
the split:
|
|
355
|
+
|
|
356
|
+
> #40 has a complete 5,694-character spec. #41–#47 have no description at all.
|
|
357
|
+
> Seven of eight are placeholders.
|
|
358
|
+
|
|
359
|
+
That is the single most useful thing to say about a parent item, and it is the
|
|
360
|
+
thing an agent is most likely to skip — the titles read like a plan, so an
|
|
361
|
+
implementation gets inferred from them and nobody notices it was invented.
|
|
362
|
+
|
|
363
|
+
`--depth <n>` walks further (max 5). A child that cannot be read becomes a
|
|
364
|
+
`problems[]` entry rather than failing the whole call, so a partial tree still
|
|
365
|
+
tells you what is missing.
|
|
366
|
+
|
|
367
|
+
`--compact` flattens identities to display names and drops the `WEF_…` board
|
|
368
|
+
extension keys. Measured at ~24% of an item's bytes and nothing reads them.
|
|
369
|
+
|
|
294
370
|
## Reading the outcome
|
|
295
371
|
|
|
296
372
|
Success is JSON on stdout; failure is JSON on stderr with a non-zero exit. An
|