@h-rig/contracts 0.0.6-alpha.163 → 0.0.6-alpha.165

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/index.cjs CHANGED
@@ -103,12 +103,35 @@ __export(exports_src, {
103
103
  TOOL_MATERIALIZER: () => TOOL_MATERIALIZER,
104
104
  TASK_VERIFY_CAPABILITY_ID: () => TASK_VERIFY_CAPABILITY_ID,
105
105
  TASK_VERIFY_CAPABILITY: () => TASK_VERIFY_CAPABILITY,
106
+ TASK_VALIDATION_CAPABILITY_ID: () => TASK_VALIDATION_CAPABILITY_ID,
107
+ TASK_VALIDATION_CAPABILITY: () => TASK_VALIDATION_CAPABILITY,
108
+ TASK_TRACKER_STATE_CAPABILITY_ID: () => TASK_TRACKER_STATE_CAPABILITY_ID,
109
+ TASK_TRACKER_STATE: () => TASK_TRACKER_STATE,
110
+ TASK_TRACKER_STALE_CLAIM_MS: () => TASK_TRACKER_STALE_CLAIM_MS,
111
+ TASK_TRACKER_REPO_LOCATOR_CAPABILITY_ID: () => TASK_TRACKER_REPO_LOCATOR_CAPABILITY_ID,
112
+ TASK_TRACKER_REPO_LOCATOR: () => TASK_TRACKER_REPO_LOCATOR,
113
+ TASK_TRACKER_RECONCILIATION_POLICY_CAPABILITY_ID: () => TASK_TRACKER_RECONCILIATION_POLICY_CAPABILITY_ID,
114
+ TASK_TRACKER_RECONCILIATION_POLICY: () => TASK_TRACKER_RECONCILIATION_POLICY,
115
+ TASK_TRACKER_READINESS_POLICY_CAPABILITY_ID: () => TASK_TRACKER_READINESS_POLICY_CAPABILITY_ID,
116
+ TASK_TRACKER_READINESS_POLICY: () => TASK_TRACKER_READINESS_POLICY,
117
+ TASK_TRACKER_LIFECYCLE_STATUSES: () => TASK_TRACKER_LIFECYCLE_STATUSES,
118
+ TASK_STATE_STORE_CAPABILITY_ID: () => TASK_STATE_STORE_CAPABILITY_ID,
119
+ TASK_STATE_STORE: () => TASK_STATE_STORE,
120
+ TASK_SOURCE_UPDATE_CAPABILITY_ID: () => TASK_SOURCE_UPDATE_CAPABILITY_ID,
121
+ TASK_SOURCE_UPDATE: () => TASK_SOURCE_UPDATE,
122
+ TASK_SOURCE_REFLECTION_CAPABILITY_ID: () => TASK_SOURCE_REFLECTION_CAPABILITY_ID,
123
+ TASK_SOURCE_REFLECTION: () => TASK_SOURCE_REFLECTION,
106
124
  TASK_SELECTION_CAPABILITY_ID: () => TASK_SELECTION_CAPABILITY_ID,
107
125
  TASK_SELECTION: () => TASK_SELECTION,
126
+ TASK_PROJECTION_CAPABILITY_ID: () => TASK_PROJECTION_CAPABILITY_ID,
108
127
  TASK_IO_SERVICE_CAPABILITY_ID: () => TASK_IO_SERVICE_CAPABILITY_ID,
109
128
  TASK_IO_SERVICE_CAPABILITY: () => TASK_IO_SERVICE_CAPABILITY,
110
129
  TASK_DATA_SERVICE_CAPABILITY_ID: () => TASK_DATA_SERVICE_CAPABILITY_ID,
111
130
  TASK_DATA_SERVICE_CAPABILITY: () => TASK_DATA_SERVICE_CAPABILITY,
131
+ TASK_CONTEXT_RENDERER_CAPABILITY_ID: () => TASK_CONTEXT_RENDERER_CAPABILITY_ID,
132
+ TASK_CONTEXT_RENDERER: () => TASK_CONTEXT_RENDERER,
133
+ TASK_ARTIFACTS_CAPABILITY_ID: () => TASK_ARTIFACTS_CAPABILITY_ID,
134
+ TASK_ARTIFACTS: () => TASK_ARTIFACTS,
112
135
  SupervisorStoppedEvent: () => SupervisorStoppedEvent,
113
136
  SupervisorStopReason: () => SupervisorStopReason,
114
137
  SupervisorStatus: () => SupervisorStatus,
@@ -303,6 +326,12 @@ __export(exports_src, {
303
326
  RIG_ARTIFACTS_DIRNAME: () => RIG_ARTIFACTS_DIRNAME,
304
327
  REPO_OPERATIONS_CAPABILITY_ID: () => REPO_OPERATIONS_CAPABILITY_ID,
305
328
  REPO_OPERATIONS_CAPABILITY: () => REPO_OPERATIONS_CAPABILITY,
329
+ REPO_NATIVE_GIT_CAPABILITY_ID: () => REPO_NATIVE_GIT_CAPABILITY_ID,
330
+ REPO_NATIVE_GIT: () => REPO_NATIVE_GIT,
331
+ REPO_GIT_BINARY_CAPABILITY_ID: () => REPO_GIT_BINARY_CAPABILITY_ID,
332
+ REPO_GIT_BINARY: () => REPO_GIT_BINARY,
333
+ REPO_CHANGE_SET_CAPABILITY_ID: () => REPO_CHANGE_SET_CAPABILITY_ID,
334
+ REPO_CHANGE_SET: () => REPO_CHANGE_SET,
306
335
  REASONING_EFFORT_OPTIONS_BY_PROVIDER: () => REASONING_EFFORT_OPTIONS_BY_PROVIDER,
307
336
  QueueEntry: () => QueueEntry,
308
337
  PullRequestConfig: () => PullRequestConfig,
@@ -369,6 +398,10 @@ __export(exports_src, {
369
398
  NO_MATCH_RETRIEVAL_CANONICAL_KEY: () => NO_MATCH_RETRIEVAL_CANONICAL_KEY,
370
399
  NOTIFY_SERVICE_CAPABILITY_ID: () => NOTIFY_SERVICE_CAPABILITY_ID,
371
400
  NOTIFY_SERVICE_CAPABILITY: () => NOTIFY_SERVICE_CAPABILITY,
401
+ NATIVE_TOOLCHAIN_GIT_CAPABILITY_ID: () => NATIVE_TOOLCHAIN_GIT_CAPABILITY_ID,
402
+ NATIVE_TOOLCHAIN_GIT: () => NATIVE_TOOLCHAIN_GIT,
403
+ NATIVE_TOOLCHAIN_BINARY_BUILD_CAPABILITY_ID: () => NATIVE_TOOLCHAIN_BINARY_BUILD_CAPABILITY_ID,
404
+ NATIVE_TOOLCHAIN_BINARY_BUILD: () => NATIVE_TOOLCHAIN_BINARY_BUILD,
372
405
  MissingCapability: () => MissingCapability,
373
406
  MessageId: () => MessageId,
374
407
  MergeConfig: () => MergeConfig,
@@ -467,6 +500,11 @@ __export(exports_src, {
467
500
  DependencyEdge: () => DependencyEdge,
468
501
  DOCTOR_RUNNER_CAPABILITY_ID: () => DOCTOR_RUNNER_CAPABILITY_ID,
469
502
  DOCTOR: () => DOCTOR,
503
+ DOCS_DRIFT_VALIDATOR_ID: () => DOCS_DRIFT_VALIDATOR_ID,
504
+ DOCS_DRIFT_STAGE_ID: () => DOCS_DRIFT_STAGE_ID,
505
+ DOCS_DRIFT_CLI_ID: () => DOCS_DRIFT_CLI_ID,
506
+ DOCS_DRIFT_CAPABILITY_ID: () => DOCS_DRIFT_CAPABILITY_ID,
507
+ DISPATCH_OUTCOME_CAPABILITY_ID: () => DISPATCH_OUTCOME_CAPABILITY_ID,
470
508
  DEPENDENCY_PREFLIGHT_CAPABILITY_ID: () => DEPENDENCY_PREFLIGHT_CAPABILITY_ID,
471
509
  DEPENDENCY_PREFLIGHT_CAPABILITY: () => DEPENDENCY_PREFLIGHT_CAPABILITY,
472
510
  DEFAULT_TERMINAL_ID: () => DEFAULT_TERMINAL_ID,
@@ -1962,7 +2000,7 @@ var GitHubProjectStatusConfig = import_effect13.Schema.Struct({
1962
2000
  }))
1963
2001
  });
1964
2002
  var GitHubConfig = import_effect13.Schema.Struct({
1965
- issueUpdates: import_effect13.Schema.optional(import_effect13.Schema.Literals(["lifecycle", "minimal", "off"])),
2003
+ issueUpdates: import_effect13.Schema.optional(import_effect13.Schema.Literals(["all", "lifecycle", "minimal", "off"])),
1966
2004
  projects: import_effect13.Schema.optional(GitHubProjectStatusConfig)
1967
2005
  });
1968
2006
  var AutomationConfig = import_effect13.Schema.Struct({
@@ -2919,11 +2957,43 @@ var RUN_IDENTITY_ENV = makeCapabilityId(RUN_IDENTITY_ENV_CAPABILITY_ID);
2919
2957
  var PRIOR_PROGRESS_PROMPT_CAPABILITY_ID = "prompt.prior-progress";
2920
2958
  var PRIOR_PROGRESS_PROMPT = makeCapabilityId(PRIOR_PROGRESS_PROMPT_CAPABILITY_ID);
2921
2959
  // packages/contracts/src/task-source.ts
2960
+ var TASK_SOURCE_UPDATE_CAPABILITY_ID = "task-sources.update";
2961
+ var TASK_SOURCE_UPDATE = makeCapabilityId(TASK_SOURCE_UPDATE_CAPABILITY_ID);
2922
2962
  var TASK_IO_SERVICE_CAPABILITY_ID = "task-sources.task-io";
2923
2963
  var TASK_IO_SERVICE_CAPABILITY = makeCapabilityId(TASK_IO_SERVICE_CAPABILITY_ID);
2924
2964
  // packages/contracts/src/task-data.ts
2925
2965
  var TASK_DATA_SERVICE_CAPABILITY_ID = "task-sources.task-data";
2926
2966
  var TASK_DATA_SERVICE_CAPABILITY = makeCapabilityId(TASK_DATA_SERVICE_CAPABILITY_ID);
2967
+ // packages/contracts/src/task-state-store.ts
2968
+ var TASK_STATE_STORE_CAPABILITY_ID = "task-state.store";
2969
+ var TASK_STATE_STORE = makeCapabilityId(TASK_STATE_STORE_CAPABILITY_ID);
2970
+ // packages/contracts/src/task-artifacts.ts
2971
+ var TASK_ARTIFACTS_CAPABILITY_ID = "task-state.artifacts";
2972
+ var TASK_ARTIFACTS = makeCapabilityId(TASK_ARTIFACTS_CAPABILITY_ID);
2973
+ // packages/contracts/src/task-context-renderer.ts
2974
+ var TASK_CONTEXT_RENDERER_CAPABILITY_ID = "provider.task-context-renderer";
2975
+ var TASK_CONTEXT_RENDERER = makeCapabilityId(TASK_CONTEXT_RENDERER_CAPABILITY_ID);
2976
+ // packages/contracts/src/task-tracker-state.ts
2977
+ var TASK_TRACKER_LIFECYCLE_STATUSES = [
2978
+ "draft",
2979
+ "open",
2980
+ "ready",
2981
+ "queued",
2982
+ "in_progress",
2983
+ "under_review",
2984
+ "blocked",
2985
+ "completed",
2986
+ "cancelled"
2987
+ ];
2988
+ var TASK_TRACKER_STALE_CLAIM_MS = 24 * 60 * 60 * 1000;
2989
+ var TASK_TRACKER_RECONCILIATION_POLICY_CAPABILITY_ID = "lifecycle.task-tracker-reconciliation-policy";
2990
+ var TASK_TRACKER_RECONCILIATION_POLICY = makeCapabilityId(TASK_TRACKER_RECONCILIATION_POLICY_CAPABILITY_ID);
2991
+ var TASK_TRACKER_READINESS_POLICY_CAPABILITY_ID = "scheduler.task-tracker-readiness-policy";
2992
+ var TASK_TRACKER_READINESS_POLICY = makeCapabilityId(TASK_TRACKER_READINESS_POLICY_CAPABILITY_ID);
2993
+ var TASK_TRACKER_REPO_LOCATOR_CAPABILITY_ID = "task-state.tracker-repo-locator";
2994
+ var TASK_TRACKER_REPO_LOCATOR = makeCapabilityId(TASK_TRACKER_REPO_LOCATOR_CAPABILITY_ID);
2995
+ var TASK_TRACKER_STATE_CAPABILITY_ID = "task-state.tracker-state";
2996
+ var TASK_TRACKER_STATE = makeCapabilityId(TASK_TRACKER_STATE_CAPABILITY_ID);
2927
2997
  // packages/contracts/src/cli-output.ts
2928
2998
  var import_effect26 = require("effect");
2929
2999
  var CLI_OUTPUT_VERSION = 1;
@@ -3215,12 +3285,16 @@ class CliError extends Error {
3215
3285
  }
3216
3286
  // packages/contracts/src/lifecycle-capabilities.ts
3217
3287
  var TASK_VERIFY_CAPABILITY_ID = "default-lifecycle.task-verify";
3288
+ var TASK_VALIDATION_CAPABILITY_ID = "default-lifecycle.task-validation";
3218
3289
  var COMPLETION_VERIFICATION_CAPABILITY_ID = "default-lifecycle.completion-verification";
3219
3290
  var RUN_CLOSEOUT_CAPABILITY_ID = "default-lifecycle.run-closeout";
3291
+ var TASK_SOURCE_REFLECTION_CAPABILITY_ID = "default-lifecycle.task-source-reflection";
3220
3292
  var LIFECYCLE_GIT_AGENT_CAPABILITY_ID = "default-lifecycle.git-agent";
3221
3293
  var TASK_VERIFY_CAPABILITY = makeCapabilityId(TASK_VERIFY_CAPABILITY_ID);
3294
+ var TASK_VALIDATION_CAPABILITY = makeCapabilityId(TASK_VALIDATION_CAPABILITY_ID);
3222
3295
  var COMPLETION_VERIFICATION_CAPABILITY = makeCapabilityId(COMPLETION_VERIFICATION_CAPABILITY_ID);
3223
3296
  var LIFECYCLE_GIT_AGENT = makeCapabilityId(LIFECYCLE_GIT_AGENT_CAPABILITY_ID);
3297
+ var TASK_SOURCE_REFLECTION = makeCapabilityId(TASK_SOURCE_REFLECTION_CAPABILITY_ID);
3224
3298
  var RUN_CLOSEOUT_CAPABILITY = makeCapabilityId(RUN_CLOSEOUT_CAPABILITY_ID);
3225
3299
  // packages/contracts/src/browser.ts
3226
3300
  var BROWSER_CONTRACT_SERVICE_CAPABILITY_ID = "browser.contract";
@@ -3245,6 +3319,14 @@ var SESSION_ASSET_MATERIALIZER = makeCapabilityId(SESSION_ASSET_MATERIALIZER_CAP
3245
3319
  var ISOLATION_BACKEND_CAPABILITY_ID = "isolation.backend";
3246
3320
  var ISOLATION_BACKEND = makeCapabilityId(ISOLATION_BACKEND_CAPABILITY_ID);
3247
3321
  // packages/contracts/src/managed-repos.ts
3322
+ var REPO_NATIVE_GIT_CAPABILITY_ID = "native-toolchain.git";
3323
+ var REPO_NATIVE_GIT = makeCapabilityId(REPO_NATIVE_GIT_CAPABILITY_ID);
3324
+ var NATIVE_TOOLCHAIN_GIT_CAPABILITY_ID = REPO_NATIVE_GIT_CAPABILITY_ID;
3325
+ var NATIVE_TOOLCHAIN_GIT = REPO_NATIVE_GIT;
3326
+ var REPO_GIT_BINARY_CAPABILITY_ID = "repos.git-binary";
3327
+ var REPO_GIT_BINARY = makeCapabilityId(REPO_GIT_BINARY_CAPABILITY_ID);
3328
+ var REPO_CHANGE_SET_CAPABILITY_ID = "repos.change-set";
3329
+ var REPO_CHANGE_SET = makeCapabilityId(REPO_CHANGE_SET_CAPABILITY_ID);
3248
3330
  var REPO_OPERATIONS_CAPABILITY_ID = "repos.operations";
3249
3331
  var REPO_OPERATIONS_CAPABILITY = makeCapabilityId(REPO_OPERATIONS_CAPABILITY_ID);
3250
3332
  var MANAGED_REPO_SERVICE_CAPABILITY_ID = "managed-repos.service";
@@ -3274,6 +3356,17 @@ var GUARD_TOOLCHAIN_SOURCES_CAPABILITY_ID = "rig.toolchain.sources.guard";
3274
3356
  var LIFECYCLE_TOOLCHAIN_SOURCES_CAPABILITY_ID = "rig.toolchain.sources.lifecycle";
3275
3357
  var GUARD_TOOLCHAIN_SOURCES = makeCapabilityId(GUARD_TOOLCHAIN_SOURCES_CAPABILITY_ID);
3276
3358
  var LIFECYCLE_TOOLCHAIN_SOURCES = makeCapabilityId(LIFECYCLE_TOOLCHAIN_SOURCES_CAPABILITY_ID);
3359
+ // packages/contracts/src/native-toolchain.ts
3360
+ var NATIVE_TOOLCHAIN_BINARY_BUILD_CAPABILITY_ID = "native-toolchain.binary-build";
3361
+ var NATIVE_TOOLCHAIN_BINARY_BUILD = makeCapabilityId(NATIVE_TOOLCHAIN_BINARY_BUILD_CAPABILITY_ID);
3362
+ // packages/contracts/src/cockpit.ts
3363
+ var TASK_PROJECTION_CAPABILITY_ID = makeCapabilityId("rig:task-projection");
3364
+ var DISPATCH_OUTCOME_CAPABILITY_ID = makeCapabilityId("rig:dispatch-outcome");
3365
+ // packages/contracts/src/docs-drift.ts
3366
+ var DOCS_DRIFT_VALIDATOR_ID = "std:docs-drift";
3367
+ var DOCS_DRIFT_CLI_ID = "std:drift";
3368
+ var DOCS_DRIFT_STAGE_ID = "docs-drift";
3369
+ var DOCS_DRIFT_CAPABILITY_ID = "std:docs-drift-capability";
3277
3370
  // packages/contracts/src/cli-runner.ts
3278
3371
  var CLI_RUNNER_CAPABILITY_ID = "rig.cli.runner";
3279
3372
  var CLI_RUNNER = makeCapabilityId(CLI_RUNNER_CAPABILITY_ID);
package/dist/index.mjs CHANGED
@@ -1430,7 +1430,7 @@ var GitHubProjectStatusConfig = Schema13.Struct({
1430
1430
  }))
1431
1431
  });
1432
1432
  var GitHubConfig = Schema13.Struct({
1433
- issueUpdates: Schema13.optional(Schema13.Literals(["lifecycle", "minimal", "off"])),
1433
+ issueUpdates: Schema13.optional(Schema13.Literals(["all", "lifecycle", "minimal", "off"])),
1434
1434
  projects: Schema13.optional(GitHubProjectStatusConfig)
1435
1435
  });
1436
1436
  var AutomationConfig = Schema13.Struct({
@@ -2387,11 +2387,43 @@ var RUN_IDENTITY_ENV = makeCapabilityId(RUN_IDENTITY_ENV_CAPABILITY_ID);
2387
2387
  var PRIOR_PROGRESS_PROMPT_CAPABILITY_ID = "prompt.prior-progress";
2388
2388
  var PRIOR_PROGRESS_PROMPT = makeCapabilityId(PRIOR_PROGRESS_PROMPT_CAPABILITY_ID);
2389
2389
  // packages/contracts/src/task-source.ts
2390
+ var TASK_SOURCE_UPDATE_CAPABILITY_ID = "task-sources.update";
2391
+ var TASK_SOURCE_UPDATE = makeCapabilityId(TASK_SOURCE_UPDATE_CAPABILITY_ID);
2390
2392
  var TASK_IO_SERVICE_CAPABILITY_ID = "task-sources.task-io";
2391
2393
  var TASK_IO_SERVICE_CAPABILITY = makeCapabilityId(TASK_IO_SERVICE_CAPABILITY_ID);
2392
2394
  // packages/contracts/src/task-data.ts
2393
2395
  var TASK_DATA_SERVICE_CAPABILITY_ID = "task-sources.task-data";
2394
2396
  var TASK_DATA_SERVICE_CAPABILITY = makeCapabilityId(TASK_DATA_SERVICE_CAPABILITY_ID);
2397
+ // packages/contracts/src/task-state-store.ts
2398
+ var TASK_STATE_STORE_CAPABILITY_ID = "task-state.store";
2399
+ var TASK_STATE_STORE = makeCapabilityId(TASK_STATE_STORE_CAPABILITY_ID);
2400
+ // packages/contracts/src/task-artifacts.ts
2401
+ var TASK_ARTIFACTS_CAPABILITY_ID = "task-state.artifacts";
2402
+ var TASK_ARTIFACTS = makeCapabilityId(TASK_ARTIFACTS_CAPABILITY_ID);
2403
+ // packages/contracts/src/task-context-renderer.ts
2404
+ var TASK_CONTEXT_RENDERER_CAPABILITY_ID = "provider.task-context-renderer";
2405
+ var TASK_CONTEXT_RENDERER = makeCapabilityId(TASK_CONTEXT_RENDERER_CAPABILITY_ID);
2406
+ // packages/contracts/src/task-tracker-state.ts
2407
+ var TASK_TRACKER_LIFECYCLE_STATUSES = [
2408
+ "draft",
2409
+ "open",
2410
+ "ready",
2411
+ "queued",
2412
+ "in_progress",
2413
+ "under_review",
2414
+ "blocked",
2415
+ "completed",
2416
+ "cancelled"
2417
+ ];
2418
+ var TASK_TRACKER_STALE_CLAIM_MS = 24 * 60 * 60 * 1000;
2419
+ var TASK_TRACKER_RECONCILIATION_POLICY_CAPABILITY_ID = "lifecycle.task-tracker-reconciliation-policy";
2420
+ var TASK_TRACKER_RECONCILIATION_POLICY = makeCapabilityId(TASK_TRACKER_RECONCILIATION_POLICY_CAPABILITY_ID);
2421
+ var TASK_TRACKER_READINESS_POLICY_CAPABILITY_ID = "scheduler.task-tracker-readiness-policy";
2422
+ var TASK_TRACKER_READINESS_POLICY = makeCapabilityId(TASK_TRACKER_READINESS_POLICY_CAPABILITY_ID);
2423
+ var TASK_TRACKER_REPO_LOCATOR_CAPABILITY_ID = "task-state.tracker-repo-locator";
2424
+ var TASK_TRACKER_REPO_LOCATOR = makeCapabilityId(TASK_TRACKER_REPO_LOCATOR_CAPABILITY_ID);
2425
+ var TASK_TRACKER_STATE_CAPABILITY_ID = "task-state.tracker-state";
2426
+ var TASK_TRACKER_STATE = makeCapabilityId(TASK_TRACKER_STATE_CAPABILITY_ID);
2395
2427
  // packages/contracts/src/cli-output.ts
2396
2428
  import { Schema as Schema26 } from "effect";
2397
2429
  var CLI_OUTPUT_VERSION = 1;
@@ -2683,12 +2715,16 @@ class CliError extends Error {
2683
2715
  }
2684
2716
  // packages/contracts/src/lifecycle-capabilities.ts
2685
2717
  var TASK_VERIFY_CAPABILITY_ID = "default-lifecycle.task-verify";
2718
+ var TASK_VALIDATION_CAPABILITY_ID = "default-lifecycle.task-validation";
2686
2719
  var COMPLETION_VERIFICATION_CAPABILITY_ID = "default-lifecycle.completion-verification";
2687
2720
  var RUN_CLOSEOUT_CAPABILITY_ID = "default-lifecycle.run-closeout";
2721
+ var TASK_SOURCE_REFLECTION_CAPABILITY_ID = "default-lifecycle.task-source-reflection";
2688
2722
  var LIFECYCLE_GIT_AGENT_CAPABILITY_ID = "default-lifecycle.git-agent";
2689
2723
  var TASK_VERIFY_CAPABILITY = makeCapabilityId(TASK_VERIFY_CAPABILITY_ID);
2724
+ var TASK_VALIDATION_CAPABILITY = makeCapabilityId(TASK_VALIDATION_CAPABILITY_ID);
2690
2725
  var COMPLETION_VERIFICATION_CAPABILITY = makeCapabilityId(COMPLETION_VERIFICATION_CAPABILITY_ID);
2691
2726
  var LIFECYCLE_GIT_AGENT = makeCapabilityId(LIFECYCLE_GIT_AGENT_CAPABILITY_ID);
2727
+ var TASK_SOURCE_REFLECTION = makeCapabilityId(TASK_SOURCE_REFLECTION_CAPABILITY_ID);
2692
2728
  var RUN_CLOSEOUT_CAPABILITY = makeCapabilityId(RUN_CLOSEOUT_CAPABILITY_ID);
2693
2729
  // packages/contracts/src/browser.ts
2694
2730
  var BROWSER_CONTRACT_SERVICE_CAPABILITY_ID = "browser.contract";
@@ -2713,6 +2749,14 @@ var SESSION_ASSET_MATERIALIZER = makeCapabilityId(SESSION_ASSET_MATERIALIZER_CAP
2713
2749
  var ISOLATION_BACKEND_CAPABILITY_ID = "isolation.backend";
2714
2750
  var ISOLATION_BACKEND = makeCapabilityId(ISOLATION_BACKEND_CAPABILITY_ID);
2715
2751
  // packages/contracts/src/managed-repos.ts
2752
+ var REPO_NATIVE_GIT_CAPABILITY_ID = "native-toolchain.git";
2753
+ var REPO_NATIVE_GIT = makeCapabilityId(REPO_NATIVE_GIT_CAPABILITY_ID);
2754
+ var NATIVE_TOOLCHAIN_GIT_CAPABILITY_ID = REPO_NATIVE_GIT_CAPABILITY_ID;
2755
+ var NATIVE_TOOLCHAIN_GIT = REPO_NATIVE_GIT;
2756
+ var REPO_GIT_BINARY_CAPABILITY_ID = "repos.git-binary";
2757
+ var REPO_GIT_BINARY = makeCapabilityId(REPO_GIT_BINARY_CAPABILITY_ID);
2758
+ var REPO_CHANGE_SET_CAPABILITY_ID = "repos.change-set";
2759
+ var REPO_CHANGE_SET = makeCapabilityId(REPO_CHANGE_SET_CAPABILITY_ID);
2716
2760
  var REPO_OPERATIONS_CAPABILITY_ID = "repos.operations";
2717
2761
  var REPO_OPERATIONS_CAPABILITY = makeCapabilityId(REPO_OPERATIONS_CAPABILITY_ID);
2718
2762
  var MANAGED_REPO_SERVICE_CAPABILITY_ID = "managed-repos.service";
@@ -2742,6 +2786,17 @@ var GUARD_TOOLCHAIN_SOURCES_CAPABILITY_ID = "rig.toolchain.sources.guard";
2742
2786
  var LIFECYCLE_TOOLCHAIN_SOURCES_CAPABILITY_ID = "rig.toolchain.sources.lifecycle";
2743
2787
  var GUARD_TOOLCHAIN_SOURCES = makeCapabilityId(GUARD_TOOLCHAIN_SOURCES_CAPABILITY_ID);
2744
2788
  var LIFECYCLE_TOOLCHAIN_SOURCES = makeCapabilityId(LIFECYCLE_TOOLCHAIN_SOURCES_CAPABILITY_ID);
2789
+ // packages/contracts/src/native-toolchain.ts
2790
+ var NATIVE_TOOLCHAIN_BINARY_BUILD_CAPABILITY_ID = "native-toolchain.binary-build";
2791
+ var NATIVE_TOOLCHAIN_BINARY_BUILD = makeCapabilityId(NATIVE_TOOLCHAIN_BINARY_BUILD_CAPABILITY_ID);
2792
+ // packages/contracts/src/cockpit.ts
2793
+ var TASK_PROJECTION_CAPABILITY_ID = makeCapabilityId("rig:task-projection");
2794
+ var DISPATCH_OUTCOME_CAPABILITY_ID = makeCapabilityId("rig:dispatch-outcome");
2795
+ // packages/contracts/src/docs-drift.ts
2796
+ var DOCS_DRIFT_VALIDATOR_ID = "std:docs-drift";
2797
+ var DOCS_DRIFT_CLI_ID = "std:drift";
2798
+ var DOCS_DRIFT_STAGE_ID = "docs-drift";
2799
+ var DOCS_DRIFT_CAPABILITY_ID = "std:docs-drift-capability";
2745
2800
  // packages/contracts/src/cli-runner.ts
2746
2801
  var CLI_RUNNER_CAPABILITY_ID = "rig.cli.runner";
2747
2802
  var CLI_RUNNER = makeCapabilityId(CLI_RUNNER_CAPABILITY_ID);
@@ -2809,12 +2864,35 @@ export {
2809
2864
  TOOL_MATERIALIZER,
2810
2865
  TASK_VERIFY_CAPABILITY_ID,
2811
2866
  TASK_VERIFY_CAPABILITY,
2867
+ TASK_VALIDATION_CAPABILITY_ID,
2868
+ TASK_VALIDATION_CAPABILITY,
2869
+ TASK_TRACKER_STATE_CAPABILITY_ID,
2870
+ TASK_TRACKER_STATE,
2871
+ TASK_TRACKER_STALE_CLAIM_MS,
2872
+ TASK_TRACKER_REPO_LOCATOR_CAPABILITY_ID,
2873
+ TASK_TRACKER_REPO_LOCATOR,
2874
+ TASK_TRACKER_RECONCILIATION_POLICY_CAPABILITY_ID,
2875
+ TASK_TRACKER_RECONCILIATION_POLICY,
2876
+ TASK_TRACKER_READINESS_POLICY_CAPABILITY_ID,
2877
+ TASK_TRACKER_READINESS_POLICY,
2878
+ TASK_TRACKER_LIFECYCLE_STATUSES,
2879
+ TASK_STATE_STORE_CAPABILITY_ID,
2880
+ TASK_STATE_STORE,
2881
+ TASK_SOURCE_UPDATE_CAPABILITY_ID,
2882
+ TASK_SOURCE_UPDATE,
2883
+ TASK_SOURCE_REFLECTION_CAPABILITY_ID,
2884
+ TASK_SOURCE_REFLECTION,
2812
2885
  TASK_SELECTION_CAPABILITY_ID,
2813
2886
  TASK_SELECTION,
2887
+ TASK_PROJECTION_CAPABILITY_ID,
2814
2888
  TASK_IO_SERVICE_CAPABILITY_ID,
2815
2889
  TASK_IO_SERVICE_CAPABILITY,
2816
2890
  TASK_DATA_SERVICE_CAPABILITY_ID,
2817
2891
  TASK_DATA_SERVICE_CAPABILITY,
2892
+ TASK_CONTEXT_RENDERER_CAPABILITY_ID,
2893
+ TASK_CONTEXT_RENDERER,
2894
+ TASK_ARTIFACTS_CAPABILITY_ID,
2895
+ TASK_ARTIFACTS,
2818
2896
  SupervisorStoppedEvent,
2819
2897
  SupervisorStopReason,
2820
2898
  SupervisorStatus,
@@ -3009,6 +3087,12 @@ export {
3009
3087
  RIG_ARTIFACTS_DIRNAME,
3010
3088
  REPO_OPERATIONS_CAPABILITY_ID,
3011
3089
  REPO_OPERATIONS_CAPABILITY,
3090
+ REPO_NATIVE_GIT_CAPABILITY_ID,
3091
+ REPO_NATIVE_GIT,
3092
+ REPO_GIT_BINARY_CAPABILITY_ID,
3093
+ REPO_GIT_BINARY,
3094
+ REPO_CHANGE_SET_CAPABILITY_ID,
3095
+ REPO_CHANGE_SET,
3012
3096
  REASONING_EFFORT_OPTIONS_BY_PROVIDER,
3013
3097
  QueueEntry,
3014
3098
  PullRequestConfig,
@@ -3075,6 +3159,10 @@ export {
3075
3159
  NO_MATCH_RETRIEVAL_CANONICAL_KEY,
3076
3160
  NOTIFY_SERVICE_CAPABILITY_ID,
3077
3161
  NOTIFY_SERVICE_CAPABILITY,
3162
+ NATIVE_TOOLCHAIN_GIT_CAPABILITY_ID,
3163
+ NATIVE_TOOLCHAIN_GIT,
3164
+ NATIVE_TOOLCHAIN_BINARY_BUILD_CAPABILITY_ID,
3165
+ NATIVE_TOOLCHAIN_BINARY_BUILD,
3078
3166
  MissingCapability,
3079
3167
  MessageId,
3080
3168
  MergeConfig,
@@ -3173,6 +3261,11 @@ export {
3173
3261
  DependencyEdge,
3174
3262
  DOCTOR_RUNNER_CAPABILITY_ID,
3175
3263
  DOCTOR,
3264
+ DOCS_DRIFT_VALIDATOR_ID,
3265
+ DOCS_DRIFT_STAGE_ID,
3266
+ DOCS_DRIFT_CLI_ID,
3267
+ DOCS_DRIFT_CAPABILITY_ID,
3268
+ DISPATCH_OUTCOME_CAPABILITY_ID,
3176
3269
  DEPENDENCY_PREFLIGHT_CAPABILITY_ID,
3177
3270
  DEPENDENCY_PREFLIGHT_CAPABILITY,
3178
3271
  DEFAULT_TERMINAL_ID,
@@ -0,0 +1,28 @@
1
+ import type { TaskStatus } from "./graph";
2
+ import type { TaskDependencyProjection } from "./task-graph-primitives";
3
+ import type { RigTask } from "./task-source";
4
+ export type RigTaskBadgeProjection = TaskDependencyProjection & {
5
+ readonly source?: string | null | undefined;
6
+ readonly url?: string | null | undefined;
7
+ readonly body?: string | null | undefined;
8
+ readonly assignedTo?: string | readonly string[] | null | undefined;
9
+ readonly assignees?: readonly string[] | null | undefined;
10
+ };
11
+ export interface TaskProjectionCapability {
12
+ normalizeStatus(value: string | null | undefined): TaskStatus;
13
+ normalizePriority(value: number | string | null | undefined): number | null;
14
+ project(task: RigTask): RigTaskBadgeProjection;
15
+ assigneeText(task: RigTask): string;
16
+ title(task: RigTask | null | undefined): string;
17
+ id(task: RigTask | null | undefined): string | null;
18
+ }
19
+ export interface DispatchOutcomeCapability {
20
+ /** Map a raw engine error to a typed operator message, or null to fall back. */
21
+ humanize(error: unknown): string | null;
22
+ }
23
+ export interface CockpitCapabilities {
24
+ readonly taskProjection: TaskProjectionCapability;
25
+ readonly dispatchOutcome: DispatchOutcomeCapability;
26
+ }
27
+ export declare const TASK_PROJECTION_CAPABILITY_ID: import("./capability-id").CapabilityId<TaskProjectionCapability>;
28
+ export declare const DISPATCH_OUTCOME_CAPABILITY_ID: import("./capability-id").CapabilityId<DispatchOutcomeCapability>;
@@ -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/cockpit.ts
8
+ var TASK_PROJECTION_CAPABILITY_ID = makeCapabilityId("rig:task-projection");
9
+ var DISPATCH_OUTCOME_CAPABILITY_ID = makeCapabilityId("rig:dispatch-outcome");
10
+ export {
11
+ TASK_PROJECTION_CAPABILITY_ID,
12
+ DISPATCH_OUTCOME_CAPABILITY_ID
13
+ };
@@ -194,7 +194,7 @@ export declare const GitHubProjectStatusConfig: Schema.Struct<{
194
194
  }>;
195
195
  export type GitHubProjectStatusConfig = typeof GitHubProjectStatusConfig.Type;
196
196
  export declare const GitHubConfig: Schema.Struct<{
197
- readonly issueUpdates: Schema.optional<Schema.Literals<readonly ["lifecycle", "minimal", "off"]>>;
197
+ readonly issueUpdates: Schema.optional<Schema.Literals<readonly ["all", "lifecycle", "minimal", "off"]>>;
198
198
  readonly projects: Schema.optional<Schema.Struct<{
199
199
  readonly enabled: Schema.optional<Schema.Boolean>;
200
200
  readonly projectId: Schema.optional<Schema.String>;
@@ -483,7 +483,7 @@ export declare const RigConfig: Schema.Struct<{
483
483
  readonly skipForLabels: Schema.optional<Schema.$Array<Schema.String>>;
484
484
  }>>;
485
485
  readonly github: Schema.optional<Schema.Struct<{
486
- readonly issueUpdates: Schema.optional<Schema.Literals<readonly ["lifecycle", "minimal", "off"]>>;
486
+ readonly issueUpdates: Schema.optional<Schema.Literals<readonly ["all", "lifecycle", "minimal", "off"]>>;
487
487
  readonly projects: Schema.optional<Schema.Struct<{
488
488
  readonly enabled: Schema.optional<Schema.Boolean>;
489
489
  readonly projectId: Schema.optional<Schema.String>;
@@ -743,7 +743,7 @@ var GitHubProjectStatusConfig = Schema8.Struct({
743
743
  }))
744
744
  });
745
745
  var GitHubConfig = Schema8.Struct({
746
- issueUpdates: Schema8.optional(Schema8.Literals(["lifecycle", "minimal", "off"])),
746
+ issueUpdates: Schema8.optional(Schema8.Literals(["all", "lifecycle", "minimal", "off"])),
747
747
  projects: Schema8.optional(GitHubProjectStatusConfig)
748
748
  });
749
749
  var AutomationConfig = Schema8.Struct({
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Documentation-drift product-surface ids.
3
+ *
4
+ * Pure vocabulary only: the docs-drift plugin owns all implementation and
5
+ * registers these ids as validator/capability/stage/CLI contributions.
6
+ */
7
+ export declare const DOCS_DRIFT_VALIDATOR_ID = "std:docs-drift";
8
+ export declare const DOCS_DRIFT_CLI_ID = "std:drift";
9
+ export declare const DOCS_DRIFT_STAGE_ID = "docs-drift";
10
+ export declare const DOCS_DRIFT_CAPABILITY_ID = "std:docs-drift-capability";
@@ -0,0 +1,12 @@
1
+ // @bun
2
+ // packages/contracts/src/docs-drift.ts
3
+ var DOCS_DRIFT_VALIDATOR_ID = "std:docs-drift";
4
+ var DOCS_DRIFT_CLI_ID = "std:drift";
5
+ var DOCS_DRIFT_STAGE_ID = "docs-drift";
6
+ var DOCS_DRIFT_CAPABILITY_ID = "std:docs-drift-capability";
7
+ export {
8
+ DOCS_DRIFT_VALIDATOR_ID,
9
+ DOCS_DRIFT_STAGE_ID,
10
+ DOCS_DRIFT_CLI_ID,
11
+ DOCS_DRIFT_CAPABILITY_ID
12
+ };
package/dist/src/git.d.ts CHANGED
@@ -1,6 +1,14 @@
1
1
  import { Schema } from "effect";
2
2
  export declare const GitStackedAction: Schema.Literals<readonly ["commit", "commit_push", "commit_push_pr"]>;
3
3
  export type GitStackedAction = typeof GitStackedAction.Type;
4
+ export type GitWorkingTreeFileStatus = "added" | "copied" | "deleted" | "modified" | "renamed" | "type_changed" | "untracked" | "conflicted" | "unknown";
5
+ export interface GitWorkingTreeFileChange {
6
+ readonly path: string;
7
+ readonly status: GitWorkingTreeFileStatus;
8
+ readonly staged: boolean;
9
+ readonly unstaged: boolean;
10
+ readonly previousPath?: string;
11
+ }
4
12
  export declare const GitBranch: Schema.Struct<{
5
13
  readonly name: Schema.Trim;
6
14
  readonly isRemote: Schema.optional<Schema.Boolean>;
@@ -91,14 +91,153 @@ export interface GitHubProjectStatusField {
91
91
  name: string;
92
92
  }>;
93
93
  }
94
+ export type GitHubDeviceFlowPending = {
95
+ readonly pollId: string;
96
+ readonly deviceCode: string;
97
+ readonly expiresAt: string;
98
+ readonly intervalSeconds: number;
99
+ };
100
+ export type GitHubAuthStore = {
101
+ readonly stateFile: string;
102
+ readonly status: (options?: {
103
+ oauthConfigured?: boolean;
104
+ }) => GitHubAuthStatus;
105
+ readonly readToken: () => string | null;
106
+ readonly saveToken: (input: {
107
+ readonly token: string;
108
+ readonly tokenSource: "oauth-device" | "manual-token";
109
+ readonly login?: string | null;
110
+ readonly userId?: string | null;
111
+ readonly scopes?: readonly string[];
112
+ readonly selectedRepo?: string | null;
113
+ }) => void;
114
+ readonly createApiSession: () => {
115
+ token: string;
116
+ login: string | null;
117
+ userId: string | null;
118
+ };
119
+ readonly readApiSession: (token: string) => {
120
+ login: string | null;
121
+ userId: string | null;
122
+ } | null;
123
+ readonly copyToProjectRoot: (projectRoot: string) => void;
124
+ readonly copyToLocalProjectRoot: (projectRoot: string) => void;
125
+ readonly savePendingDevice: (input: GitHubDeviceFlowPending) => void;
126
+ readonly saveSelectedRepo: (selectedRepo: string | null) => void;
127
+ readonly readPendingDevice: (pollId: string) => GitHubDeviceFlowPending | null;
128
+ readonly clearPendingDevice: (pollId?: string) => void;
129
+ };
130
+ export type GitHubFormPostResult = {
131
+ readonly status: number;
132
+ readonly payload: Record<string, unknown>;
133
+ };
134
+ export type GitHubFormPoster = (endpoint: string, body: Record<string, string>) => Promise<GitHubFormPostResult>;
135
+ export type GitHubUserFetcher = (token: string) => Promise<GitHubUserInfo>;
136
+ export type GitHubGraphQLFetch = (query: string, variables: Record<string, unknown>, token: string) => Promise<unknown>;
137
+ export type GitHubTokenSaveResult = {
138
+ readonly ok: true;
139
+ } & GitHubAuthStatus;
140
+ export type GitHubDeviceFlowStartResult = {
141
+ readonly ok: true;
142
+ readonly pollId: string;
143
+ readonly userCode: string | null;
144
+ readonly verificationUri: string | null;
145
+ readonly expiresIn: number;
146
+ readonly intervalSeconds: number;
147
+ };
148
+ export type GitHubDeviceFlowPollResult = ({
149
+ readonly ok: true;
150
+ readonly status: "signed-in";
151
+ } & GitHubAuthStatus) | {
152
+ readonly ok: false;
153
+ readonly status: "expired";
154
+ readonly error: string;
155
+ } | {
156
+ readonly ok: false;
157
+ readonly status: "pending";
158
+ readonly intervalSeconds: number;
159
+ } | {
160
+ readonly ok: false;
161
+ readonly status: "slow-down";
162
+ readonly intervalSeconds: number;
163
+ } | {
164
+ readonly ok: false;
165
+ readonly status: "error";
166
+ readonly error: string;
167
+ };
168
+ export type GitHubRepoPermissionsResult = {
169
+ readonly ok: false;
170
+ readonly signedIn: false;
171
+ readonly canOpenPullRequest: false;
172
+ readonly reason: "not-authenticated";
173
+ } | {
174
+ readonly ok: true;
175
+ readonly signedIn: true;
176
+ readonly login: string | null;
177
+ readonly scopes: readonly string[];
178
+ readonly canOpenPullRequest: boolean;
179
+ readonly pullRequests: boolean;
180
+ readonly push: boolean;
181
+ readonly reason: "stored-token" | "token-scope-unverified";
182
+ };
94
183
  /**
95
- * The executable surface the GitHub-provider capability `run()` returns. Kept
96
- * intentionally narrow to the substrate-relevant seam (token resolution); the
97
- * plugin's full API (OAuth device flow, Projects sync, issue analysis) is
98
- * imported directly by above-runtime consumers and is not part of this port.
184
+ * The executable surface the GitHub-provider capability `run()` returns. The
185
+ * provider owns the GitHub implementation; sibling plugins resolve this service
186
+ * from the configured project host instead of importing the provider package.
99
187
  */
100
188
  export interface GitHubProviderService {
101
189
  createCredentialProvider(options?: GitHubCredentialProviderOptions): GitHubCredentialProvider;
190
+ createEnvGitHubCredentialProvider(): GitHubCredentialProvider;
191
+ createStateGitHubCredentialProvider(options?: GitHubStateCredentialProviderOptions): GitHubCredentialProvider;
192
+ createGitHubAuthStore(projectRoot: string): GitHubAuthStore;
193
+ resolveGitHubAuthStatus(input: {
194
+ readonly projectRoot: string;
195
+ readonly oauthConfigured?: boolean;
196
+ }): GitHubAuthStatus;
197
+ saveGitHubTokenForProject(input: {
198
+ readonly projectRoot: string;
199
+ readonly token: string;
200
+ readonly tokenSource?: "oauth-device" | "manual-token";
201
+ readonly selectedRepo?: string | null;
202
+ readonly fetchUser?: GitHubUserFetcher;
203
+ }): Promise<GitHubTokenSaveResult>;
204
+ beginGitHubDeviceFlow(input: {
205
+ readonly projectRoot: string;
206
+ readonly clientId: string;
207
+ readonly scope?: string;
208
+ readonly selectedRepo?: string | null;
209
+ readonly postForm?: GitHubFormPoster;
210
+ }): Promise<GitHubDeviceFlowStartResult>;
211
+ pollGitHubDeviceFlow(input: {
212
+ readonly projectRoot: string;
213
+ readonly clientId: string;
214
+ readonly pollId: string;
215
+ readonly selectedRepo?: string | null;
216
+ readonly postForm?: GitHubFormPoster;
217
+ readonly fetchUser?: GitHubUserFetcher;
218
+ }): Promise<GitHubDeviceFlowPollResult>;
219
+ checkGitHubRepoPermissions(input: {
220
+ readonly projectRoot: string;
221
+ readonly oauthConfigured?: boolean;
222
+ }): GitHubRepoPermissionsResult;
223
+ probeGitHubRepository(input: {
224
+ readonly owner: string;
225
+ readonly repo: string;
226
+ readonly token: string | null;
227
+ readonly scopes: readonly string[];
228
+ readonly fetchRepository?: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>;
229
+ }): Promise<GitHubRepositoryProbe>;
230
+ listGitHubProjects(input: {
231
+ readonly owner: string;
232
+ readonly token: string;
233
+ readonly first?: number;
234
+ readonly fetchGraphQL?: GitHubGraphQLFetch;
235
+ }): Promise<GitHubProjectSummary[]>;
236
+ resolveProjectStatusField(input: {
237
+ readonly projectId: string;
238
+ readonly token: string;
239
+ readonly fetchGraphQL?: GitHubGraphQLFetch;
240
+ }): Promise<GitHubProjectStatusField>;
102
241
  }
103
242
  /** The capability `run` shape the plugin registers: a zero-arg service factory. */
104
243
  export type GitHubProviderServiceRun = () => GitHubProviderService;
@@ -37,6 +37,10 @@ export * from "./prompt";
37
37
  export * from "./task-source";
38
38
  export * from "./task-state-metadata";
39
39
  export * from "./task-data";
40
+ export * from "./task-state-store";
41
+ export * from "./task-artifacts";
42
+ export * from "./task-context-renderer";
43
+ export * from "./task-tracker-state";
40
44
  export * from "./cli-output";
41
45
  export * from "./pi-session";
42
46
  export * from "./protocol-version";
@@ -74,4 +78,7 @@ export * from "./run-discovery";
74
78
  export * from "./run-registry-backbone";
75
79
  export * from "./tool-materializer";
76
80
  export * from "./toolchain-sources";
81
+ export * from "./native-toolchain";
82
+ export * from "./cockpit";
83
+ export * from "./docs-drift";
77
84
  export * from "./cli-runner";