@indigoai-us/hq-cli 5.187.0 → 5.188.1
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/CHANGELOG.md +25 -0
- package/dist/command-catalog.generated.d.ts +65 -0
- package/dist/command-catalog.generated.js +85 -0
- package/dist/commands/lanes.d.ts +7 -1
- package/dist/commands/lanes.js +894 -45
- package/dist/lib/lanes/claude-account-balance.d.ts +82 -0
- package/dist/lib/lanes/claude-account-balance.js +253 -0
- package/dist/lib/lanes/hire-grant-dispatch.d.ts +21 -0
- package/dist/lib/lanes/hire-grant-dispatch.js +167 -0
- package/dist/lib/lanes/hire-grants.d.ts +3 -2
- package/dist/lib/lanes/host-capacity.d.ts +19 -0
- package/dist/lib/lanes/host-capacity.js +68 -0
- package/dist/lib/lanes/index.d.ts +1 -1
- package/dist/lib/lanes/outpost-dispatch.d.ts +11 -1
- package/dist/lib/lanes/outpost-dispatch.js +20 -0
- package/dist/lib/lanes/ssm-command-context.d.ts +12 -0
- package/dist/lib/lanes/ssm-command-context.js +52 -0
- package/dist/lib/lanes/store.js +86 -0
- package/dist/lib/lanes/types.d.ts +48 -0
- package/dist/lib/lanes/types.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,31 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [5.188.1] — 2026-09-25
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- `hq lanes grant` now applies grants for Outpost-hosted lanes on their owner.
|
|
10
|
+
The primary sends a bounded hierarchy snapshot and its evaluated hq-flags
|
|
11
|
+
decision; the owner revalidates the authorized senior, applies carve,
|
|
12
|
+
occupancy, and terminal-parent checks, then syncs the changed record to the
|
|
13
|
+
primary. Dispatched lane errors include sanitized owner details.
|
|
14
|
+
|
|
15
|
+
## [5.188.0] — 2026-09-25
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
|
|
19
|
+
- `hq lanes accounts balance --provider claude` reports per-host account load,
|
|
20
|
+
login state, and proposed moves. `--apply` moves only sessions between turns
|
|
21
|
+
and requires the default-off `lanes.claude-account-balance` hq-flags gate.
|
|
22
|
+
Claude lane creation now considers live lane counts across readable hosts,
|
|
23
|
+
including lanes whose real host identity is local on an Outpost. It checks
|
|
24
|
+
login on the target host, reports unknown login state separately, and records
|
|
25
|
+
the selection and any host gaps on the lane. Explicit `--account` choices
|
|
26
|
+
remain in effect. Automatic resume repair runs only while the balance gate is
|
|
27
|
+
enabled; with the gate off, disabled and logged-out accounts keep their usual
|
|
28
|
+
refusal behavior without reading other hosts.
|
|
29
|
+
|
|
5
30
|
## [5.187.0] — 2026-09-25
|
|
6
31
|
|
|
7
32
|
### Fixed
|
|
@@ -6915,6 +6915,28 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
6915
6915
|
readonly description: "JSON on stdout (always)";
|
|
6916
6916
|
}];
|
|
6917
6917
|
readonly subcommands: readonly [];
|
|
6918
|
+
}, {
|
|
6919
|
+
readonly name: "grant-target";
|
|
6920
|
+
readonly description: "";
|
|
6921
|
+
readonly aliases: readonly [];
|
|
6922
|
+
readonly hidden: true;
|
|
6923
|
+
readonly usage: "[options] <lane-id>";
|
|
6924
|
+
readonly arguments: readonly [{
|
|
6925
|
+
readonly name: "lane-id";
|
|
6926
|
+
readonly required: true;
|
|
6927
|
+
readonly variadic: false;
|
|
6928
|
+
}];
|
|
6929
|
+
readonly options: readonly [{
|
|
6930
|
+
readonly flags: "--hire <n>";
|
|
6931
|
+
readonly description: "Non-negative safe integer hire grant";
|
|
6932
|
+
}, {
|
|
6933
|
+
readonly flags: "--grant-context <base64url>";
|
|
6934
|
+
readonly description: "Primary-authorized hire hierarchy and gate decision";
|
|
6935
|
+
}, {
|
|
6936
|
+
readonly flags: "--json";
|
|
6937
|
+
readonly description: "JSON on stdout (always)";
|
|
6938
|
+
}];
|
|
6939
|
+
readonly subcommands: readonly [];
|
|
6918
6940
|
}, {
|
|
6919
6941
|
readonly name: "grant";
|
|
6920
6942
|
readonly description: "Set a lane's alive child-lane grant as its senior";
|
|
@@ -7074,6 +7096,31 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
7074
7096
|
readonly description: "JSON on stdout (always)";
|
|
7075
7097
|
}];
|
|
7076
7098
|
readonly subcommands: readonly [];
|
|
7099
|
+
}, {
|
|
7100
|
+
readonly name: "balance-move-target";
|
|
7101
|
+
readonly description: "";
|
|
7102
|
+
readonly aliases: readonly [];
|
|
7103
|
+
readonly hidden: true;
|
|
7104
|
+
readonly usage: "[options] <lane-id>";
|
|
7105
|
+
readonly arguments: readonly [{
|
|
7106
|
+
readonly name: "lane-id";
|
|
7107
|
+
readonly required: true;
|
|
7108
|
+
readonly variadic: false;
|
|
7109
|
+
}];
|
|
7110
|
+
readonly options: readonly [{
|
|
7111
|
+
readonly flags: "--account <id>";
|
|
7112
|
+
readonly description: "Target Claude account id";
|
|
7113
|
+
}, {
|
|
7114
|
+
readonly flags: "--from-account <id>";
|
|
7115
|
+
readonly description: "Expected source Claude account id";
|
|
7116
|
+
}, {
|
|
7117
|
+
readonly flags: "--expected-state <state>";
|
|
7118
|
+
readonly description: "Expected lane state from the balance plan";
|
|
7119
|
+
}, {
|
|
7120
|
+
readonly flags: "--json";
|
|
7121
|
+
readonly description: "JSON on stdout (always)";
|
|
7122
|
+
}];
|
|
7123
|
+
readonly subcommands: readonly [];
|
|
7077
7124
|
}, {
|
|
7078
7125
|
readonly name: "admit";
|
|
7079
7126
|
readonly description: "Try to admit the oldest eligible queued lane";
|
|
@@ -7571,6 +7618,24 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
7571
7618
|
readonly description: "JSON on stdout (always)";
|
|
7572
7619
|
}];
|
|
7573
7620
|
readonly subcommands: readonly [];
|
|
7621
|
+
}, {
|
|
7622
|
+
readonly name: "balance";
|
|
7623
|
+
readonly description: "Report Claude account load and suggest safe between-turn moves";
|
|
7624
|
+
readonly aliases: readonly [];
|
|
7625
|
+
readonly hidden: false;
|
|
7626
|
+
readonly usage: "[options]";
|
|
7627
|
+
readonly arguments: readonly [];
|
|
7628
|
+
readonly options: readonly [{
|
|
7629
|
+
readonly flags: "--provider <name>";
|
|
7630
|
+
readonly description: "claude";
|
|
7631
|
+
}, {
|
|
7632
|
+
readonly flags: "--apply";
|
|
7633
|
+
readonly description: "Move eligible between-turn sessions (requires the Claude account balance gate)";
|
|
7634
|
+
}, {
|
|
7635
|
+
readonly flags: "--json";
|
|
7636
|
+
readonly description: "JSON on stdout (always)";
|
|
7637
|
+
}];
|
|
7638
|
+
readonly subcommands: readonly [];
|
|
7574
7639
|
}, {
|
|
7575
7640
|
readonly name: "login";
|
|
7576
7641
|
readonly description: "Create a home, run the vendor login, and register the account";
|
|
@@ -8937,6 +8937,35 @@ export const COMMAND_CATALOG = [
|
|
|
8937
8937
|
],
|
|
8938
8938
|
"subcommands": []
|
|
8939
8939
|
},
|
|
8940
|
+
{
|
|
8941
|
+
"name": "grant-target",
|
|
8942
|
+
"description": "",
|
|
8943
|
+
"aliases": [],
|
|
8944
|
+
"hidden": true,
|
|
8945
|
+
"usage": "[options] <lane-id>",
|
|
8946
|
+
"arguments": [
|
|
8947
|
+
{
|
|
8948
|
+
"name": "lane-id",
|
|
8949
|
+
"required": true,
|
|
8950
|
+
"variadic": false
|
|
8951
|
+
}
|
|
8952
|
+
],
|
|
8953
|
+
"options": [
|
|
8954
|
+
{
|
|
8955
|
+
"flags": "--hire <n>",
|
|
8956
|
+
"description": "Non-negative safe integer hire grant"
|
|
8957
|
+
},
|
|
8958
|
+
{
|
|
8959
|
+
"flags": "--grant-context <base64url>",
|
|
8960
|
+
"description": "Primary-authorized hire hierarchy and gate decision"
|
|
8961
|
+
},
|
|
8962
|
+
{
|
|
8963
|
+
"flags": "--json",
|
|
8964
|
+
"description": "JSON on stdout (always)"
|
|
8965
|
+
}
|
|
8966
|
+
],
|
|
8967
|
+
"subcommands": []
|
|
8968
|
+
},
|
|
8940
8969
|
{
|
|
8941
8970
|
"name": "grant",
|
|
8942
8971
|
"description": "Set a lane's alive child-lane grant as its senior",
|
|
@@ -9142,6 +9171,39 @@ export const COMMAND_CATALOG = [
|
|
|
9142
9171
|
],
|
|
9143
9172
|
"subcommands": []
|
|
9144
9173
|
},
|
|
9174
|
+
{
|
|
9175
|
+
"name": "balance-move-target",
|
|
9176
|
+
"description": "",
|
|
9177
|
+
"aliases": [],
|
|
9178
|
+
"hidden": true,
|
|
9179
|
+
"usage": "[options] <lane-id>",
|
|
9180
|
+
"arguments": [
|
|
9181
|
+
{
|
|
9182
|
+
"name": "lane-id",
|
|
9183
|
+
"required": true,
|
|
9184
|
+
"variadic": false
|
|
9185
|
+
}
|
|
9186
|
+
],
|
|
9187
|
+
"options": [
|
|
9188
|
+
{
|
|
9189
|
+
"flags": "--account <id>",
|
|
9190
|
+
"description": "Target Claude account id"
|
|
9191
|
+
},
|
|
9192
|
+
{
|
|
9193
|
+
"flags": "--from-account <id>",
|
|
9194
|
+
"description": "Expected source Claude account id"
|
|
9195
|
+
},
|
|
9196
|
+
{
|
|
9197
|
+
"flags": "--expected-state <state>",
|
|
9198
|
+
"description": "Expected lane state from the balance plan"
|
|
9199
|
+
},
|
|
9200
|
+
{
|
|
9201
|
+
"flags": "--json",
|
|
9202
|
+
"description": "JSON on stdout (always)"
|
|
9203
|
+
}
|
|
9204
|
+
],
|
|
9205
|
+
"subcommands": []
|
|
9206
|
+
},
|
|
9145
9207
|
{
|
|
9146
9208
|
"name": "admit",
|
|
9147
9209
|
"description": "Try to admit the oldest eligible queued lane",
|
|
@@ -9790,6 +9852,29 @@ export const COMMAND_CATALOG = [
|
|
|
9790
9852
|
],
|
|
9791
9853
|
"subcommands": []
|
|
9792
9854
|
},
|
|
9855
|
+
{
|
|
9856
|
+
"name": "balance",
|
|
9857
|
+
"description": "Report Claude account load and suggest safe between-turn moves",
|
|
9858
|
+
"aliases": [],
|
|
9859
|
+
"hidden": false,
|
|
9860
|
+
"usage": "[options]",
|
|
9861
|
+
"arguments": [],
|
|
9862
|
+
"options": [
|
|
9863
|
+
{
|
|
9864
|
+
"flags": "--provider <name>",
|
|
9865
|
+
"description": "claude"
|
|
9866
|
+
},
|
|
9867
|
+
{
|
|
9868
|
+
"flags": "--apply",
|
|
9869
|
+
"description": "Move eligible between-turn sessions (requires the Claude account balance gate)"
|
|
9870
|
+
},
|
|
9871
|
+
{
|
|
9872
|
+
"flags": "--json",
|
|
9873
|
+
"description": "JSON on stdout (always)"
|
|
9874
|
+
}
|
|
9875
|
+
],
|
|
9876
|
+
"subcommands": []
|
|
9877
|
+
},
|
|
9793
9878
|
{
|
|
9794
9879
|
"name": "login",
|
|
9795
9880
|
"description": "Create a home, run the vendor login, and register the account",
|
package/dist/commands/lanes.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export type { OutpostIdentity } from "../lib/lanes/admission-host.js";
|
|
|
12
12
|
export { LANE_HIRE_GRANTS_FLAG };
|
|
13
13
|
import { type OutpostDispatchResult } from "../lib/lanes/outpost-dispatch.js";
|
|
14
14
|
import { emitLaneDecisionEvents, type LaneMesh } from "../lib/lanes/mesh-events.js";
|
|
15
|
-
import { LANE_HIRE_GRANTS_FLAG, MAX_LANE_DEPTH, type LaneCompanyRef, type LaneRecord, type QuestionRecord, type ResolvedLaneWorker, type SeniorRef, type LivenessDeps, type MachineIdentity, type MonitorEvidenceReader, type RunCommand, type ThrottleDeps } from "../lib/lanes/index.js";
|
|
15
|
+
import { LANE_HIRE_GRANTS_FLAG, MAX_LANE_DEPTH, withLaneHireLocks, type LaneCompanyRef, type LaneRecord, type QuestionRecord, type ResolvedLaneWorker, type SeniorRef, type LivenessDeps, type MachineIdentity, type MonitorEvidenceReader, type RunCommand, type ThrottleDeps } from "../lib/lanes/index.js";
|
|
16
16
|
import { questionBodyAbsPath } from "../lib/lanes/questions.js";
|
|
17
17
|
import { type RunCompactionFn } from "../lib/lanes/compaction.js";
|
|
18
18
|
import { type KnownModelsDeps, type ProbeCommand } from "../lib/lanes/models.js";
|
|
@@ -80,6 +80,12 @@ export interface LanesCommandDeps {
|
|
|
80
80
|
lanePlacementEnabled?: () => boolean;
|
|
81
81
|
/** Test seam for the default-off lane hire-grants rollout gate. */
|
|
82
82
|
laneHireGrantsEnabled?: (company?: LaneCompanyRef | null) => boolean | Promise<boolean>;
|
|
83
|
+
/** Test seam for the SSM-only Outpost owner grant path. */
|
|
84
|
+
isSsmOwnerDispatch?: () => boolean;
|
|
85
|
+
/** Test seam for changing a lane between pre-lock and locked grant reads. */
|
|
86
|
+
withGrantHireLocks?: typeof withLaneHireLocks;
|
|
87
|
+
/** Test seam for the default-off Claude account-balancing gate. */
|
|
88
|
+
laneClaudeAccountBalanceEnabled?: () => boolean;
|
|
83
89
|
}
|
|
84
90
|
export declare const LANE_OUTPOST_LOAD_BALANCING_FLAG = "lanes.outpost-load-balancing";
|
|
85
91
|
export declare function parseSeniorRef(raw: string): SeniorRef;
|