@ai-dossier/sched 0.7.1 → 0.9.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 +154 -15
- package/dist/batch-dispatch.d.ts +121 -0
- package/dist/batch-dispatch.d.ts.map +1 -0
- package/dist/batch-dispatch.js +1114 -0
- package/dist/batch-dispatch.js.map +1 -0
- package/dist/dispatch.d.ts +99 -14
- package/dist/dispatch.d.ts.map +1 -1
- package/dist/dispatch.js +204 -21
- package/dist/dispatch.js.map +1 -1
- package/dist/engine.d.ts +43 -2
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +181 -30
- package/dist/engine.js.map +1 -1
- package/dist/enqueue.d.ts.map +1 -1
- package/dist/enqueue.js +17 -2
- package/dist/enqueue.js.map +1 -1
- package/dist/fence.d.ts +78 -0
- package/dist/fence.d.ts.map +1 -0
- package/dist/fence.js +107 -0
- package/dist/fence.js.map +1 -0
- package/dist/groundtruth.d.ts +23 -0
- package/dist/groundtruth.d.ts.map +1 -1
- package/dist/groundtruth.js +41 -0
- package/dist/groundtruth.js.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -3
- package/dist/index.js.map +1 -1
- package/dist/journal.d.ts +2 -0
- package/dist/journal.d.ts.map +1 -1
- package/dist/journal.js +8 -0
- package/dist/journal.js.map +1 -1
- package/dist/persist.js +25 -1
- package/dist/persist.js.map +1 -1
- package/dist/state.d.ts +7 -1
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +56 -2
- package/dist/state.js.map +1 -1
- package/dist/types.d.ts +84 -6
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +15 -4
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
package/dist/types.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* exec (project.ts, groundtruth.ts) — never an LLM call of its own (AC7).
|
|
10
10
|
*/
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.SchedNotFoundError = exports.IllegalTransitionError = exports.MAX_MAX_SLOTS = exports.MIN_MAX_SLOTS = exports.DEFAULT_MAX_SLOTS = exports.LEGACY_CONFIG_SCHEMA_VERSIONS = exports.CONFIG_SCHEMA_VERSION = exports.LEGACY_SCHEMA_VERSIONS = exports.SCHEMA_VERSION = exports.MAX_REBASE_ATTEMPTS = exports.BATCH_PHASES = exports.PHASES = exports.FIX_ATTEMPT_TIER = exports.MAX_FIX_ATTEMPTS_PER_MEMBER = exports.DISSOLVE_EVICTION_FRACTION = exports.DEFAULT_PR_POLL_INTERVAL_MS = exports.DEFAULT_RECONCILE_INTERVAL_MS = exports.DEFAULT_PHASE_STALL_TIMEOUT_MS = exports.DEFAULT_STALL_TIMEOUT_MS = exports.DISPATCH_UNHEALTHY_THRESHOLD = exports.SUSPECT_DISPATCH_WINDOW_MS = exports.ESCALATION_CAP = exports.TIER_ORDER = exports.TIER_LADDER = exports.LIVE_SLOT_STATUSES = exports.SLOT_ROLES = exports.MERGED_BATCH_STATUSES = exports.TERMINAL_BATCH_STATUSES = exports.SATISFIED_ISSUE_STATUSES = exports.TERMINAL_ISSUE_STATUSES = void 0;
|
|
12
|
+
exports.SchedNotFoundError = exports.IllegalTransitionError = exports.MAX_MAX_SLOTS = exports.MIN_MAX_SLOTS = exports.DEFAULT_MAX_SLOTS = exports.LEGACY_CONFIG_SCHEMA_VERSIONS = exports.CONFIG_SCHEMA_VERSION = exports.LEGACY_SCHEMA_VERSIONS = exports.SCHEMA_VERSION = exports.MAX_REBASE_ATTEMPTS = exports.BATCH_PHASES = exports.PHASES = exports.FIX_ATTEMPT_TIER = exports.MAX_FIX_ATTEMPTS_PER_MEMBER = exports.DISSOLVE_EVICTION_FRACTION = exports.DEFAULT_PR_POLL_INTERVAL_MS = exports.DEFAULT_RECONCILE_INTERVAL_MS = exports.DEFAULT_PHASE_STALL_TIMEOUT_MS = exports.DEFAULT_STALL_TIMEOUT_MS = exports.DISPATCH_UNHEALTHY_THRESHOLD = exports.SUSPECT_DISPATCH_WINDOW_MS = exports.DEFAULT_FENCE_TAKEOVER_TIMEOUT_MS = exports.ESCALATION_CAP = exports.TIER_ORDER = exports.TIER_LADDER = exports.LIVE_SLOT_STATUSES = exports.SLOT_ROLES = exports.MERGED_BATCH_STATUSES = exports.TERMINAL_BATCH_STATUSES = exports.SATISFIED_ISSUE_STATUSES = exports.TERMINAL_ISSUE_STATUSES = void 0;
|
|
13
13
|
/**
|
|
14
14
|
* Issue statuses the normal rails never leave: `done` is absolute, and
|
|
15
15
|
* `failed` has exactly one escape hatch (`failed → shipped`, #501's
|
|
@@ -59,6 +59,15 @@ exports.TIER_LADDER = {
|
|
|
59
59
|
exports.TIER_ORDER = ['mechanical', 'mid', 'strong'];
|
|
60
60
|
/** Cap on recovery attempts before a unit fails (RFC-0001 §C.1 "cap 2"). */
|
|
61
61
|
exports.ESCALATION_CAP = 2;
|
|
62
|
+
/**
|
|
63
|
+
* Default {@link DispatchConfig.fence_takeover_timeout_ms} — 15 minutes.
|
|
64
|
+
*
|
|
65
|
+
* Long enough that a takeover doing real work (fetching the workflow, materializing a
|
|
66
|
+
* worktree, warming it) is never cut off before its gate milestone lands; short enough
|
|
67
|
+
* that a takeover killed at birth by a quota wall does not sit out an `implement`-length
|
|
68
|
+
* stall allowance before anyone notices.
|
|
69
|
+
*/
|
|
70
|
+
exports.DEFAULT_FENCE_TAKEOVER_TIMEOUT_MS = 15 * 60 * 1000;
|
|
62
71
|
/**
|
|
63
72
|
* An unverified exit is `suspect-dispatch` (#505) when it happens within
|
|
64
73
|
* this many ms of the slot's last progress (spawn or respawn, since
|
|
@@ -137,7 +146,7 @@ exports.BATCH_PHASES = [
|
|
|
137
146
|
];
|
|
138
147
|
/** Rebases of a conflicting batch PR before dissolving into halves (§F.9 "re-ship once"). */
|
|
139
148
|
exports.MAX_REBASE_ATTEMPTS = 1;
|
|
140
|
-
exports.SCHEMA_VERSION = '1.
|
|
149
|
+
exports.SCHEMA_VERSION = '1.7.0';
|
|
141
150
|
/** Schema versions `validateState` accepts on load (migrated to SCHEMA_VERSION on save). */
|
|
142
151
|
exports.LEGACY_SCHEMA_VERSIONS = [
|
|
143
152
|
'1.0.0',
|
|
@@ -145,10 +154,12 @@ exports.LEGACY_SCHEMA_VERSIONS = [
|
|
|
145
154
|
'1.2.0',
|
|
146
155
|
'1.3.0',
|
|
147
156
|
'1.4.0',
|
|
157
|
+
'1.5.0',
|
|
158
|
+
'1.6.0',
|
|
148
159
|
];
|
|
149
|
-
exports.CONFIG_SCHEMA_VERSION = '1.
|
|
160
|
+
exports.CONFIG_SCHEMA_VERSION = '1.3.0';
|
|
150
161
|
/** Config schema versions `loadConfig` accepts (older configs carry only max_slots). */
|
|
151
|
-
exports.LEGACY_CONFIG_SCHEMA_VERSIONS = ['1.0.0', '1.1.0'];
|
|
162
|
+
exports.LEGACY_CONFIG_SCHEMA_VERSIONS = ['1.0.0', '1.1.0', '1.2.0'];
|
|
152
163
|
exports.DEFAULT_MAX_SLOTS = 3;
|
|
153
164
|
/** Bounds for `max_slots` when reading `config.json` (named — not magic numbers in persist.ts). */
|
|
154
165
|
exports.MIN_MAX_SLOTS = 1;
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-dossier/sched",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "Deterministic scheduler core for dossier batch cycles — queue, slots, persistent state machine, dispatch engine with completion verification and stall/escalation ladder, PR watching with script-based teardown, and batch failure recovery (attribution, bisect, eviction, dissolve). The scheduler never invokes an LLM.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|