@sjawhar/pi-legion 10.8.3 → 10.10.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/legion.js
CHANGED
|
@@ -16171,7 +16171,7 @@ function ompCapabilityHost() {
|
|
|
16171
16171
|
// package.json
|
|
16172
16172
|
var package_default = {
|
|
16173
16173
|
name: "@sjawhar/pi-legion",
|
|
16174
|
-
version: "10.
|
|
16174
|
+
version: "10.10.0",
|
|
16175
16175
|
license: "Apache-2.0",
|
|
16176
16176
|
type: "module",
|
|
16177
16177
|
omp: {
|
|
@@ -16183,7 +16183,7 @@ var package_default = {
|
|
|
16183
16183
|
]
|
|
16184
16184
|
},
|
|
16185
16185
|
legion: {
|
|
16186
|
-
daemonApiVersion:
|
|
16186
|
+
daemonApiVersion: 32
|
|
16187
16187
|
},
|
|
16188
16188
|
repository: {
|
|
16189
16189
|
type: "git",
|
|
@@ -16340,6 +16340,7 @@ var legionPhaseView = exports_external.strictObject({
|
|
|
16340
16340
|
rounds: exports_external.number().int().nonnegative()
|
|
16341
16341
|
});
|
|
16342
16342
|
var legionPullRequestView = exports_external.strictObject({
|
|
16343
|
+
repo: nonEmptyString,
|
|
16343
16344
|
number: exports_external.number().int().positive(),
|
|
16344
16345
|
head: nonEmptyString,
|
|
16345
16346
|
checksVerdict: nonEmptyString.optional(),
|
|
@@ -16380,6 +16381,8 @@ var legionIssue = exports_external.strictObject({
|
|
|
16380
16381
|
generation: exports_external.number().int().nonnegative(),
|
|
16381
16382
|
phase: exports_external.enum(LEGION_PHASES),
|
|
16382
16383
|
status: nonEmptyString,
|
|
16384
|
+
repo: nonEmptyString.optional(),
|
|
16385
|
+
defaultBranch: nonEmptyString.optional(),
|
|
16383
16386
|
holdReason: exports_external.literal("escalated").optional(),
|
|
16384
16387
|
architect: legionClaimView.optional(),
|
|
16385
16388
|
workers: exports_external.partialRecord(exports_external.enum(LEGION_ROLES), legionPhaseView),
|
|
@@ -16418,6 +16421,29 @@ var legionCapabilityState = exports_external.strictObject({
|
|
|
16418
16421
|
configLine: nonEmptyString.optional(),
|
|
16419
16422
|
source: exports_external.enum(["configuration", "boot"]).optional()
|
|
16420
16423
|
});
|
|
16424
|
+
var legionCacheView = exports_external.strictObject({
|
|
16425
|
+
repo: nonEmptyString,
|
|
16426
|
+
sandbox: nonEmptyString,
|
|
16427
|
+
state: exports_external.enum(["starting", "cloning", "ready", "failing", "refused"]),
|
|
16428
|
+
reason: nonEmptyString.optional(),
|
|
16429
|
+
ready: exports_external.boolean(),
|
|
16430
|
+
address: nonEmptyString.optional(),
|
|
16431
|
+
head: nonEmptyString.optional(),
|
|
16432
|
+
lastFetchAt: timestamp.optional(),
|
|
16433
|
+
bytes: exports_external.number().int().positive().optional(),
|
|
16434
|
+
healthError: nonEmptyString.optional(),
|
|
16435
|
+
retainedUntil: timestamp.optional()
|
|
16436
|
+
});
|
|
16437
|
+
var legionRepositories = exports_external.strictObject({
|
|
16438
|
+
owners: exports_external.array(nonEmptyString),
|
|
16439
|
+
mapped: exports_external.array(exports_external.strictObject({
|
|
16440
|
+
repo: nonEmptyString,
|
|
16441
|
+
default: exports_external.boolean(),
|
|
16442
|
+
cache: legionCacheView.optional()
|
|
16443
|
+
})),
|
|
16444
|
+
refused: exports_external.array(exports_external.strictObject({ repo: nonEmptyString, reason: nonEmptyString })),
|
|
16445
|
+
caches: exports_external.array(legionCacheView)
|
|
16446
|
+
});
|
|
16421
16447
|
var LegionStateResponse = exports_external.strictObject({
|
|
16422
16448
|
daemon: daemonInfo,
|
|
16423
16449
|
admission: legionAdmission,
|
|
@@ -16427,7 +16453,8 @@ var LegionStateResponse = exports_external.strictObject({
|
|
|
16427
16453
|
strandedClaims: exports_external.array(legionStrandedClaim),
|
|
16428
16454
|
controllerLocator: legionControllerLocator.optional(),
|
|
16429
16455
|
agentSecretsLogin: legionAgentSecretsLoginView.optional(),
|
|
16430
|
-
capabilities: exports_external.array(legionCapabilityState)
|
|
16456
|
+
capabilities: exports_external.array(legionCapabilityState),
|
|
16457
|
+
repositories: legionRepositories
|
|
16431
16458
|
});
|
|
16432
16459
|
var LegionRegisterResponse = exports_external.strictObject({
|
|
16433
16460
|
claimToken: nonEmptyString,
|
|
@@ -404,6 +404,7 @@ active phase worker.
|
|
|
404
404
|
| `child-status` | A child of your tree left the workflow or re-entered it; the notice's reason names the child and its new status. `todo` (a human's move, your `release_children`, or your `rerun_child`) means the child runs again under your tree from planning, and the daemon starts it; you start nothing. `backlog`, `icebox` or `triage` (a human's move, or your `park_child`) means the daemon has suspended the child's workers, and it advances no further until it is set back to `todo`. What the rest of the tree does is your decision. |
|
|
405
405
|
| `child-closed` | Read the child completion and remaining open children. Re-scope open work, park obsolete work with `park_child`, and release an appropriate next wave with `release_children`. When a worker waits on this child for a missing surface (see `phase-finished`), tell it to continue with `envoy_publish` to its role topic. The last child's close is not the end-game (section 3). |
|
|
406
406
|
| `child-release-stalled` | Its `reason` names a child your `release_children` released while Dispatch already showed it `todo`, and that child's parent, whose release has not reached the daemon after three tries. Read the parent's record with the `legion` tool's `read_record` (`issue` the parent); run `release_children` for the child again once the parent is recorded in your tree, and tell the controller if it never is. |
|
|
407
|
+
| `child-not-recorded` | Its `reason` names a child your tree did not record and why: its repository resolves to none (neither it nor an ancestor names one, and the project has no default), or to one not mapped to the project, or to one the daemon leaves out for a missing GitHub App. The daemon said why on the child too. Set the child's repository to one of the project's (`dispatch issue-update --repo owner/name`), then release it again with `release_children`; tell the controller when the repository it needs is not served. |
|
|
407
408
|
| `design-approved` | Its `version` is the approved one. A human approved the root spec document at its current version; the gate is open. Proceed to section 2 — except on a root whose catch-up said `handed_over`: its workers already run their phases, so start nothing; the approval releases any READY the gate refused. One whose `version` is the version a human's own answer to a decision block wrote, after an earlier approval (Dispatch carried that approval to it, section 1), opens nothing new: carry on, and release no wave because of it. |
|
|
408
409
|
| `design-changes-requested` | Its `version` and `reason`. A human asked for changes to the root spec at `version`, for `reason`. Revise the spec as the reason asks and request approval again as section 1 says; stay parked; the gate is closed. |
|
|
409
410
|
| `phase-finished` | The daemon has already moved the issue to its next phase by its fixed table and started that phase's role; you start nothing. Read the committed handoff for the finishing phase; if it shows unresolved gaps, tell the role now working the issue (`envoy_publish` to its role topic). A `planner` notice that names a departure from the spec's design defers to section 1's full condition: when the approved Summary, Acceptance, scope and settled decisions still hold, the plan is the record; otherwise change the root spec and request approval again as section 1 says. A `reviewer` notice whose GitHub review is `CHANGES_REQUESTED` needs nothing from you: the daemon has returned the issue to `implementing` (Dispatch `in_progress`) and started the **implementer**, whose correction goes through the tester and the reviewer again, never straight to retro. A `reviewer` notice with an `APPROVED` review means the daemon has started retro (step 5). An `implementer` notice for `production_check` is its production report: read the record on the pull request and the issue, then run step 7. A `tester` notice with `verdict: "fail"` — its handoff carries `implementerProof.verdict: "rejected"`, or a failure naming the production-like proof — has gone back to the **implementer** by the daemon's table; never supply the proof from another role. A worker that reports no surface reaches the changed path sends that report instead of completing its phase, so the daemon starts nothing more on that issue and the worker stays idle in its session, not suspended: file a child issue in this tree to build the surface (infrastructure, tooling, or a skill), and when that child's `child-closed` arrives, tell the waiting worker to continue with `envoy_publish` to its role topic. That report is never a reason to advance the phase. |
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sjawhar/pi-legion",
|
|
3
|
-
"version": "10.
|
|
3
|
+
"version": "10.10.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"omp": {
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
]
|
|
13
13
|
},
|
|
14
14
|
"legion": {
|
|
15
|
-
"daemonApiVersion":
|
|
15
|
+
"daemonApiVersion": 32
|
|
16
16
|
},
|
|
17
17
|
"repository": {
|
|
18
18
|
"type": "git",
|