@h-rig/contracts 0.0.6-alpha.176 → 0.0.6-alpha.178

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.
Files changed (67) hide show
  1. package/dist/index.cjs +132 -63
  2. package/dist/index.mjs +132 -63
  3. package/dist/src/blocker-classifier.d.ts +21 -0
  4. package/dist/src/blocker-classifier.js +13 -0
  5. package/dist/src/cockpit.d.ts +30 -0
  6. package/dist/src/config.d.ts +7 -5
  7. package/dist/src/config.js +3 -1
  8. package/dist/src/control-plane-types.d.ts +2 -2
  9. package/dist/src/github.d.ts +10 -0
  10. package/dist/src/guard.d.ts +7 -0
  11. package/dist/src/guard.js +10 -1
  12. package/dist/src/harness-profile-state.d.ts +10 -0
  13. package/dist/src/harness-profile-state.js +13 -0
  14. package/dist/src/index.d.ts +14 -0
  15. package/dist/src/index.js +132 -63
  16. package/dist/src/layout.d.ts +0 -5
  17. package/dist/src/layout.js +1 -3
  18. package/dist/src/lifecycle-capabilities.d.ts +40 -2
  19. package/dist/src/lifecycle-capabilities.js +12 -0
  20. package/dist/src/managed-repos.d.ts +103 -3
  21. package/dist/src/managed-repos.js +4 -0
  22. package/dist/src/model.d.ts +11 -75
  23. package/dist/src/model.js +3 -58
  24. package/dist/src/placement.d.ts +47 -0
  25. package/dist/src/placement.js +13 -0
  26. package/dist/src/product-entrypoint.d.ts +22 -0
  27. package/dist/src/product-entrypoint.js +13 -0
  28. package/dist/src/provider.d.ts +14 -14
  29. package/dist/src/provider.js +12 -11
  30. package/dist/src/remote-control.d.ts +93 -0
  31. package/dist/src/remote-control.js +26 -0
  32. package/dist/src/run-control.d.ts +164 -0
  33. package/dist/src/run-control.js +13 -0
  34. package/dist/src/run-discovery.d.ts +5 -1
  35. package/dist/src/run-queue.d.ts +36 -0
  36. package/dist/src/run-queue.js +13 -0
  37. package/dist/src/run-read-model.d.ts +33 -88
  38. package/dist/src/run-session-journal.d.ts +86 -1
  39. package/dist/src/run-session-journal.js +9 -0
  40. package/dist/src/runtime-secrets.d.ts +10 -0
  41. package/dist/src/runtime-secrets.js +13 -0
  42. package/dist/src/session-hook-materializer.d.ts +41 -0
  43. package/dist/src/session-hook-materializer.js +13 -0
  44. package/dist/src/setup.d.ts +67 -1
  45. package/dist/src/supervisor-journal.d.ts +9 -9
  46. package/dist/src/supervisor-journal.js +2 -0
  47. package/dist/src/supervisor-loop.d.ts +40 -0
  48. package/dist/src/supervisor-loop.js +13 -0
  49. package/dist/src/task-artifacts.d.ts +20 -0
  50. package/dist/src/task-config.d.ts +22 -0
  51. package/dist/src/task-config.js +1 -0
  52. package/dist/src/task-data.d.ts +6 -8
  53. package/dist/src/task-source.d.ts +58 -27
  54. package/dist/src/task-source.js +9 -1
  55. package/dist/src/task-state-paths.d.ts +14 -0
  56. package/dist/src/task-state-paths.js +13 -0
  57. package/dist/src/task-state-store.d.ts +21 -1
  58. package/dist/src/task-state-store.js +4 -0
  59. package/dist/src/task-tracker-state.d.ts +5 -10
  60. package/dist/src/toolchain-sources.d.ts +1 -1
  61. package/dist/src/transport-config.d.ts +161 -0
  62. package/dist/src/transport-config.js +15 -0
  63. package/dist/src/workflow-journal.d.ts +33 -0
  64. package/dist/src/workflow-journal.js +9 -0
  65. package/dist/src/workspace-service.d.ts +16 -0
  66. package/dist/src/workspace-service.js +13 -0
  67. package/package.json +5 -1
@@ -1,4 +1,5 @@
1
1
  import type { PolicyMode } from "./policy";
2
+ import type { CapabilityId } from "./capability-id";
2
3
  export declare const POLICY_VERSION: 1;
3
4
  export type PolicyVersion = typeof POLICY_VERSION;
4
5
  export type { PolicyMode };
@@ -109,3 +110,9 @@ export type GuardDecision = {
109
110
  action: "allow" | "block" | "warn";
110
111
  failClosed: boolean;
111
112
  };
113
+ export interface GuardService {
114
+ readonly loadPolicy: (projectRoot: string) => PolicyConfig;
115
+ readonly evaluate: (context: GuardContext) => GuardDecision;
116
+ }
117
+ export declare const GUARD_CAPABILITY_ID = "rig.guard.service";
118
+ export declare const GUARD: CapabilityId<GuardService>;
package/dist/src/guard.js CHANGED
@@ -1,6 +1,15 @@
1
1
  // @bun
2
+ // packages/contracts/src/capability-id.ts
3
+ function makeCapabilityId(id) {
4
+ return id;
5
+ }
6
+
2
7
  // packages/contracts/src/guard.ts
3
8
  var POLICY_VERSION = 1;
9
+ var GUARD_CAPABILITY_ID = "rig.guard.service";
10
+ var GUARD = makeCapabilityId(GUARD_CAPABILITY_ID);
4
11
  export {
5
- POLICY_VERSION
12
+ POLICY_VERSION,
13
+ GUARD_CAPABILITY_ID,
14
+ GUARD
6
15
  };
@@ -0,0 +1,10 @@
1
+ import type { CapabilityId } from "./capability-id";
2
+ type JsonObject = object;
3
+ export interface HarnessProfileStateService {
4
+ harnessStateJsonPath(projectRoot: string, filename: string): string;
5
+ readHarnessStateJson<T extends JsonObject>(projectRoot: string, filename: string): Partial<T> | null;
6
+ writeHarnessStateJson<T extends JsonObject>(projectRoot: string, filename: string, value: T): string;
7
+ }
8
+ export declare const HARNESS_PROFILE_STATE_CAPABILITY_ID = "provider.harness-profile-state";
9
+ export declare const HARNESS_PROFILE_STATE: CapabilityId<HarnessProfileStateService>;
10
+ export {};
@@ -0,0 +1,13 @@
1
+ // @bun
2
+ // packages/contracts/src/capability-id.ts
3
+ function makeCapabilityId(id) {
4
+ return id;
5
+ }
6
+
7
+ // packages/contracts/src/harness-profile-state.ts
8
+ var HARNESS_PROFILE_STATE_CAPABILITY_ID = "provider.harness-profile-state";
9
+ var HARNESS_PROFILE_STATE = makeCapabilityId(HARNESS_PROFILE_STATE_CAPABILITY_ID);
10
+ export {
11
+ HARNESS_PROFILE_STATE_CAPABILITY_ID,
12
+ HARNESS_PROFILE_STATE
13
+ };
@@ -10,11 +10,14 @@ export * from "./run-timeline";
10
10
  export * from "./run-record";
11
11
  export * from "./run-status";
12
12
  export * from "./run-read-model";
13
+ export * from "./run-control";
14
+ export * from "./runtime-secrets";
13
15
  export * from "./conversation";
14
16
  export * from "./plugin";
15
17
  export * from "./agent-roles";
16
18
  export * from "./plugin-hooks";
17
19
  export * from "./config";
20
+ export * from "./blocker-classifier";
18
21
  export * from "./policy";
19
22
  export * from "./guard";
20
23
  export * from "./tool-registry";
@@ -35,9 +38,11 @@ export * from "./host";
35
38
  export * from "./run-identity";
36
39
  export * from "./prompt";
37
40
  export * from "./task-source";
41
+ export * from "./task-config";
38
42
  export * from "./task-state-metadata";
39
43
  export * from "./task-data";
40
44
  export * from "./task-state-store";
45
+ export * from "./task-state-paths";
41
46
  export * from "./task-artifacts";
42
47
  export * from "./task-context-renderer";
43
48
  export * from "./task-tracker-state";
@@ -56,6 +61,7 @@ export * from "./control-plane-types";
56
61
  export * from "./capability-id";
57
62
  export * from "./dependency-preflight";
58
63
  export * from "./workspace-config";
64
+ export * from "./workspace-service";
59
65
  export * from "./runtime-task-context";
60
66
  export * from "./layout";
61
67
  export * from "./errors";
@@ -67,18 +73,26 @@ export * from "./notify";
67
73
  export * from "./collab-session-viewer";
68
74
  export * from "./provider-instructions";
69
75
  export * from "./session-asset-materializer";
76
+ export * from "./session-hook-materializer";
70
77
  export * from "./isolation";
71
78
  export * from "./managed-repos";
72
79
  export * from "./task-graph-primitives";
73
80
  export * from "./github";
81
+ export * from "./harness-profile-state";
74
82
  export * from "./doctor";
75
83
  export * from "./run-dispatch";
84
+ export * from "./transport-config";
85
+ export * from "./placement";
86
+ export * from "./run-queue";
87
+ export * from "./supervisor-loop";
76
88
  export * from "./identity";
77
89
  export * from "./run-discovery";
78
90
  export * from "./run-registry-backbone";
91
+ export * from "./remote-control";
79
92
  export * from "./tool-materializer";
80
93
  export * from "./toolchain-sources";
81
94
  export * from "./native-toolchain";
82
95
  export * from "./cockpit";
83
96
  export * from "./docs-drift";
97
+ export * from "./product-entrypoint";
84
98
  export * from "./cli-runner";
package/dist/src/index.js CHANGED
@@ -875,6 +875,8 @@ var TYPE_FOR_CUSTOM = {
875
875
  [RIG_RUN_PIPELINE_RESOLVED]: "pipeline-resolved",
876
876
  [RIG_RUN_STAGE_OUTCOME]: "stage-outcome"
877
877
  };
878
+ var RUN_SESSION_JOURNAL_CAPABILITY_ID = "rig.runs.session-journal";
879
+ var RUN_SESSION_JOURNAL = makeCapabilityId(RUN_SESSION_JOURNAL_CAPABILITY_ID);
878
880
  // packages/contracts/src/workflow-journal.ts
879
881
  var RIG_WORKFLOW_STARTED = "rig.workflow.started";
880
882
  var RIG_WORKFLOW_TARGET_SELECTED = "rig.workflow.target.selected";
@@ -883,6 +885,8 @@ var RIG_WORKFLOW_STATUS_CHANGED = "rig.workflow.status.changed";
883
885
  var RIG_WORKFLOW_OPERATOR_NOTE = "rig.workflow.operator.note";
884
886
  var RIG_WORKFLOW_INBOX_REQUESTED = "rig.workflow.inbox.requested";
885
887
  var RIG_WORKFLOW_INBOX_RESOLVED = "rig.workflow.inbox.resolved";
888
+ var RIG_WORKFLOW_JOURNAL_WRITER_CAPABILITY_ID = "rig.workflow.journal-writer";
889
+ var RIG_WORKFLOW_JOURNAL_WRITER = makeCapabilityId(RIG_WORKFLOW_JOURNAL_WRITER_CAPABILITY_ID);
886
890
  // packages/contracts/src/run-status.ts
887
891
  var OPERATOR_INACTIVE_RUN_STATUSES = new Set([
888
892
  "completed",
@@ -909,6 +913,12 @@ var OPERATOR_INACTIVE_RUN_STATUSES = new Set([
909
913
  // packages/contracts/src/run-read-model.ts
910
914
  var RUN_READ_MODEL_CAPABILITY_ID = "rig.runs.read-model";
911
915
  var RUN_READ_MODEL = makeCapabilityId(RUN_READ_MODEL_CAPABILITY_ID);
916
+ // packages/contracts/src/run-control.ts
917
+ var RUN_CONTROL_CAPABILITY_ID = "rig.runs.control";
918
+ var RUN_CONTROL = makeCapabilityId(RUN_CONTROL_CAPABILITY_ID);
919
+ // packages/contracts/src/runtime-secrets.ts
920
+ var RUNTIME_SECRETS_CAPABILITY_ID = "provider.runtime-secrets";
921
+ var RUNTIME_SECRETS = makeCapabilityId(RUNTIME_SECRETS_CAPABILITY_ID);
912
922
  // packages/contracts/src/conversation.ts
913
923
  import { Schema as Schema8 } from "effect";
914
924
  var EngineMessageRole = Schema8.Literals(["user", "assistant", "system"]);
@@ -1214,6 +1224,8 @@ import { Schema as Schema12 } from "effect";
1214
1224
  var SupervisorStopReason = Schema12.Literals([
1215
1225
  "all-done",
1216
1226
  "all-human-blocked",
1227
+ "blocked",
1228
+ "work-pending",
1217
1229
  "max-tasks",
1218
1230
  "budget",
1219
1231
  "judge-stop",
@@ -1430,7 +1442,7 @@ var GitHubProjectStatusConfig = Schema13.Struct({
1430
1442
  }))
1431
1443
  });
1432
1444
  var GitHubConfig = Schema13.Struct({
1433
- issueUpdates: Schema13.optional(Schema13.Literals(["all", "lifecycle", "minimal", "off"])),
1445
+ issueUpdates: Schema13.optional(Schema13.String),
1434
1446
  projects: Schema13.optional(GitHubProjectStatusConfig)
1435
1447
  });
1436
1448
  var AutomationConfig = Schema13.Struct({
@@ -1478,6 +1490,9 @@ var RigConfig = Schema13.Struct({
1478
1490
  capabilities: Schema13.optional(CapabilityGrants),
1479
1491
  env: Schema13.optional(Schema13.Record(Schema13.String, Schema13.String))
1480
1492
  });
1493
+ // packages/contracts/src/blocker-classifier.ts
1494
+ var BLOCKER_CLASSIFIER_CAPABILITY_ID = "rig.blockers.classifier";
1495
+ var BLOCKER_CLASSIFIER = makeCapabilityId(BLOCKER_CLASSIFIER_CAPABILITY_ID);
1481
1496
  // packages/contracts/src/policy.ts
1482
1497
  import { Schema as Schema14 } from "effect";
1483
1498
  var PolicyDecision = Schema14.Literals(["allow", "warn", "block"]);
@@ -1494,6 +1509,8 @@ var PolicyDecisionSummary = Schema14.Struct({
1494
1509
  });
1495
1510
  // packages/contracts/src/guard.ts
1496
1511
  var POLICY_VERSION = 1;
1512
+ var GUARD_CAPABILITY_ID = "rig.guard.service";
1513
+ var GUARD = makeCapabilityId(GUARD_CAPABILITY_ID);
1497
1514
  // packages/contracts/src/tool-registry.ts
1498
1515
  var RUNTIME_SHELL_TOOL_NAMES = [
1499
1516
  "bash",
@@ -1960,56 +1977,8 @@ import { Schema as Schema21 } from "effect";
1960
1977
 
1961
1978
  // packages/contracts/src/model.ts
1962
1979
  import { Schema as Schema20 } from "effect";
1963
- var CODEX_REASONING_EFFORT_OPTIONS = ["xhigh", "high", "medium", "low"];
1964
- var CodexModelOptions = Schema20.Struct({
1965
- reasoningEffort: Schema20.optional(Schema20.Literals(CODEX_REASONING_EFFORT_OPTIONS)),
1966
- fastMode: Schema20.optional(Schema20.Boolean)
1967
- });
1968
- var ClaudeModelOptions = Schema20.Struct({});
1969
- var ProviderModelOptions = Schema20.Struct({
1970
- codex: Schema20.optional(CodexModelOptions),
1971
- claude: Schema20.optional(ClaudeModelOptions)
1972
- });
1973
- var MODEL_OPTIONS_BY_PROVIDER = {
1974
- codex: [
1975
- { slug: "gpt-5.4", name: "GPT-5.4" },
1976
- { slug: "gpt-5.3-codex", name: "GPT-5.3 Codex" },
1977
- { slug: "gpt-5.3-codex-spark", name: "GPT-5.3 Codex Spark" },
1978
- { slug: "gpt-5.2-codex", name: "GPT-5.2 Codex" },
1979
- { slug: "gpt-5.2", name: "GPT-5.2" }
1980
- ],
1981
- claude: [
1982
- { slug: "claude-sonnet-4-6", name: "Claude Sonnet 4.6" },
1983
- { slug: "claude-opus-4-1", name: "Claude Opus 4.1" },
1984
- { slug: "claude-3-7-sonnet-latest", name: "Claude 3.7 Sonnet" }
1985
- ]
1986
- };
1987
- var DEFAULT_MODEL_BY_PROVIDER = {
1988
- codex: "gpt-5.4",
1989
- claude: "claude-sonnet-4-6"
1990
- };
1991
- var MODEL_SLUG_ALIASES_BY_PROVIDER = {
1992
- codex: {
1993
- "5.4": "gpt-5.4",
1994
- "5.3": "gpt-5.3-codex",
1995
- "gpt-5.3": "gpt-5.3-codex",
1996
- "5.3-spark": "gpt-5.3-codex-spark",
1997
- "gpt-5.3-spark": "gpt-5.3-codex-spark"
1998
- },
1999
- claude: {
2000
- sonnet: "claude-sonnet-4-6",
2001
- opus: "claude-opus-4-1",
2002
- "3.7-sonnet": "claude-3-7-sonnet-latest"
2003
- }
2004
- };
2005
- var REASONING_EFFORT_OPTIONS_BY_PROVIDER = {
2006
- codex: CODEX_REASONING_EFFORT_OPTIONS,
2007
- claude: []
2008
- };
2009
- var DEFAULT_REASONING_EFFORT_BY_PROVIDER = {
2010
- codex: "high",
2011
- claude: null
2012
- };
1980
+ var ModelSlug = Schema20.String;
1981
+ var ProviderModelOptions = Schema20.Record(Schema20.String, Schema20.Unknown);
2013
1982
 
2014
1983
  // packages/contracts/src/provider.ts
2015
1984
  var TrimmedNonEmptyStringSchema2 = TrimmedNonEmptyString;
@@ -2100,6 +2069,8 @@ var ProviderEvent = Schema21.Struct({
2100
2069
  textDelta: Schema21.optional(Schema21.String),
2101
2070
  payload: Schema21.optional(Schema21.Unknown)
2102
2071
  });
2072
+ var AGENT_HARNESS_CAPABILITY_ID = "rig.provider.agent-harness";
2073
+ var AGENT_HARNESS = makeCapabilityId(AGENT_HARNESS_CAPABILITY_ID);
2103
2074
  // packages/contracts/src/keybindings.ts
2104
2075
  import { Schema as Schema22 } from "effect";
2105
2076
  var MAX_KEYBINDING_VALUE_LENGTH = 64;
@@ -2387,9 +2358,13 @@ var RUN_IDENTITY_ENV = makeCapabilityId(RUN_IDENTITY_ENV_CAPABILITY_ID);
2387
2358
  var PRIOR_PROGRESS_PROMPT_CAPABILITY_ID = "prompt.prior-progress";
2388
2359
  var PRIOR_PROGRESS_PROMPT = makeCapabilityId(PRIOR_PROGRESS_PROMPT_CAPABILITY_ID);
2389
2360
  // packages/contracts/src/task-source.ts
2361
+ var TASK_SOURCE_CONFIG_PROJECTION_CAPABILITY_ID = "task-sources.config-projection";
2362
+ var TASK_SOURCE_CONFIG_PROJECTION = makeCapabilityId(TASK_SOURCE_CONFIG_PROJECTION_CAPABILITY_ID);
2363
+ var TASK_SOURCE_TERMINAL_STATE_CAPABILITY_ID = "task-sources.terminal-state";
2364
+ var TASK_SOURCE_TERMINAL_STATE = makeCapabilityId(TASK_SOURCE_TERMINAL_STATE_CAPABILITY_ID);
2390
2365
  var TASK_SOURCE_UPDATE_CAPABILITY_ID = "task-sources.update";
2391
2366
  var TASK_SOURCE_UPDATE = makeCapabilityId(TASK_SOURCE_UPDATE_CAPABILITY_ID);
2392
- var TASK_IO_SERVICE_CAPABILITY_ID = "task-sources.task-io";
2367
+ var TASK_IO_SERVICE_CAPABILITY_ID = "rig.tasks.io";
2393
2368
  var TASK_IO_SERVICE_CAPABILITY = makeCapabilityId(TASK_IO_SERVICE_CAPABILITY_ID);
2394
2369
  // packages/contracts/src/task-data.ts
2395
2370
  var TASK_DATA_SERVICE_CAPABILITY_ID = "task-sources.task-data";
@@ -2397,6 +2372,11 @@ var TASK_DATA_SERVICE_CAPABILITY = makeCapabilityId(TASK_DATA_SERVICE_CAPABILITY
2397
2372
  // packages/contracts/src/task-state-store.ts
2398
2373
  var TASK_STATE_STORE_CAPABILITY_ID = "task-state.store";
2399
2374
  var TASK_STATE_STORE = makeCapabilityId(TASK_STATE_STORE_CAPABILITY_ID);
2375
+ var TASK_STATE_TERMINAL_STATE_CAPABILITY_ID = "task-state.terminal-state";
2376
+ var TASK_STATE_TERMINAL_STATE = makeCapabilityId(TASK_STATE_TERMINAL_STATE_CAPABILITY_ID);
2377
+ // packages/contracts/src/task-state-paths.ts
2378
+ var TASK_STATE_PATHS_CAPABILITY_ID = "task-state.paths";
2379
+ var TASK_STATE_PATHS = makeCapabilityId(TASK_STATE_PATHS_CAPABILITY_ID);
2400
2380
  // packages/contracts/src/task-artifacts.ts
2401
2381
  var TASK_ARTIFACTS_CAPABILITY_ID = "task-state.artifacts";
2402
2382
  var TASK_ARTIFACTS = makeCapabilityId(TASK_ARTIFACTS_CAPABILITY_ID);
@@ -2696,10 +2676,12 @@ var DEPENDENCY_PREFLIGHT_CAPABILITY = makeCapabilityId(DEPENDENCY_PREFLIGHT_CAPA
2696
2676
  // packages/contracts/src/workspace-config.ts
2697
2677
  var WORKSPACE_CONFIG_ENSURE_CAPABILITY_ID = "workspace.config.ensure";
2698
2678
  var WORKSPACE_CONFIG_ENSURE = makeCapabilityId(WORKSPACE_CONFIG_ENSURE_CAPABILITY_ID);
2679
+ // packages/contracts/src/workspace-service.ts
2680
+ var WORKSPACE_SERVICE_CAPABILITY_ID = "rig.workspace.service";
2681
+ var WORKSPACE_SERVICE = makeCapabilityId(WORKSPACE_SERVICE_CAPABILITY_ID);
2699
2682
  // packages/contracts/src/layout.ts
2700
2683
  var RIG_DEFINITION_DIRNAME = "rig";
2701
2684
  var RIG_STATE_DIRNAME = ".rig";
2702
- var RIG_ARTIFACTS_DIRNAME = "artifacts";
2703
2685
  // packages/contracts/src/errors.ts
2704
2686
  class CliError extends Error {
2705
2687
  exitCode;
@@ -2718,13 +2700,19 @@ var TASK_VERIFY_CAPABILITY_ID = "default-lifecycle.task-verify";
2718
2700
  var TASK_VALIDATION_CAPABILITY_ID = "default-lifecycle.task-validation";
2719
2701
  var COMPLETION_VERIFICATION_CAPABILITY_ID = "default-lifecycle.completion-verification";
2720
2702
  var RUN_CLOSEOUT_CAPABILITY_ID = "default-lifecycle.run-closeout";
2703
+ var RUN_SESSION_JOURNAL_WRITER_CAPABILITY_ID = "run-worker.run-session-journal-writer";
2721
2704
  var TASK_SOURCE_REFLECTION_CAPABILITY_ID = "default-lifecycle.task-source-reflection";
2705
+ var TASK_TERMINAL_STATE_CAPABILITY_ID = "default-lifecycle.task-terminal-state";
2706
+ var TASK_REOPEN_CAPABILITY_ID = "default-lifecycle.task-reopen";
2722
2707
  var LIFECYCLE_GIT_AGENT_CAPABILITY_ID = "default-lifecycle.git-agent";
2723
2708
  var TASK_VERIFY_CAPABILITY = makeCapabilityId(TASK_VERIFY_CAPABILITY_ID);
2724
2709
  var TASK_VALIDATION_CAPABILITY = makeCapabilityId(TASK_VALIDATION_CAPABILITY_ID);
2725
2710
  var COMPLETION_VERIFICATION_CAPABILITY = makeCapabilityId(COMPLETION_VERIFICATION_CAPABILITY_ID);
2726
2711
  var LIFECYCLE_GIT_AGENT = makeCapabilityId(LIFECYCLE_GIT_AGENT_CAPABILITY_ID);
2727
2712
  var TASK_SOURCE_REFLECTION = makeCapabilityId(TASK_SOURCE_REFLECTION_CAPABILITY_ID);
2713
+ var TASK_TERMINAL_STATE = makeCapabilityId(TASK_TERMINAL_STATE_CAPABILITY_ID);
2714
+ var TASK_REOPEN = makeCapabilityId(TASK_REOPEN_CAPABILITY_ID);
2715
+ var RUN_SESSION_JOURNAL_WRITER = makeCapabilityId(RUN_SESSION_JOURNAL_WRITER_CAPABILITY_ID);
2728
2716
  var RUN_CLOSEOUT_CAPABILITY = makeCapabilityId(RUN_CLOSEOUT_CAPABILITY_ID);
2729
2717
  // packages/contracts/src/browser.ts
2730
2718
  var BROWSER_CONTRACT_SERVICE_CAPABILITY_ID = "browser.contract";
@@ -2745,6 +2733,9 @@ var RUNTIME_INSTRUCTION = makeCapabilityId(RUNTIME_INSTRUCTION_SERVICE_CAPABILIT
2745
2733
  // packages/contracts/src/session-asset-materializer.ts
2746
2734
  var SESSION_ASSET_MATERIALIZER_CAPABILITY_ID = "provider.session-asset-materializer";
2747
2735
  var SESSION_ASSET_MATERIALIZER = makeCapabilityId(SESSION_ASSET_MATERIALIZER_CAPABILITY_ID);
2736
+ // packages/contracts/src/session-hook-materializer.ts
2737
+ var SESSION_HOOK_MATERIALIZER_CAPABILITY_ID = "provider.session-hook-materializer";
2738
+ var SESSION_HOOK_MATERIALIZER = makeCapabilityId(SESSION_HOOK_MATERIALIZER_CAPABILITY_ID);
2748
2739
  // packages/contracts/src/isolation.ts
2749
2740
  var ISOLATION_BACKEND_CAPABILITY_ID = "isolation.backend";
2750
2741
  var ISOLATION_BACKEND = makeCapabilityId(ISOLATION_BACKEND_CAPABILITY_ID);
@@ -2759,6 +2750,8 @@ var REPO_CHANGE_SET_CAPABILITY_ID = "repos.change-set";
2759
2750
  var REPO_CHANGE_SET = makeCapabilityId(REPO_CHANGE_SET_CAPABILITY_ID);
2760
2751
  var REPO_OPERATIONS_CAPABILITY_ID = "repos.operations";
2761
2752
  var REPO_OPERATIONS_CAPABILITY = makeCapabilityId(REPO_OPERATIONS_CAPABILITY_ID);
2753
+ var REPO_TRACKER_PERSISTENCE_CAPABILITY_ID = "repos.tracker-persistence";
2754
+ var REPO_TRACKER_PERSISTENCE = makeCapabilityId(REPO_TRACKER_PERSISTENCE_CAPABILITY_ID);
2762
2755
  var MANAGED_REPO_SERVICE_CAPABILITY_ID = "managed-repos.service";
2763
2756
  var MANAGED_REPO_SERVICE_CAPABILITY = makeCapabilityId(MANAGED_REPO_SERVICE_CAPABILITY_ID);
2764
2757
  // packages/contracts/src/github.ts
@@ -2766,18 +2759,49 @@ var GITHUB_PROVIDER_CAPABILITY_ID = "github.provider";
2766
2759
  var GITHUB_PROVIDER = makeCapabilityId(GITHUB_PROVIDER_CAPABILITY_ID);
2767
2760
  var ISSUE_TRIAGE_CAPABILITY_ID = "cap:issue-triage";
2768
2761
  var ISSUE_TRIAGE = makeCapabilityId(ISSUE_TRIAGE_CAPABILITY_ID);
2762
+ // packages/contracts/src/harness-profile-state.ts
2763
+ var HARNESS_PROFILE_STATE_CAPABILITY_ID = "provider.harness-profile-state";
2764
+ var HARNESS_PROFILE_STATE = makeCapabilityId(HARNESS_PROFILE_STATE_CAPABILITY_ID);
2769
2765
  // packages/contracts/src/doctor.ts
2770
2766
  var DOCTOR_RUNNER_CAPABILITY_ID = "doctor.runner";
2771
2767
  var DOCTOR = makeCapabilityId(DOCTOR_RUNNER_CAPABILITY_ID);
2772
2768
  // packages/contracts/src/run-dispatch.ts
2773
2769
  var RUN_DISPATCH_CAPABILITY_ID = "rig.runs.dispatch";
2774
2770
  var RUN_DISPATCH = makeCapabilityId(RUN_DISPATCH_CAPABILITY_ID);
2771
+ // packages/contracts/src/transport-config.ts
2772
+ var DEFAULT_REMOTE_PORT = 7890;
2773
+ var TRANSPORT_CONFIG_CAPABILITY_ID = "rig.transport.config";
2774
+ var TRANSPORT_CONFIG = makeCapabilityId(TRANSPORT_CONFIG_CAPABILITY_ID);
2775
+ // packages/contracts/src/placement.ts
2776
+ var PLACEMENT_SERVICE_CAPABILITY_ID = "rig.transport.placement";
2777
+ var PLACEMENT_SERVICE = makeCapabilityId(PLACEMENT_SERVICE_CAPABILITY_ID);
2778
+ // packages/contracts/src/run-queue.ts
2779
+ var RUN_QUEUE_CAPABILITY_ID = "rig.scheduler.run-queue";
2780
+ var RUN_QUEUE = makeCapabilityId(RUN_QUEUE_CAPABILITY_ID);
2781
+ // packages/contracts/src/supervisor-loop.ts
2782
+ var SUPERVISOR_LOOP_CAPABILITY_ID = "rig.supervisor.loop";
2783
+ var SUPERVISOR_LOOP = makeCapabilityId(SUPERVISOR_LOOP_CAPABILITY_ID);
2775
2784
  // packages/contracts/src/run-discovery.ts
2776
2785
  var RUN_DISCOVERY_CAPABILITY_ID = "rig.runs.discovery";
2777
2786
  var RUN_DISCOVERY = makeCapabilityId(RUN_DISCOVERY_CAPABILITY_ID);
2778
2787
  // packages/contracts/src/run-registry-backbone.ts
2779
2788
  var RUN_REGISTRY_BACKBONE_CAPABILITY_ID = "transport.run-registry-backbone";
2780
2789
  var RUN_REGISTRY_BACKBONE = makeCapabilityId(RUN_REGISTRY_BACKBONE_CAPABILITY_ID);
2790
+ // packages/contracts/src/remote-control.ts
2791
+ class RemoteControlError extends Error {
2792
+ code;
2793
+ exitCode;
2794
+ details;
2795
+ constructor(code, message, exitCode = 1, details) {
2796
+ super(message);
2797
+ this.name = "RemoteControlError";
2798
+ this.code = code;
2799
+ this.exitCode = exitCode;
2800
+ this.details = details;
2801
+ }
2802
+ }
2803
+ var REMOTE_CONTROL_CAPABILITY_ID = "rig.remote.control";
2804
+ var REMOTE_CONTROL = makeCapabilityId(REMOTE_CONTROL_CAPABILITY_ID);
2781
2805
  // packages/contracts/src/tool-materializer.ts
2782
2806
  var TOOL_MATERIALIZER_CAPABILITY_ID = "provider.tool-materializer";
2783
2807
  var TOOL_MATERIALIZER = makeCapabilityId(TOOL_MATERIALIZER_CAPABILITY_ID);
@@ -2797,6 +2821,9 @@ var DOCS_DRIFT_VALIDATOR_ID = "std:docs-drift";
2797
2821
  var DOCS_DRIFT_CLI_ID = "std:drift";
2798
2822
  var DOCS_DRIFT_STAGE_ID = "docs-drift";
2799
2823
  var DOCS_DRIFT_CAPABILITY_ID = "std:docs-drift-capability";
2824
+ // packages/contracts/src/product-entrypoint.ts
2825
+ var PRODUCT_ENTRYPOINT_CAPABILITY_ID = "rig.product.entrypoint";
2826
+ var PRODUCT_ENTRYPOINT = makeCapabilityId(PRODUCT_ENTRYPOINT_CAPABILITY_ID);
2800
2827
  // packages/contracts/src/cli-runner.ts
2801
2828
  var CLI_RUNNER_CAPABILITY_ID = "rig.cli.runner";
2802
2829
  var CLI_RUNNER = makeCapabilityId(CLI_RUNNER_CAPABILITY_ID);
@@ -2823,6 +2850,8 @@ export {
2823
2850
  WorkspaceId,
2824
2851
  WorkspaceConfig,
2825
2852
  WorkspaceCheckout,
2853
+ WORKSPACE_SERVICE_CAPABILITY_ID,
2854
+ WORKSPACE_SERVICE,
2826
2855
  WORKSPACE_CONFIG_ENSURE_CAPABILITY_ID,
2827
2856
  WORKSPACE_CONFIG_ENSURE,
2828
2857
  ValidatorRegistration,
@@ -2860,6 +2889,8 @@ export {
2860
2889
  TaskFieldExtension,
2861
2890
  TaskClosureSummary,
2862
2891
  TYPE_FOR_CUSTOM,
2892
+ TRANSPORT_CONFIG_CAPABILITY_ID,
2893
+ TRANSPORT_CONFIG,
2863
2894
  TOOL_MATERIALIZER_CAPABILITY_ID,
2864
2895
  TOOL_MATERIALIZER,
2865
2896
  TASK_VERIFY_CAPABILITY_ID,
@@ -2876,14 +2907,26 @@ export {
2876
2907
  TASK_TRACKER_READINESS_POLICY_CAPABILITY_ID,
2877
2908
  TASK_TRACKER_READINESS_POLICY,
2878
2909
  TASK_TRACKER_LIFECYCLE_STATUSES,
2910
+ TASK_TERMINAL_STATE_CAPABILITY_ID,
2911
+ TASK_TERMINAL_STATE,
2912
+ TASK_STATE_TERMINAL_STATE_CAPABILITY_ID,
2913
+ TASK_STATE_TERMINAL_STATE,
2879
2914
  TASK_STATE_STORE_CAPABILITY_ID,
2880
2915
  TASK_STATE_STORE,
2916
+ TASK_STATE_PATHS_CAPABILITY_ID,
2917
+ TASK_STATE_PATHS,
2881
2918
  TASK_SOURCE_UPDATE_CAPABILITY_ID,
2882
2919
  TASK_SOURCE_UPDATE,
2920
+ TASK_SOURCE_TERMINAL_STATE_CAPABILITY_ID,
2921
+ TASK_SOURCE_TERMINAL_STATE,
2883
2922
  TASK_SOURCE_REFLECTION_CAPABILITY_ID,
2884
2923
  TASK_SOURCE_REFLECTION,
2924
+ TASK_SOURCE_CONFIG_PROJECTION_CAPABILITY_ID,
2925
+ TASK_SOURCE_CONFIG_PROJECTION,
2885
2926
  TASK_SELECTION_CAPABILITY_ID,
2886
2927
  TASK_SELECTION,
2928
+ TASK_REOPEN_CAPABILITY_ID,
2929
+ TASK_REOPEN,
2887
2930
  TASK_PROJECTION_CAPABILITY_ID,
2888
2931
  TASK_IO_SERVICE_CAPABILITY_ID,
2889
2932
  TASK_IO_SERVICE_CAPABILITY,
@@ -2930,6 +2973,10 @@ export {
2930
2973
  SafeRunId,
2931
2974
  SafePathSegment,
2932
2975
  SafeGitRefComponent,
2976
+ SUPERVISOR_LOOP_CAPABILITY_ID,
2977
+ SUPERVISOR_LOOP,
2978
+ SESSION_HOOK_MATERIALIZER_CAPABILITY_ID,
2979
+ SESSION_HOOK_MATERIALIZER,
2933
2980
  SESSION_ASSET_MATERIALIZER_CAPABILITY_ID,
2934
2981
  SESSION_ASSET_MATERIALIZER,
2935
2982
  SCRIPT_RUN_COMMAND_PATTERN,
@@ -3031,22 +3078,33 @@ export {
3031
3078
  RemoteIterationOutput,
3032
3079
  RemoteEndpointId,
3033
3080
  RemoteEndpoint,
3081
+ RemoteControlError,
3034
3082
  RemoteConnectionSummary,
3035
3083
  RemoteConnectionStatusChanged,
3036
3084
  RemoteConnectionStatus,
3085
+ RUN_SESSION_JOURNAL_WRITER_CAPABILITY_ID,
3086
+ RUN_SESSION_JOURNAL_WRITER,
3087
+ RUN_SESSION_JOURNAL_CAPABILITY_ID,
3088
+ RUN_SESSION_JOURNAL,
3037
3089
  RUN_REGISTRY_BACKBONE_CAPABILITY_ID,
3038
3090
  RUN_REGISTRY_BACKBONE,
3039
3091
  RUN_READ_MODEL_CAPABILITY_ID,
3040
3092
  RUN_READ_MODEL,
3093
+ RUN_QUEUE_CAPABILITY_ID,
3094
+ RUN_QUEUE,
3041
3095
  RUN_IDENTITY_ENV_CAPABILITY_ID,
3042
3096
  RUN_IDENTITY_ENV,
3043
3097
  RUN_DISPATCH_CAPABILITY_ID,
3044
3098
  RUN_DISPATCH,
3045
3099
  RUN_DISCOVERY_CAPABILITY_ID,
3046
3100
  RUN_DISCOVERY,
3101
+ RUN_CONTROL_CAPABILITY_ID,
3102
+ RUN_CONTROL,
3047
3103
  RUN_CLOSEOUT_CAPABILITY_ID,
3048
3104
  RUN_CLOSEOUT_CAPABILITY,
3049
3105
  RUNTIME_SHELL_TOOL_NAMES,
3106
+ RUNTIME_SECRETS_CAPABILITY_ID,
3107
+ RUNTIME_SECRETS,
3050
3108
  RUNTIME_INSTRUCTION_SERVICE_CAPABILITY_ID,
3051
3109
  RUNTIME_INSTRUCTION,
3052
3110
  RUNTIME_FILE_TOOL_NAMES,
@@ -3056,6 +3114,8 @@ export {
3056
3114
  RIG_WORKFLOW_STATUS_CHANGED,
3057
3115
  RIG_WORKFLOW_STARTED,
3058
3116
  RIG_WORKFLOW_OPERATOR_NOTE,
3117
+ RIG_WORKFLOW_JOURNAL_WRITER_CAPABILITY_ID,
3118
+ RIG_WORKFLOW_JOURNAL_WRITER,
3059
3119
  RIG_WORKFLOW_INBOX_RESOLVED,
3060
3120
  RIG_WORKFLOW_INBOX_REQUESTED,
3061
3121
  RIG_SUPERVISOR_PANEL_ID,
@@ -3084,7 +3144,8 @@ export {
3084
3144
  RIG_DEFINITION_DIRNAME,
3085
3145
  RIG_CONTROL_SENTINEL_END,
3086
3146
  RIG_CAPABILITY_PANEL_SLOT,
3087
- RIG_ARTIFACTS_DIRNAME,
3147
+ REPO_TRACKER_PERSISTENCE_CAPABILITY_ID,
3148
+ REPO_TRACKER_PERSISTENCE,
3088
3149
  REPO_OPERATIONS_CAPABILITY_ID,
3089
3150
  REPO_OPERATIONS_CAPABILITY,
3090
3151
  REPO_NATIVE_GIT_CAPABILITY_ID,
@@ -3093,7 +3154,8 @@ export {
3093
3154
  REPO_GIT_BINARY,
3094
3155
  REPO_CHANGE_SET_CAPABILITY_ID,
3095
3156
  REPO_CHANGE_SET,
3096
- REASONING_EFFORT_OPTIONS_BY_PROVIDER,
3157
+ REMOTE_CONTROL_CAPABILITY_ID,
3158
+ REMOTE_CONTROL,
3097
3159
  QueueEntry,
3098
3160
  PullRequestConfig,
3099
3161
  ProviderUserInputAnswers,
@@ -3148,9 +3210,13 @@ export {
3148
3210
  PROJECT_SETUP_CAPABILITY_ID,
3149
3211
  PROJECT_SETUP,
3150
3212
  PROJECT_READ_FILE_MAX_BYTES_VALUE,
3213
+ PRODUCT_ENTRYPOINT_CAPABILITY_ID,
3214
+ PRODUCT_ENTRYPOINT,
3151
3215
  PRIOR_PROGRESS_PROMPT_CAPABILITY_ID,
3152
3216
  PRIOR_PROGRESS_PROMPT,
3153
3217
  POLICY_VERSION,
3218
+ PLACEMENT_SERVICE_CAPABILITY_ID,
3219
+ PLACEMENT_SERVICE,
3154
3220
  PLACEMENT_RUN_TRANSPORT,
3155
3221
  OpenQuestion,
3156
3222
  OpenInEditorInput,
@@ -3163,11 +3229,10 @@ export {
3163
3229
  NATIVE_TOOLCHAIN_GIT,
3164
3230
  NATIVE_TOOLCHAIN_BINARY_BUILD_CAPABILITY_ID,
3165
3231
  NATIVE_TOOLCHAIN_BINARY_BUILD,
3232
+ ModelSlug,
3166
3233
  MissingCapability,
3167
3234
  MessageId,
3168
3235
  MergeConfig,
3169
- MODEL_SLUG_ALIASES_BY_PROVIDER,
3170
- MODEL_OPTIONS_BY_PROVIDER,
3171
3236
  MEMORY_SERVICE_CAPABILITY_ID,
3172
3237
  MEMORY,
3173
3238
  MAX_WHEN_EXPRESSION_DEPTH,
@@ -3210,6 +3275,8 @@ export {
3210
3275
  HOST_RUN,
3211
3276
  HELP_CATALOG_CAPABILITY_ID,
3212
3277
  HELP_CATALOG,
3278
+ HARNESS_PROFILE_STATE_CAPABILITY_ID,
3279
+ HARNESS_PROFILE_STATE,
3213
3280
  GraphSummary,
3214
3281
  GraphId,
3215
3282
  GitStatusResult,
@@ -3234,6 +3301,8 @@ export {
3234
3301
  GitBranch,
3235
3302
  GUARD_TOOLCHAIN_SOURCES_CAPABILITY_ID,
3236
3303
  GUARD_TOOLCHAIN_SOURCES,
3304
+ GUARD_CAPABILITY_ID,
3305
+ GUARD,
3237
3306
  GRAPH_PROJECT_CAPABILITY_ID,
3238
3307
  GRAPH_PROJECT,
3239
3308
  GITHUB_PROVIDER_CAPABILITY_ID,
@@ -3270,13 +3339,11 @@ export {
3270
3339
  DEPENDENCY_PREFLIGHT_CAPABILITY,
3271
3340
  DEFAULT_TERMINAL_ID,
3272
3341
  DEFAULT_RUNTIME_MODE,
3273
- DEFAULT_REASONING_EFFORT_BY_PROVIDER,
3342
+ DEFAULT_REMOTE_PORT,
3274
3343
  DEFAULT_PROVIDER_INTERACTION_MODE,
3275
- DEFAULT_MODEL_BY_PROVIDER,
3276
3344
  ConversationSummary,
3277
3345
  ConversationId,
3278
3346
  CommandId,
3279
- CodexModelOptions,
3280
3347
  CliTaskSummary,
3281
3348
  CliTaskFilters,
3282
3349
  CliServerConnection,
@@ -3287,7 +3354,6 @@ export {
3287
3354
  CliError,
3288
3355
  CliDoctorCheck,
3289
3356
  CliCommandRegistration,
3290
- ClaudeModelOptions,
3291
3357
  ClarificationStatus,
3292
3358
  CheckpointRef,
3293
3359
  ChatImageAttachment,
@@ -3305,7 +3371,6 @@ export {
3305
3371
  COMPLETION_VERIFICATION_CAPABILITY,
3306
3372
  COLLAB_SESSION_VIEWER_CAPABILITY_ID,
3307
3373
  COLLAB_SESSION_VIEWER_CAPABILITY,
3308
- CODEX_REASONING_EFFORT_OPTIONS,
3309
3374
  CLI_RUNNER_CAPABILITY_ID,
3310
3375
  CLI_RUNNER,
3311
3376
  CLI_OUTPUT_VERSION,
@@ -3316,6 +3381,8 @@ export {
3316
3381
  BlockerClass,
3317
3382
  BROWSER_CONTRACT_SERVICE_CAPABILITY_ID,
3318
3383
  BROWSER_CONTRACT_SERVICE_CAPABILITY,
3384
+ BLOCKER_CLASSIFIER_CAPABILITY_ID,
3385
+ BLOCKER_CLASSIFIER,
3319
3386
  AutomationConfig,
3320
3387
  AssigneeRollup,
3321
3388
  ArtifactSummary,
@@ -3328,5 +3395,7 @@ export {
3328
3395
  AgentSessionHookEvent,
3329
3396
  AgentRoleRegistration,
3330
3397
  ActionRiskTier,
3331
- ActionId
3398
+ ActionId,
3399
+ AGENT_HARNESS_CAPABILITY_ID,
3400
+ AGENT_HARNESS
3332
3401
  };
@@ -2,17 +2,13 @@
2
2
  export declare const RIG_DEFINITION_DIRNAME = "rig";
3
3
  /** Directory name for rig's per-project state (`<root>/.rig`). */
4
4
  export declare const RIG_STATE_DIRNAME = ".rig";
5
- /** Directory name for run artifacts (`<workspace>/artifacts`). */
6
- export declare const RIG_ARTIFACTS_DIRNAME = "artifacts";
7
5
  export type RigLayout = {
8
6
  projectRoot: string;
9
7
  monorepoRoot: string;
10
8
  definitionRoot: string;
11
9
  runtimeWorkspaceRoot: string;
12
10
  stateRoot: string;
13
- artifactsRoot: string;
14
11
  configPath: string;
15
- taskConfigPath: string;
16
12
  policyDir: string;
17
13
  policyFile: string;
18
14
  pluginsDir: string;
@@ -35,7 +31,6 @@ export type RuntimeWorkspaceLayout = {
35
31
  rigRoot: string;
36
32
  stateDir: string;
37
33
  logsDir: string;
38
- artifactsRoot: string;
39
34
  runtimeDir: string;
40
35
  homeDir: string;
41
36
  tmpDir: string;
@@ -2,9 +2,7 @@
2
2
  // packages/contracts/src/layout.ts
3
3
  var RIG_DEFINITION_DIRNAME = "rig";
4
4
  var RIG_STATE_DIRNAME = ".rig";
5
- var RIG_ARTIFACTS_DIRNAME = "artifacts";
6
5
  export {
7
6
  RIG_STATE_DIRNAME,
8
- RIG_DEFINITION_DIRNAME,
9
- RIG_ARTIFACTS_DIRNAME
7
+ RIG_DEFINITION_DIRNAME
10
8
  };