@bluewombat/runtime 0.8.0 → 0.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/README.md +236 -142
- package/SPECS.md +138 -97
- package/dist/cli.js +35 -37
- package/dist/cli.js.map +1 -1
- package/dist/config/agent-shorthand.d.ts +24 -4
- package/dist/config/agent-shorthand.d.ts.map +1 -1
- package/dist/config/agent-shorthand.js +65 -28
- package/dist/config/agent-shorthand.js.map +1 -1
- package/dist/config/defaults.d.ts +0 -2
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +0 -2
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/find-config.d.ts +3 -2
- package/dist/config/find-config.d.ts.map +1 -1
- package/dist/config/find-config.js +4 -4
- package/dist/config/find-config.js.map +1 -1
- package/dist/config/home.d.ts +2 -0
- package/dist/config/home.d.ts.map +1 -1
- package/dist/config/home.js +4 -2
- package/dist/config/home.js.map +1 -1
- package/dist/config/load-config.d.ts +2 -2
- package/dist/config/load-config.d.ts.map +1 -1
- package/dist/config/load-config.js +342 -73
- package/dist/config/load-config.js.map +1 -1
- package/dist/config/parse-args.d.ts +1 -1
- package/dist/config/parse-args.d.ts.map +1 -1
- package/dist/config/parse-args.js +132 -103
- package/dist/config/parse-args.js.map +1 -1
- package/dist/config/types.d.ts +142 -38
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +13 -1
- package/dist/config/types.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/loop/authority.d.ts +41 -5
- package/dist/loop/authority.d.ts.map +1 -1
- package/dist/loop/authority.js +68 -24
- package/dist/loop/authority.js.map +1 -1
- package/dist/loop/context.d.ts +23 -3
- package/dist/loop/context.d.ts.map +1 -1
- package/dist/loop/deliveries.d.ts +16 -16
- package/dist/loop/deliveries.d.ts.map +1 -1
- package/dist/loop/deliveries.js +35 -187
- package/dist/loop/deliveries.js.map +1 -1
- package/dist/loop/describe.d.ts +4 -6
- package/dist/loop/describe.d.ts.map +1 -1
- package/dist/loop/describe.js +2 -2
- package/dist/loop/describe.js.map +1 -1
- package/dist/loop/drive.d.ts +11 -7
- package/dist/loop/drive.d.ts.map +1 -1
- package/dist/loop/drive.js +24 -38
- package/dist/loop/drive.js.map +1 -1
- package/dist/loop/features.d.ts +23 -0
- package/dist/loop/features.d.ts.map +1 -0
- package/dist/loop/features.js +834 -0
- package/dist/loop/features.js.map +1 -0
- package/dist/loop/journal.d.ts +1 -1
- package/dist/loop/journal.js +2 -2
- package/dist/loop/journal.js.map +1 -1
- package/dist/loop/lock.d.ts +1 -1
- package/dist/loop/lock.js +1 -1
- package/dist/loop/open-host.d.ts.map +1 -1
- package/dist/loop/open-host.js +132 -31
- package/dist/loop/open-host.js.map +1 -1
- package/dist/loop/probe.d.ts +1 -1
- package/dist/loop/probe.d.ts.map +1 -1
- package/dist/loop/probe.js +51 -22
- package/dist/loop/probe.js.map +1 -1
- package/dist/loop/process-tree.d.ts +1 -1
- package/dist/loop/process-tree.js +1 -1
- package/dist/loop/report.d.ts +9 -7
- package/dist/loop/report.d.ts.map +1 -1
- package/dist/loop/report.js +49 -106
- package/dist/loop/report.js.map +1 -1
- package/dist/loop/streams.d.ts +5 -5
- package/dist/loop/streams.d.ts.map +1 -1
- package/dist/loop/streams.js +3 -3
- package/dist/loop/streams.js.map +1 -1
- package/dist/loop/tick.d.ts +6 -4
- package/dist/loop/tick.d.ts.map +1 -1
- package/dist/loop/tick.js +50 -78
- package/dist/loop/tick.js.map +1 -1
- package/dist/loop/trace.d.ts +5 -5
- package/dist/loop/trace.d.ts.map +1 -1
- package/dist/loop/trace.js +5 -14
- package/dist/loop/trace.js.map +1 -1
- package/dist/loop/transformers.d.ts +18 -14
- package/dist/loop/transformers.d.ts.map +1 -1
- package/dist/loop/transformers.js +139 -74
- package/dist/loop/transformers.js.map +1 -1
- package/dist/loop/warm.d.ts +3 -3
- package/dist/loop/warm.js +4 -4
- package/dist/loop/warm.js.map +1 -1
- package/dist/loop/work-line.d.ts +1 -1
- package/dist/operator/agent-plugins.d.ts +11 -0
- package/dist/operator/agent-plugins.d.ts.map +1 -1
- package/dist/operator/agent-plugins.js +17 -11
- package/dist/operator/agent-plugins.js.map +1 -1
- package/dist/operator/board.d.ts +3 -8
- package/dist/operator/board.d.ts.map +1 -1
- package/dist/operator/board.js +2 -11
- package/dist/operator/board.js.map +1 -1
- package/dist/operator/cancel.d.ts +2 -2
- package/dist/operator/cancel.js +6 -6
- package/dist/operator/cancel.js.map +1 -1
- package/dist/operator/doctor.d.ts +9 -0
- package/dist/operator/doctor.d.ts.map +1 -1
- package/dist/operator/doctor.js +110 -53
- package/dist/operator/doctor.js.map +1 -1
- package/dist/operator/explain.d.ts +76 -0
- package/dist/operator/explain.d.ts.map +1 -0
- package/dist/operator/explain.js +585 -0
- package/dist/operator/explain.js.map +1 -0
- package/dist/operator/film.d.ts +3 -11
- package/dist/operator/film.d.ts.map +1 -1
- package/dist/operator/film.js +8 -93
- package/dist/operator/film.js.map +1 -1
- package/dist/operator/init.d.ts.map +1 -1
- package/dist/operator/init.js +52 -55
- package/dist/operator/init.js.map +1 -1
- package/dist/operator/live.js +1 -1
- package/dist/operator/live.js.map +1 -1
- package/dist/operator/log.js +12 -6
- package/dist/operator/log.js.map +1 -1
- package/dist/operator/release.d.ts +2 -2
- package/dist/operator/release.js +7 -7
- package/dist/operator/release.js.map +1 -1
- package/dist/operator/run.d.ts +25 -0
- package/dist/operator/run.d.ts.map +1 -0
- package/dist/operator/run.js +70 -0
- package/dist/operator/run.js.map +1 -0
- package/dist/operator/setup.d.ts.map +1 -1
- package/dist/operator/setup.js +22 -16
- package/dist/operator/setup.js.map +1 -1
- package/dist/plugins/manager.d.ts +33 -2
- package/dist/plugins/manager.d.ts.map +1 -1
- package/dist/plugins/manager.js +67 -0
- package/dist/plugins/manager.js.map +1 -1
- package/package.json +15 -16
package/dist/loop/report.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ConductorMoment, ProjectRunResult } from "@bluewombat/conductor";
|
|
2
2
|
import type { EventFields, EventName } from "@bluewombat/manager-kit";
|
|
3
|
-
import type {
|
|
3
|
+
import type { TicketAggregate } from "@bluewombat/work-ledger";
|
|
4
4
|
import type { HostDeliveryInput } from "./context.js";
|
|
5
5
|
import type { Journal } from "./journal.js";
|
|
6
6
|
/**
|
|
@@ -8,9 +8,9 @@ import type { Journal } from "./journal.js";
|
|
|
8
8
|
* once: the id names the fact, and a pass that sees it again says nothing.
|
|
9
9
|
*/
|
|
10
10
|
export declare function reportMoment(input: HostDeliveryInput, moment: ConductorMoment): Promise<void>;
|
|
11
|
-
export declare function reportAfterRun(input: HostDeliveryInput, run: ProjectRunResult, aggregate:
|
|
12
|
-
export declare function resumePointOf(aggregate:
|
|
13
|
-
export declare function pushReport(input: Pick<HostDeliveryInput, "
|
|
11
|
+
export declare function reportAfterRun(input: HostDeliveryInput, run: ProjectRunResult, aggregate: TicketAggregate): Promise<void>;
|
|
12
|
+
export declare function resumePointOf(aggregate: TicketAggregate): "running" | "integrating";
|
|
13
|
+
export declare function pushReport(input: Pick<HostDeliveryInput, "features" | "tickets" | "reported" | "journal"> & {
|
|
14
14
|
said?: Set<string>;
|
|
15
15
|
}, report: {
|
|
16
16
|
event: EventName;
|
|
@@ -18,9 +18,11 @@ export declare function pushReport(input: Pick<HostDeliveryInput, "manager" | "r
|
|
|
18
18
|
project: string;
|
|
19
19
|
fields: EventFields;
|
|
20
20
|
eventId?: string;
|
|
21
|
-
}
|
|
21
|
+
},
|
|
22
|
+
/** Whose Thread it goes to: a Ticket's tracker by default, a Feature's manager when named. */
|
|
23
|
+
to?: "tickets" | "features"): Promise<void>;
|
|
22
24
|
/**
|
|
23
25
|
* One Host line per Project we drove: the outcome, and a heartbeat while it waits.
|
|
24
26
|
*/
|
|
25
|
-
export declare function
|
|
27
|
+
export declare function journalTicket(journal: Journal, outcome: string, aggregate: TicketAggregate, said?: Set<string>): void;
|
|
26
28
|
//# sourceMappingURL=report.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/loop/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/loop/report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAkB,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAM5C;;;GAGG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,IAAI,CAAC,CAmBf;AAED,wBAAsB,cAAc,CAClC,KAAK,EAAE,iBAAiB,EACxB,GAAG,EAAE,gBAAgB,EACrB,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC,IAAI,CAAC,CAqGf;AA8ID,wBAAgB,aAAa,CAAC,SAAS,EAAE,eAAe,GAAG,SAAS,GAAG,aAAa,CAWnF;AAED,wBAAsB,UAAU,CAC9B,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC,GAAG;IAChF,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACpB,EACD,MAAM,EAAE;IACN,KAAK,EAAE,SAAS,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,8FAA8F;AAC9F,EAAE,GAAE,SAAS,GAAG,UAAsB,GACrC,OAAO,CAAC,IAAI,CAAC,CAwBf;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,eAAe,EAC1B,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACjB,IAAI,CA0CN"}
|
package/dist/loop/report.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { subjectOf } from "@bluewombat/conductor";
|
|
2
1
|
/** Conductor's and Implementer's own defaults, said here so a counter reads right without a config key. */
|
|
3
2
|
const DEFAULT_MAX_REFUSALS = 3;
|
|
4
3
|
const DEFAULT_MAX_ATTEMPTS = 3;
|
|
@@ -15,25 +14,6 @@ export async function reportMoment(input, moment) {
|
|
|
15
14
|
const key = aggregate.intention.key;
|
|
16
15
|
const project = aggregate.intention.project;
|
|
17
16
|
switch (moment.kind) {
|
|
18
|
-
case "planned":
|
|
19
|
-
if (aggregate.plan !== undefined) {
|
|
20
|
-
await pushReport(input, plannedReport(key, project, aggregate.plan));
|
|
21
|
-
}
|
|
22
|
-
return;
|
|
23
|
-
case "subtask-integrated": {
|
|
24
|
-
// What landed, in the Plan's own headline: the sentence a person waits
|
|
25
|
-
// for. The counters that used to sit under it said the same thing worse.
|
|
26
|
-
const landed = aggregate.plan?.subtasks.find((subtask) => subtask.id === moment.subtaskId);
|
|
27
|
-
const what = landed === undefined ? moment.subtaskId : subjectOf(landed.intention);
|
|
28
|
-
await pushReport(input, {
|
|
29
|
-
event: "progress",
|
|
30
|
-
key,
|
|
31
|
-
project,
|
|
32
|
-
fields: { summary: `Landed ${moment.integrated} of ${moment.total}: ${what}` },
|
|
33
|
-
eventId: `${key}:integrated:${moment.subtaskId}`,
|
|
34
|
-
});
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
17
|
case "submitted":
|
|
38
18
|
await pushReport(input, {
|
|
39
19
|
event: "submitted",
|
|
@@ -45,34 +25,9 @@ export async function reportMoment(input, moment) {
|
|
|
45
25
|
return;
|
|
46
26
|
}
|
|
47
27
|
}
|
|
48
|
-
function plannedReport(key, project, record) {
|
|
49
|
-
// One line a person can read per Subtask: its first sentence, and what it
|
|
50
|
-
// waits on. The whole intention is in the ledger and on the pull request.
|
|
51
|
-
const plan = record.subtasks
|
|
52
|
-
.map((subtask, at) => {
|
|
53
|
-
const after = subtask.depends_on.length === 0 ? "" : ` (after ${subtask.depends_on.join(", ")})`;
|
|
54
|
-
return `${at + 1}. ${subjectOf(subtask.intention)}${after}`;
|
|
55
|
-
})
|
|
56
|
-
.join("\n");
|
|
57
|
-
return {
|
|
58
|
-
event: "planned",
|
|
59
|
-
key,
|
|
60
|
-
project,
|
|
61
|
-
fields: { plan },
|
|
62
|
-
// A feature is driven again on every pass while it waits for a verdict.
|
|
63
|
-
// The Plan was made once; say it once.
|
|
64
|
-
eventId: `${key}:planned:${record.planned_at}`,
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
28
|
export async function reportAfterRun(input, run, aggregate) {
|
|
68
29
|
const key = aggregate.intention.key;
|
|
69
30
|
const project = aggregate.intention.project;
|
|
70
|
-
// The plan is said as it lands (reportMoment); this is the catch-up for a
|
|
71
|
-
// plan made before a restart or while the tracker was down — same id, so a
|
|
72
|
-
// manager that already has it says nothing.
|
|
73
|
-
if (aggregate.plan !== undefined) {
|
|
74
|
-
await pushReport(input, plannedReport(key, project, aggregate.plan));
|
|
75
|
-
}
|
|
76
31
|
switch (run.outcome) {
|
|
77
32
|
case "done":
|
|
78
33
|
// The Authority's own name for the work, when there was one. A local
|
|
@@ -102,27 +57,12 @@ export async function reportAfterRun(input, run, aggregate) {
|
|
|
102
57
|
case "refused":
|
|
103
58
|
return;
|
|
104
59
|
}
|
|
105
|
-
const kind = aggregate.escalation?.kind ?? "
|
|
106
|
-
// One escalation per round and kind: a
|
|
107
|
-
// human's
|
|
108
|
-
// not do —
|
|
60
|
+
const kind = aggregate.escalation?.kind ?? "unit";
|
|
61
|
+
// One escalation per round and kind: a Ticket escalates again only after a
|
|
62
|
+
// human's resume, which is what the ledger counts. The Attempt count would
|
|
63
|
+
// not do — an escalation before any Attempt has none.
|
|
109
64
|
const eventId = escalationId(key, aggregate, kind);
|
|
110
65
|
switch (kind) {
|
|
111
|
-
case "plan":
|
|
112
|
-
await pushReport(input, {
|
|
113
|
-
event: "escalated",
|
|
114
|
-
key,
|
|
115
|
-
project,
|
|
116
|
-
eventId,
|
|
117
|
-
fields: {
|
|
118
|
-
stage: "plan",
|
|
119
|
-
// A refused Plan left its reason as `invalid`; a freeze for an
|
|
120
|
-
// intention edited in flight left the ledger's sentence as the
|
|
121
|
-
// escalation's report. Neither is "the Plan was refused" for the other.
|
|
122
|
-
reason: aggregate.invalid?.reason ?? aggregate.escalation?.report ?? "The Plan was refused.",
|
|
123
|
-
},
|
|
124
|
-
});
|
|
125
|
-
return;
|
|
126
66
|
case "merging":
|
|
127
67
|
await pushReport(input, {
|
|
128
68
|
event: "escalated",
|
|
@@ -136,8 +76,8 @@ export async function reportAfterRun(input, run, aggregate) {
|
|
|
136
76
|
});
|
|
137
77
|
return;
|
|
138
78
|
case "assembly":
|
|
139
|
-
// The
|
|
140
|
-
//
|
|
79
|
+
// The assembled work, not the unit: reporting it as the unit sends a
|
|
80
|
+
// reader to look at work that did not fail.
|
|
141
81
|
await pushReport(input, {
|
|
142
82
|
event: "escalated",
|
|
143
83
|
key,
|
|
@@ -145,7 +85,9 @@ export async function reportAfterRun(input, run, aggregate) {
|
|
|
145
85
|
eventId,
|
|
146
86
|
fields: {
|
|
147
87
|
stage: "integrating",
|
|
148
|
-
reason:
|
|
88
|
+
reason: spentOf(aggregate) + 1 >= (input.options.ticket.maxRefusals ?? DEFAULT_MAX_REFUSALS)
|
|
89
|
+
? "The assembled work was refused and no attempt is left."
|
|
90
|
+
: "The assembled work was refused.",
|
|
149
91
|
...(aggregate.escalation?.report === undefined
|
|
150
92
|
? {}
|
|
151
93
|
: { trace: aggregate.escalation.report }),
|
|
@@ -160,7 +102,7 @@ export async function reportAfterRun(input, run, aggregate) {
|
|
|
160
102
|
eventId,
|
|
161
103
|
fields: {
|
|
162
104
|
stage: "submitting",
|
|
163
|
-
reason: submittedReason(aggregate, input.options.maxRefusals ?? DEFAULT_MAX_REFUSALS),
|
|
105
|
+
reason: submittedReason(aggregate, input.options.ticket.maxRefusals ?? DEFAULT_MAX_REFUSALS),
|
|
164
106
|
...((aggregate.escalation?.report ?? aggregate.submission?.last_report) === undefined
|
|
165
107
|
? {}
|
|
166
108
|
: {
|
|
@@ -170,13 +112,13 @@ export async function reportAfterRun(input, run, aggregate) {
|
|
|
170
112
|
},
|
|
171
113
|
});
|
|
172
114
|
return;
|
|
173
|
-
case "
|
|
115
|
+
case "unit":
|
|
174
116
|
await pushReport(input, {
|
|
175
117
|
event: "escalated",
|
|
176
118
|
key,
|
|
177
119
|
project,
|
|
178
120
|
eventId,
|
|
179
|
-
fields:
|
|
121
|
+
fields: unitEscalation(input, aggregate),
|
|
180
122
|
});
|
|
181
123
|
return;
|
|
182
124
|
}
|
|
@@ -193,31 +135,34 @@ function submittedReason(aggregate, maxRefusals) {
|
|
|
193
135
|
return "The work could not be submitted.";
|
|
194
136
|
}
|
|
195
137
|
// The refusal that stopped it is never recorded as one (open-conductor).
|
|
196
|
-
return
|
|
138
|
+
return spentOf(aggregate) + 1 >= maxRefusals
|
|
197
139
|
? "The Submission was refused and no attempt is left."
|
|
198
140
|
: "The Submission was refused.";
|
|
199
141
|
}
|
|
200
|
-
/**
|
|
142
|
+
/**
|
|
143
|
+
* What the corrective rounds of a Ticket have used: refusals, parked refusals
|
|
144
|
+
* and times the line moved on, against the one `maxRefusals` budget. The same
|
|
145
|
+
* sum the Conductor draws on, so what the tracker is told matches what happens.
|
|
146
|
+
*/
|
|
147
|
+
function spentOf(aggregate) {
|
|
148
|
+
return ((aggregate.submission?.refusals ?? 0) +
|
|
149
|
+
(aggregate.parked_refusals ?? 0) +
|
|
150
|
+
(aggregate.submission?.realigns ?? 0));
|
|
151
|
+
}
|
|
152
|
+
/** `<key>:escalated:<round>:<kind>` — the same escalation hashes the same after a restart. */
|
|
201
153
|
function escalationId(key, aggregate, kind) {
|
|
202
|
-
|
|
203
|
-
const unit = kind === "subtask" ? `:${aggregate.escalation?.subtask_id ?? "unknown"}` : "";
|
|
204
|
-
return `${key}:escalated:${round}:${kind}${unit}`;
|
|
154
|
+
return `${key}:escalated:${aggregate.resumes}:${kind}`;
|
|
205
155
|
}
|
|
206
156
|
/**
|
|
207
|
-
* A
|
|
208
|
-
*
|
|
209
|
-
*
|
|
210
|
-
* because that is the only question left to the reader.
|
|
157
|
+
* A unit escalation, for a person who was not there. The last Attempt says who
|
|
158
|
+
* refused it and why, the count says whether more patience would have helped —
|
|
159
|
+
* and what resuming does, because that is the only question left to the reader.
|
|
211
160
|
*/
|
|
212
|
-
function
|
|
213
|
-
|
|
214
|
-
const unit = id ?? "unknown";
|
|
215
|
-
const planned = aggregate.plan?.subtasks.find((subtask) => subtask.id === id);
|
|
216
|
-
const what = planned === undefined ? unit : subjectOf(planned.intention);
|
|
217
|
-
// This round's Attempts only: the budget is per round, and a Subtask resumed
|
|
161
|
+
function unitEscalation(input, aggregate) {
|
|
162
|
+
// This round's Attempts only: the budget is per round, and a unit resumed
|
|
218
163
|
// once already spent three — "6 times of 3" counts against nothing.
|
|
219
|
-
const round = aggregate.resumes
|
|
220
|
-
const attempts = aggregate.attempts.filter((attempt) => attempt.
|
|
164
|
+
const round = aggregate.resumes;
|
|
165
|
+
const attempts = aggregate.attempts.filter((attempt) => attempt.round === round);
|
|
221
166
|
const last = [...attempts].reverse().find((attempt) => attempt.trace !== undefined)?.trace;
|
|
222
167
|
const max = input.options.builder?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS;
|
|
223
168
|
const by = last?.refusedBy ?? "a Gate";
|
|
@@ -240,15 +185,13 @@ function subtaskEscalation(input, aggregate) {
|
|
|
240
185
|
else {
|
|
241
186
|
why = (aggregate.escalation?.report ?? "it escalated").replace(/\.$/, "");
|
|
242
187
|
}
|
|
243
|
-
const resume =
|
|
188
|
+
const resume = "On resume, the work starts again from zero.";
|
|
244
189
|
const fields = {
|
|
245
190
|
stage: "unit",
|
|
246
|
-
reason: `${
|
|
191
|
+
reason: `${why}. ${resume}`,
|
|
247
192
|
// The refusal in the refuser's own words; the ledger's sentence when no
|
|
248
|
-
// Attempt left one
|
|
249
|
-
// written before reports were kept.
|
|
193
|
+
// Attempt left one; the verdict alone when none was kept.
|
|
250
194
|
trace: last?.report ?? aggregate.escalation?.report ?? last?.ended ?? "No Trace recorded.",
|
|
251
|
-
unit,
|
|
252
195
|
};
|
|
253
196
|
if (attempts.length > 0) {
|
|
254
197
|
fields.counters = { attempts: `${attempts.length} of ${max}` };
|
|
@@ -256,12 +199,12 @@ function subtaskEscalation(input, aggregate) {
|
|
|
256
199
|
return fields;
|
|
257
200
|
}
|
|
258
201
|
/**
|
|
259
|
-
* A refusal sent the work back to `
|
|
202
|
+
* A refusal sent the work back to `ticket.fix` and a repair is on its way.
|
|
260
203
|
* Between that and the next verdict the tracker would otherwise say nothing,
|
|
261
204
|
* and a reader would take the silence for waiting.
|
|
262
205
|
*
|
|
263
206
|
* Two refusers write here: the Authority (`submission.last_report`, once there
|
|
264
|
-
* is a Submission) and `
|
|
207
|
+
* is a Submission) and `ticket.validate` (`parked_refusal`, which can exist
|
|
265
208
|
* before one does, or without an Authority at all). The parked one is fresher
|
|
266
209
|
* when both are set, the same priority `open-conductor` gives it.
|
|
267
210
|
*/
|
|
@@ -269,11 +212,11 @@ async function reportRefusal(input, aggregate) {
|
|
|
269
212
|
if (aggregate.state !== "integrating") {
|
|
270
213
|
return;
|
|
271
214
|
}
|
|
272
|
-
const max = input.options.maxRefusals ?? DEFAULT_MAX_REFUSALS;
|
|
215
|
+
const max = input.options.ticket.maxRefusals ?? DEFAULT_MAX_REFUSALS;
|
|
273
216
|
const parked = aggregate.parked_refusal;
|
|
274
217
|
if (parked !== undefined) {
|
|
275
218
|
const parkedRefusals = aggregate.parked_refusals ?? 0;
|
|
276
|
-
const spent = (aggregate
|
|
219
|
+
const spent = spentOf(aggregate);
|
|
277
220
|
await pushReport(input, {
|
|
278
221
|
event: "progress",
|
|
279
222
|
key: aggregate.intention.key,
|
|
@@ -282,7 +225,7 @@ async function reportRefusal(input, aggregate) {
|
|
|
282
225
|
// in the same round would otherwise collide with this id.
|
|
283
226
|
eventId: `${aggregate.intention.key}:refused:parked:${parkedRefusals}`,
|
|
284
227
|
fields: {
|
|
285
|
-
summary: `${parked.refused_by ?? "
|
|
228
|
+
summary: `${parked.refused_by ?? "ticket.validate"} refused the assembled work; a repair is on its way (refusal ${spent} of ${max}).`,
|
|
286
229
|
stage: "integrating",
|
|
287
230
|
trace: parked.report,
|
|
288
231
|
},
|
|
@@ -304,7 +247,7 @@ async function reportRefusal(input, aggregate) {
|
|
|
304
247
|
fields: {
|
|
305
248
|
// Who refused, what happens next, and how many refusals the Authority may
|
|
306
249
|
// still send back before this escalates — in one sentence.
|
|
307
|
-
summary: `${submission.last_refused_by ?? "The Authority"} refused the Submission; a repair is on its way (refusal ${
|
|
250
|
+
summary: `${submission.last_refused_by ?? "The Authority"} refused the Submission; a repair is on its way (refusal ${spentOf(aggregate)} of ${max}).`,
|
|
308
251
|
stage: "submitting",
|
|
309
252
|
trace: submission.last_report,
|
|
310
253
|
},
|
|
@@ -312,26 +255,26 @@ async function reportRefusal(input, aggregate) {
|
|
|
312
255
|
}
|
|
313
256
|
export function resumePointOf(aggregate) {
|
|
314
257
|
switch (aggregate.escalation?.kind) {
|
|
315
|
-
|
|
316
|
-
return "planning";
|
|
317
|
-
// What the ledger does on resumeReady, said in the same words.
|
|
258
|
+
// What the ledger does on resumeTicket, said in the same words.
|
|
318
259
|
case "merging":
|
|
319
260
|
case "assembly":
|
|
320
261
|
case "submitted":
|
|
321
262
|
return "integrating";
|
|
322
|
-
case "
|
|
263
|
+
case "unit":
|
|
323
264
|
case undefined:
|
|
324
265
|
return "running";
|
|
325
266
|
}
|
|
326
267
|
}
|
|
327
|
-
export async function pushReport(input, report
|
|
268
|
+
export async function pushReport(input, report,
|
|
269
|
+
/** Whose Thread it goes to: a Ticket's tracker by default, a Feature's manager when named. */
|
|
270
|
+
to = "tickets") {
|
|
328
271
|
if (report.eventId !== undefined && input.said?.has(report.eventId)) {
|
|
329
272
|
return;
|
|
330
273
|
}
|
|
331
274
|
// How long the tracker took, kept either way: a report is awaited where the
|
|
332
275
|
// work is, and one that hung for minutes looked like nothing at all.
|
|
333
276
|
const started = Date.now();
|
|
334
|
-
const ok = await input.
|
|
277
|
+
const ok = await input[to].report({
|
|
335
278
|
event: report.event,
|
|
336
279
|
key: report.key,
|
|
337
280
|
project: report.project,
|
|
@@ -352,9 +295,9 @@ export async function pushReport(input, report) {
|
|
|
352
295
|
/**
|
|
353
296
|
* One Host line per Project we drove: the outcome, and a heartbeat while it waits.
|
|
354
297
|
*/
|
|
355
|
-
export function
|
|
298
|
+
export function journalTicket(journal, outcome, aggregate, said) {
|
|
356
299
|
const key = aggregate.intention.key;
|
|
357
|
-
// A
|
|
300
|
+
// A unit held by a bail is driven again every poll until the clock (or a
|
|
358
301
|
// release) frees it. One `held` line names the wait; repeating `ran paused`
|
|
359
302
|
// every ten seconds is noise.
|
|
360
303
|
if (outcome === "paused" &&
|
package/dist/loop/report.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/loop/report.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/loop/report.ts"],"names":[],"mappings":"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"}
|
package/dist/loop/streams.d.ts
CHANGED
|
@@ -24,9 +24,9 @@ export type ChildSink = {
|
|
|
24
24
|
};
|
|
25
25
|
/** Which child is speaking, in Host's terms rather than any one Transformer's. */
|
|
26
26
|
export type StreamSubject = {
|
|
27
|
-
/** The
|
|
27
|
+
/** The Ticket this serves, when the Transformer knew it. */
|
|
28
28
|
key?: string | undefined;
|
|
29
|
-
/** The Task
|
|
29
|
+
/** The Task — the name its transcript is filed under. */
|
|
30
30
|
id: string;
|
|
31
31
|
attempt?: number | undefined;
|
|
32
32
|
gateId?: string | undefined;
|
|
@@ -34,9 +34,9 @@ export type StreamSubject = {
|
|
|
34
34
|
export type Streams = {
|
|
35
35
|
open(subject: StreamSubject): ChildSink | undefined;
|
|
36
36
|
/**
|
|
37
|
-
* Forget what was filmed of one
|
|
37
|
+
* Forget what was filmed of one Ticket.
|
|
38
38
|
*
|
|
39
|
-
* Called when a
|
|
39
|
+
* Called when a Ticket reaches an end nobody has to read: the work landed,
|
|
40
40
|
* or it was abandoned. An escalation keeps everything — that is exactly when
|
|
41
41
|
* a person has to go and look.
|
|
42
42
|
*/
|
|
@@ -53,7 +53,7 @@ export type StreamsSpec = {
|
|
|
53
53
|
/**
|
|
54
54
|
* One file per child, filed the way a transcript is.
|
|
55
55
|
*
|
|
56
|
-
* Same directory per
|
|
56
|
+
* Same directory per Ticket and same stem as `openTranscript` writes, so the
|
|
57
57
|
* prompt a slot kept and the stream underneath it sit side by side and join by
|
|
58
58
|
* name rather than by guesswork.
|
|
59
59
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streams.d.ts","sourceRoot":"","sources":["../../src/loop/streams.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACxD,KAAK,IAAI,IAAI,CAAC;CACf,CAAC;AAEF,kFAAkF;AAClF,MAAM,MAAM,aAAa,GAAG;IAC1B,
|
|
1
|
+
{"version":3,"file":"streams.d.ts","sourceRoot":"","sources":["../../src/loop/streams.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACxD,KAAK,IAAI,IAAI,CAAC;CACf,CAAC;AAEF,kFAAkF;AAClF,MAAM,MAAM,aAAa,GAAG;IAC1B,4DAA4D;IAC5D,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,yDAAyD;IACzD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,GAAG,SAAS,CAAC;IACpD;;;;;;OAMG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,yEAAyE;IACzE,GAAG,EAAE,MAAM,CAAC;IACZ,qEAAqE;IACrE,IAAI,EAAE,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC;IACvC,2EAA2E;IAC3E,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAmEtD"}
|
package/dist/loop/streams.js
CHANGED
|
@@ -3,7 +3,7 @@ import { join, relative } from "node:path";
|
|
|
3
3
|
/**
|
|
4
4
|
* One file per child, filed the way a transcript is.
|
|
5
5
|
*
|
|
6
|
-
* Same directory per
|
|
6
|
+
* Same directory per Ticket and same stem as `openTranscript` writes, so the
|
|
7
7
|
* prompt a slot kept and the stream underneath it sit side by side and join by
|
|
8
8
|
* name rather than by guesswork.
|
|
9
9
|
*/
|
|
@@ -78,7 +78,7 @@ export function openStreams(spec) {
|
|
|
78
78
|
},
|
|
79
79
|
};
|
|
80
80
|
}
|
|
81
|
-
/** What one
|
|
81
|
+
/** What one Ticket's directory holds, before it is removed. */
|
|
82
82
|
function measure(dir) {
|
|
83
83
|
let files = 0;
|
|
84
84
|
let bytes = 0;
|
|
@@ -135,7 +135,7 @@ function sinkOf(file, keep, report) {
|
|
|
135
135
|
/**
|
|
136
136
|
* `<id>-attempt-<n>[-gate-<id>]-<stamp>.ndjson`.
|
|
137
137
|
*
|
|
138
|
-
* Stamped because a
|
|
138
|
+
* Stamped because a Ticket resumed by a human starts its Attempt count again,
|
|
139
139
|
* and two rounds would otherwise write the same name. The journal names the
|
|
140
140
|
* file it opened, so nothing has to reconstruct this.
|
|
141
141
|
*/
|
package/dist/loop/streams.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streams.js","sourceRoot":"","sources":["../../src/loop/streams.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"streams.js","sourceRoot":"","sources":["../../src/loop/streams.ts"],"names":[],"mappings":"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"}
|
package/dist/loop/tick.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { Conductor, ProjectRunResult } from "@bluewombat/conductor";
|
|
|
2
2
|
import type { EventName } from "@bluewombat/manager-kit";
|
|
3
3
|
import type { WorkLedger } from "@bluewombat/work-ledger";
|
|
4
4
|
import type { HostRunInput } from "./context.js";
|
|
5
|
-
import {
|
|
5
|
+
import type { CancelResult, ReleaseResult } from "./deliveries.js";
|
|
6
6
|
export type HostTickResult = {
|
|
7
7
|
listenerOutcome: string;
|
|
8
8
|
reported: EventName[];
|
|
@@ -14,13 +14,15 @@ export type Host = {
|
|
|
14
14
|
conductor: Conductor;
|
|
15
15
|
runOnce(): Promise<HostTickResult>;
|
|
16
16
|
run(): Promise<HostTickResult>;
|
|
17
|
-
/** Abandon one Feature by key. Takes the same path as a `cancel` delivery. */
|
|
17
|
+
/** Abandon one Feature or Ticket by key. Takes the same path as a `cancel` delivery. */
|
|
18
18
|
cancel(key: string): Promise<CancelResult>;
|
|
19
|
-
/** Drop a held
|
|
19
|
+
/** Drop a held unit without waiting for the bail clock. */
|
|
20
20
|
release(key: string): Promise<ReleaseResult>;
|
|
21
21
|
/** Give the ledger back: the lock `openHost` took. */
|
|
22
22
|
close(): Promise<void>;
|
|
23
23
|
};
|
|
24
24
|
export declare function runOnce(input: HostRunInput): Promise<HostTickResult>;
|
|
25
|
-
|
|
25
|
+
/** How long an idle loop goes without saying that it is still turning. */
|
|
26
|
+
export declare const HEARTBEAT_MS = 60000;
|
|
27
|
+
export declare function run(input: HostRunInput, now?: () => number): Promise<HostTickResult>;
|
|
26
28
|
//# sourceMappingURL=tick.d.ts.map
|
package/dist/loop/tick.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tick.d.ts","sourceRoot":"","sources":["../../src/loop/tick.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"tick.d.ts","sourceRoot":"","sources":["../../src/loop/tick.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAgB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAQnE,MAAM,MAAM,cAAc,GAAG;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG;IACjB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IACnC,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/B,wFAAwF;IACxF,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3C,2DAA2D;IAC3D,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC7C,sDAAsD;IACtD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB,CAAC;AAEF,wBAAsB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAiF1E;AAED,0EAA0E;AAC1E,eAAO,MAAM,YAAY,QAAS,CAAC;AAEnC,wBAAsB,GAAG,CACvB,KAAK,EAAE,YAAY,EACnB,GAAG,GAAE,MAAM,MAAiB,GAC3B,OAAO,CAAC,cAAc,CAAC,CAoCzB"}
|