@rosthq/cli 0.7.85 → 0.7.86
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/generator/groups.d.ts.map +1 -1
- package/dist/index.js +29 -4
- package/dist/index.js.map +3 -3
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"groups.d.ts","sourceRoot":"","sources":["../../src/generator/groups.ts"],"names":[],"mappings":"AAuCA,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAM1D,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAKhF,CAAC;
|
|
1
|
+
{"version":3,"file":"groups.d.ts","sourceRoot":"","sources":["../../src/generator/groups.ts"],"names":[],"mappings":"AAuCA,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAM1D,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAKhF,CAAC;AAosCF,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAmPjD,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -43827,6 +43827,17 @@ var runnerPostureSchema = external_exports.object({
|
|
|
43827
43827
|
network: external_exports.enum(["allow", "deny", "unknown"]),
|
|
43828
43828
|
capability_set: external_exports.array(external_exports.string())
|
|
43829
43829
|
}).strict();
|
|
43830
|
+
var runnerCapacityStateSchema = external_exports.enum(["available", "near_cap", "exhausted", "unknown"]);
|
|
43831
|
+
var runnerCapacitySchema = external_exports.object({
|
|
43832
|
+
account_alias: external_exports.string().nullable(),
|
|
43833
|
+
state: runnerCapacityStateSchema,
|
|
43834
|
+
raw_state: external_exports.string().nullable(),
|
|
43835
|
+
// Null until the harness gains rate-limit error classification (out of scope for DER-1588);
|
|
43836
|
+
// surfaced now so a fleet reader picks it up automatically once it starts being set.
|
|
43837
|
+
rate_limited_until: isoDateTime6.nullable(),
|
|
43838
|
+
has_observation: external_exports.boolean(),
|
|
43839
|
+
freshness: external_exports.enum(["fresh", "stale"])
|
|
43840
|
+
}).strict();
|
|
43830
43841
|
var runnerSummarySchema = external_exports.object({
|
|
43831
43842
|
id: uuid8,
|
|
43832
43843
|
name: external_exports.string(),
|
|
@@ -43836,6 +43847,7 @@ var runnerSummarySchema = external_exports.object({
|
|
|
43836
43847
|
cli_version: external_exports.string().nullable(),
|
|
43837
43848
|
posture: runnerPostureSchema,
|
|
43838
43849
|
execution: runnerExecutionReadinessSchema,
|
|
43850
|
+
capacity: runnerCapacitySchema,
|
|
43839
43851
|
paired_at: isoDateTime6.nullable(),
|
|
43840
43852
|
last_heartbeat_at: isoDateTime6.nullable(),
|
|
43841
43853
|
revoked_at: isoDateTime6.nullable(),
|
|
@@ -44219,6 +44231,8 @@ var systemHealthConnectivitySectionSchema = external_exports.object({
|
|
|
44219
44231
|
runner_count: external_exports.number().int().nonnegative(),
|
|
44220
44232
|
offline_runner_count: external_exports.number().int().nonnegative(),
|
|
44221
44233
|
not_execute_ready_runner_count: external_exports.number().int().nonnegative(),
|
|
44234
|
+
// DER-1588: fleet-wide near-cap/at-limit warning, driven off the runner capacity badge.
|
|
44235
|
+
near_cap_or_exhausted_runner_count: external_exports.number().int().nonnegative(),
|
|
44222
44236
|
integration_count: external_exports.number().int().nonnegative(),
|
|
44223
44237
|
disconnected_integration_count: external_exports.number().int().nonnegative(),
|
|
44224
44238
|
failed_notification_count: external_exports.number().int().nonnegative()
|
|
@@ -46412,6 +46426,8 @@ var WORK_VERBS = [
|
|
|
46412
46426
|
var workVerbSchema = external_exports.enum(WORK_VERBS);
|
|
46413
46427
|
var WORK_OUTCOMES = ["success", "warning", "error", "held"];
|
|
46414
46428
|
var workOutcomeSchema = external_exports.enum(WORK_OUTCOMES);
|
|
46429
|
+
var RESOLUTION_ATTRIBUTIONS = ["agent_self", "escalated_human"];
|
|
46430
|
+
var resolutionAttributionSchema = external_exports.enum(RESOLUTION_ATTRIBUTIONS);
|
|
46415
46431
|
var objectKindSchema = external_exports.string().trim().min(1).max(128);
|
|
46416
46432
|
var externalIdSchema = external_exports.string().trim().min(1).max(512);
|
|
46417
46433
|
var labelSchema = external_exports.string().trim().min(1).max(200);
|
|
@@ -46547,6 +46563,12 @@ var workDetailsSchemas = {
|
|
|
46547
46563
|
currency: external_exports.string().length(3).optional(),
|
|
46548
46564
|
unit: external_exports.string().max(64).optional(),
|
|
46549
46565
|
lead_time_days: external_exports.number().int().nonnegative().optional()
|
|
46566
|
+
}).strict(),
|
|
46567
|
+
// DER-1574: the resolution-attribution marker for a record that closes out an
|
|
46568
|
+
// `escalated`/`held` item — see RESOLUTION_ATTRIBUTIONS above.
|
|
46569
|
+
escalation_resolution: external_exports.object({
|
|
46570
|
+
resolved_by: resolutionAttributionSchema,
|
|
46571
|
+
resolution_note: external_exports.string().trim().min(1).max(2e3).optional()
|
|
46550
46572
|
}).strict()
|
|
46551
46573
|
};
|
|
46552
46574
|
|
|
@@ -49998,7 +50020,7 @@ Every notification should include the seat, cause, evidence, and requested decis
|
|
|
49998
50020
|
order: 75,
|
|
49999
50021
|
title: "Local runner guide",
|
|
50000
50022
|
summary: "How local agent sessions and runner surfaces should operate through {{brand}} without bypassing Charters or audit.",
|
|
50001
|
-
version: "2026-07-
|
|
50023
|
+
version: "2026-07-16.1",
|
|
50002
50024
|
public: true,
|
|
50003
50025
|
audiences: ["human", "cli", "mcp", "in_app_agent"],
|
|
50004
50026
|
stages: ["staffing", "operating_rhythm"],
|
|
@@ -50075,7 +50097,7 @@ A Forge turn should load its context in one order: build context first, then Ski
|
|
|
50075
50097
|
## Inspect and control runners from CLI or MCP
|
|
50076
50098
|
|
|
50077
50099
|
- Pair a new runner: \`runner.pairing.start\` / \`rost_start_runner_pairing\` with \`name\` and \`platform\` returns a human pairing code. This is owner/admin-only because it mints a short-lived runner pairing session that leads to machine credentials.
|
|
50078
|
-
- Inspect: \`{{cli}} runner list --json\` / \`runner.list\` / \`rost_list_runners\` shows heartbeat state plus execution readiness. A runner is execute-ready only when it has a live heartbeat, a detected local Claude or Codex runtime, and recent claim/result evidence or active queue processing. Settings and runner status/list surfaces also project the runner CLI version, sandbox posture, network posture, and reported capability set from heartbeat so operators can see whether the machine is current and still running with the expected guardrails. \`{{cli}} runner status\` / \`runner.status\` / \`rost_runner_status\` reads one runner with the same execution detail, due queue count, claimed/running counts, and recent result timestamps.
|
|
50100
|
+
- Inspect: \`{{cli}} runner list --json\` / \`runner.list\` / \`rost_list_runners\` shows heartbeat state plus execution readiness. A runner is execute-ready only when it has a live heartbeat, a detected local Claude or Codex runtime, and recent claim/result evidence or active queue processing. Settings and runner status/list surfaces also project the runner CLI version, sandbox posture, network posture, and reported capability set from heartbeat so operators can see whether the machine is current and still running with the expected guardrails. \`{{cli}} runner status\` / \`runner.status\` / \`rost_runner_status\` reads one runner with the same execution detail, due queue count, claimed/running counts, and recent result timestamps. Both surfaces also project a \`capacity\` view: the runner's active model-account alias, a badge state (\`available\`, \`near_cap\`, \`exhausted\`, or \`unknown\`), a rate-limited-until timestamp when the harness has classified one, and a fresh/stale refreshability flag mirroring heartbeat recency. The badge reads \`unknown\` \u2014 never a fabricated \`available\` \u2014 whenever no capacity observation has been recorded yet or the runner reported a state {{brand}} does not recognize; real 5-hour/weekly usage percentages and reset timestamps are not collected yet, so this view never claims a percentage it does not have. Settings > Connected machines and the Health dashboard's Connectivity tile (a fleet-wide near-cap/at-limit count) surface the same signal.
|
|
50079
50101
|
- Diagnose (DER-949): \`{{cli}} runner diagnose --runner-id <id>\` / \`runner.diagnose\` / \`rost_diagnose_runner\` returns health, capabilities, and repair guidance without exposing secrets. Use when a runner is offline or stale to get actionable next steps.
|
|
50080
50102
|
- Repair steps (DER-949): \`{{cli}} runner repair --runner-id <id> [--issue restart|re_pair|revoke_stale|missing_cli_runtime]\` / \`runner.repair\` / \`rost_repair_runner\` returns focused repair instructions. The optional \`issue\` flag narrows to a specific kind of repair (restart the app, re-pair, revoke a stale runner, or install a missing CLI runtime).
|
|
50081
50103
|
- Work orders: \`{{cli}} runner work-orders\` / \`work_order.list\` / \`rost_list_work_orders\`; queue with \`work_order.enqueue\` / \`rost_enqueue_work_order\` for a live scheduled agent, or use \`agent.run_now\` / \`rost_run_agent_now\` when an operator wants the product to queue and dispatch an immediate live run from a seat id; cancel with \`work_order.cancel\` / \`rost_cancel_work_order\`. The operator Settings page mirrors queued, claimed, running, and recent completed runner evidence so online does not imply can execute.
|
|
@@ -52990,17 +53012,20 @@ function renderRunnerList(output) {
|
|
|
52990
53012
|
return runners.map((runner) => {
|
|
52991
53013
|
const record2 = asRecord(runner);
|
|
52992
53014
|
const posture = asRecord(record2.posture);
|
|
53015
|
+
const capacity = asRecord(record2.capacity);
|
|
52993
53016
|
const capabilitySet = asArray(posture.capability_set).map((value) => String(value)).join(", ");
|
|
52994
|
-
return `${field(record2, "id")} ${field(record2, "health")} ${field(record2, "name")} (${field(record2, "platform")}) cli=${field(record2, "cli_version")} sandbox=${field(posture, "sandbox")} network=${field(posture, "network")}${capabilitySet.length > 0 ? ` capabilities=${capabilitySet}` : ""}`;
|
|
53017
|
+
return `${field(record2, "id")} ${field(record2, "health")} ${field(record2, "name")} (${field(record2, "platform")}) cli=${field(record2, "cli_version")} sandbox=${field(posture, "sandbox")} network=${field(posture, "network")}${capabilitySet.length > 0 ? ` capabilities=${capabilitySet}` : ""} capacity=${field(capacity, "state")} account=${field(capacity, "account_alias")} freshness=${field(capacity, "freshness")}`;
|
|
52995
53018
|
}).join("\n");
|
|
52996
53019
|
}
|
|
52997
53020
|
function renderRunnerStatus(output) {
|
|
52998
53021
|
const record2 = asRecord(output);
|
|
52999
53022
|
const posture = asRecord(record2.posture);
|
|
53023
|
+
const capacity = asRecord(record2.capacity);
|
|
53000
53024
|
const capabilitySet = asArray(posture.capability_set).map((value) => String(value)).join(", ");
|
|
53001
53025
|
const lines = [
|
|
53002
53026
|
`${field(record2, "id")} ${field(record2, "health")} ${field(record2, "name")} (last heartbeat ${field(record2, "last_heartbeat_at")}).`,
|
|
53003
|
-
`cli_version: ${field(record2, "cli_version")} sandbox: ${field(posture, "sandbox")} network: ${field(posture, "network")}
|
|
53027
|
+
`cli_version: ${field(record2, "cli_version")} sandbox: ${field(posture, "sandbox")} network: ${field(posture, "network")}`,
|
|
53028
|
+
`capacity: ${field(capacity, "state")} account: ${field(capacity, "account_alias")} freshness: ${field(capacity, "freshness")} rate_limited_until: ${field(capacity, "rate_limited_until")}`
|
|
53004
53029
|
];
|
|
53005
53030
|
if (capabilitySet.length > 0) {
|
|
53006
53031
|
lines.push(`capabilities: ${capabilitySet}`);
|