@indigoai-us/hq-cli 5.176.0 → 5.177.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/CHANGELOG.md +15 -0
- package/dist/command-catalog.generated.d.ts +40 -0
- package/dist/command-catalog.generated.js +52 -0
- package/dist/commands/lanes.d.ts +4 -1
- package/dist/commands/lanes.js +605 -121
- package/dist/lib/lanes/hire-grants.d.ts +25 -0
- package/dist/lib/lanes/hire-grants.js +85 -0
- package/dist/lib/lanes/index.d.ts +3 -1
- package/dist/lib/lanes/index.js +2 -1
- package/dist/lib/lanes/outpost-dispatch.d.ts +3 -1
- package/dist/lib/lanes/outpost-dispatch.js +7 -1
- package/dist/lib/lanes/store.d.ts +5 -1
- package/dist/lib/lanes/store.js +25 -3
- package/dist/lib/lanes/types.d.ts +2 -0
- package/dist/lib/lanes/types.js +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [5.177.0] — 2026-09-24
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- `hq lanes create --hire-grant`, `hq lanes grant`, and `hq lanes backfill-grants`
|
|
10
|
+
manage alive child-lane grants. `lanes.hire-grants` defaults off; lane list and
|
|
11
|
+
show include grant and alive-child counts. Terminal child resume, message, and
|
|
12
|
+
account-move paths recheck occupancy and remaining grant allocation. The
|
|
13
|
+
backfill defaults to dry-run.
|
|
14
|
+
|
|
15
|
+
- When `lanes.hire-grants` is enabled, `hq lanes list` and `hq lanes show` use counts
|
|
16
|
+
from the owning Outpost for active remote lanes. If the Outpost does not return
|
|
17
|
+
counts, both commands show local counts and a warning.
|
|
18
|
+
|
|
5
19
|
## [5.176.0] — 2026-09-24
|
|
6
20
|
|
|
7
21
|
### Fixed
|
|
@@ -32,6 +46,7 @@
|
|
|
32
46
|
- Bot LaunchAgents and systemd units, the Work Mesh daemon unit, the `hq daemon` unit, and the lanes and agent-kit units now name node by its upgrade-stable path (`/opt/homebrew/bin/node` or `/opt/homebrew/opt/<formula>/bin/node`, or nvm's `current` link) instead of the versioned `/opt/homebrew/Cellar/node/<version>/bin/node`. Before, `brew upgrade node` deleted that path and launchd could no longer start the bots. The stable path is used only when it resolves to the same node binary; otherwise the unit keeps the resolved path as before.
|
|
33
47
|
- Installed bot LaunchAgents that still name a versioned or missing node are repaired: `hq bot start` rewrites and reloads the agent, a bot started by launchd rewrites its own agent and reloads it from a detached shell before it takes any message, and `hq doctor` reports it (`bots.<name>.daemon-node`), with `hq doctor --fix` rewriting only the plist file and not reloading launchd. `hq bot list` and `hq bot status` flag a missing node binary. `hq mesh daemon install --if-stale` also reinstalls a same-version unit whose node path is missing or versioned.
|
|
34
48
|
|
|
49
|
+
|
|
35
50
|
## [5.172.0] — 2026-09-24
|
|
36
51
|
|
|
37
52
|
### Changed
|
|
@@ -6886,6 +6886,9 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
6886
6886
|
}, {
|
|
6887
6887
|
readonly flags: "--senior <ref>";
|
|
6888
6888
|
readonly description: "session:<id> | lane:<id> | user";
|
|
6889
|
+
}, {
|
|
6890
|
+
readonly flags: "--hire-grant <n>";
|
|
6891
|
+
readonly description: "Maximum alive direct child lanes assigned to this lane; set by its senior";
|
|
6889
6892
|
}, {
|
|
6890
6893
|
readonly flags: "--timeout <secs>";
|
|
6891
6894
|
readonly description: "Deadline in seconds (warns, does not kill)";
|
|
@@ -6906,6 +6909,43 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
6906
6909
|
readonly description: "JSON on stdout (always)";
|
|
6907
6910
|
}];
|
|
6908
6911
|
readonly subcommands: readonly [];
|
|
6912
|
+
}, {
|
|
6913
|
+
readonly name: "grant";
|
|
6914
|
+
readonly description: "Set a lane's alive child-lane grant as its senior";
|
|
6915
|
+
readonly aliases: readonly [];
|
|
6916
|
+
readonly hidden: false;
|
|
6917
|
+
readonly usage: "[options] <lane-id>";
|
|
6918
|
+
readonly arguments: readonly [{
|
|
6919
|
+
readonly name: "lane-id";
|
|
6920
|
+
readonly required: true;
|
|
6921
|
+
readonly variadic: false;
|
|
6922
|
+
}];
|
|
6923
|
+
readonly options: readonly [{
|
|
6924
|
+
readonly flags: "--hire <n>";
|
|
6925
|
+
readonly description: "Non-negative safe integer hire grant";
|
|
6926
|
+
}, {
|
|
6927
|
+
readonly flags: "--json";
|
|
6928
|
+
readonly description: "JSON on stdout (always)";
|
|
6929
|
+
}];
|
|
6930
|
+
readonly subcommands: readonly [];
|
|
6931
|
+
}, {
|
|
6932
|
+
readonly name: "backfill-grants";
|
|
6933
|
+
readonly description: "Preview or apply missing hire grants for alive manager lanes";
|
|
6934
|
+
readonly aliases: readonly [];
|
|
6935
|
+
readonly hidden: false;
|
|
6936
|
+
readonly usage: "[options]";
|
|
6937
|
+
readonly arguments: readonly [];
|
|
6938
|
+
readonly options: readonly [{
|
|
6939
|
+
readonly flags: "--dry-run";
|
|
6940
|
+
readonly description: "Print proposed values without writing (default)";
|
|
6941
|
+
}, {
|
|
6942
|
+
readonly flags: "--apply";
|
|
6943
|
+
readonly description: "Write missing hire grants; only run before enforcement is enabled";
|
|
6944
|
+
}, {
|
|
6945
|
+
readonly flags: "--json";
|
|
6946
|
+
readonly description: "JSON on stdout (always)";
|
|
6947
|
+
}];
|
|
6948
|
+
readonly subcommands: readonly [];
|
|
6909
6949
|
}, {
|
|
6910
6950
|
readonly name: "list";
|
|
6911
6951
|
readonly description: "List lanes";
|
|
@@ -8898,6 +8898,10 @@ export const COMMAND_CATALOG = [
|
|
|
8898
8898
|
"flags": "--senior <ref>",
|
|
8899
8899
|
"description": "session:<id> | lane:<id> | user"
|
|
8900
8900
|
},
|
|
8901
|
+
{
|
|
8902
|
+
"flags": "--hire-grant <n>",
|
|
8903
|
+
"description": "Maximum alive direct child lanes assigned to this lane; set by its senior"
|
|
8904
|
+
},
|
|
8901
8905
|
{
|
|
8902
8906
|
"flags": "--timeout <secs>",
|
|
8903
8907
|
"description": "Deadline in seconds (warns, does not kill)"
|
|
@@ -8925,6 +8929,54 @@ export const COMMAND_CATALOG = [
|
|
|
8925
8929
|
],
|
|
8926
8930
|
"subcommands": []
|
|
8927
8931
|
},
|
|
8932
|
+
{
|
|
8933
|
+
"name": "grant",
|
|
8934
|
+
"description": "Set a lane's alive child-lane grant as its senior",
|
|
8935
|
+
"aliases": [],
|
|
8936
|
+
"hidden": false,
|
|
8937
|
+
"usage": "[options] <lane-id>",
|
|
8938
|
+
"arguments": [
|
|
8939
|
+
{
|
|
8940
|
+
"name": "lane-id",
|
|
8941
|
+
"required": true,
|
|
8942
|
+
"variadic": false
|
|
8943
|
+
}
|
|
8944
|
+
],
|
|
8945
|
+
"options": [
|
|
8946
|
+
{
|
|
8947
|
+
"flags": "--hire <n>",
|
|
8948
|
+
"description": "Non-negative safe integer hire grant"
|
|
8949
|
+
},
|
|
8950
|
+
{
|
|
8951
|
+
"flags": "--json",
|
|
8952
|
+
"description": "JSON on stdout (always)"
|
|
8953
|
+
}
|
|
8954
|
+
],
|
|
8955
|
+
"subcommands": []
|
|
8956
|
+
},
|
|
8957
|
+
{
|
|
8958
|
+
"name": "backfill-grants",
|
|
8959
|
+
"description": "Preview or apply missing hire grants for alive manager lanes",
|
|
8960
|
+
"aliases": [],
|
|
8961
|
+
"hidden": false,
|
|
8962
|
+
"usage": "[options]",
|
|
8963
|
+
"arguments": [],
|
|
8964
|
+
"options": [
|
|
8965
|
+
{
|
|
8966
|
+
"flags": "--dry-run",
|
|
8967
|
+
"description": "Print proposed values without writing (default)"
|
|
8968
|
+
},
|
|
8969
|
+
{
|
|
8970
|
+
"flags": "--apply",
|
|
8971
|
+
"description": "Write missing hire grants; only run before enforcement is enabled"
|
|
8972
|
+
},
|
|
8973
|
+
{
|
|
8974
|
+
"flags": "--json",
|
|
8975
|
+
"description": "JSON on stdout (always)"
|
|
8976
|
+
}
|
|
8977
|
+
],
|
|
8978
|
+
"subcommands": []
|
|
8979
|
+
},
|
|
8928
8980
|
{
|
|
8929
8981
|
"name": "list",
|
|
8930
8982
|
"description": "List lanes",
|
package/dist/commands/lanes.d.ts
CHANGED
|
@@ -9,9 +9,10 @@ import { Command } from "commander";
|
|
|
9
9
|
import type { OutpostIdentity } from "../lib/lanes/admission-host.js";
|
|
10
10
|
export { OUTPOST_DIR, OUTPOST_ID_PATH, readOutpostIdentity } from "../lib/lanes/admission-host.js";
|
|
11
11
|
export type { OutpostIdentity } from "../lib/lanes/admission-host.js";
|
|
12
|
+
export { LANE_HIRE_GRANTS_FLAG };
|
|
12
13
|
import { type OutpostDispatchResult } from "../lib/lanes/outpost-dispatch.js";
|
|
13
14
|
import { emitLaneDecisionEvents, type LaneMesh } from "../lib/lanes/mesh-events.js";
|
|
14
|
-
import { 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, 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
16
|
import { questionBodyAbsPath } from "../lib/lanes/questions.js";
|
|
16
17
|
import { type RunCompactionFn } from "../lib/lanes/compaction.js";
|
|
17
18
|
import { type KnownModelsDeps, type ProbeCommand } from "../lib/lanes/models.js";
|
|
@@ -77,6 +78,8 @@ export interface LanesCommandDeps {
|
|
|
77
78
|
monitorEvidence?: MonitorEvidenceReader;
|
|
78
79
|
/** Test seam for the default-off outpost placement rollout flag. */
|
|
79
80
|
lanePlacementEnabled?: () => boolean;
|
|
81
|
+
/** Test seam for the default-off lane hire-grants rollout gate. */
|
|
82
|
+
laneHireGrantsEnabled?: () => boolean;
|
|
80
83
|
}
|
|
81
84
|
export declare const LANE_OUTPOST_LOAD_BALANCING_FLAG = "lanes.outpost-load-balancing";
|
|
82
85
|
export declare function parseSeniorRef(raw: string): SeniorRef;
|