@deftai/directive-core 0.106.0 → 0.108.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.
Files changed (249) hide show
  1. package/dist/architecture/sor-preflight.js +2 -0
  2. package/dist/check/cached-orchestrator.js +28 -3
  3. package/dist/check/gate-lists.js +2 -0
  4. package/dist/check/named-cause.js +18 -3
  5. package/dist/codebase/provider.js +7 -1
  6. package/dist/delivery-attempt/handoff.js +1 -1
  7. package/dist/design-critique/citation-grammar.d.ts +53 -0
  8. package/dist/design-critique/citation-grammar.js +303 -0
  9. package/dist/design-critique/completed-arc-record.d.ts +62 -0
  10. package/dist/design-critique/completed-arc-record.js +232 -0
  11. package/dist/design-critique/exclusive-chip.d.ts +33 -0
  12. package/dist/design-critique/exclusive-chip.js +68 -0
  13. package/dist/design-critique/parent-audit.d.ts +59 -0
  14. package/dist/design-critique/parent-audit.js +121 -0
  15. package/dist/doctor/checks.d.ts +6 -0
  16. package/dist/doctor/checks.js +35 -0
  17. package/dist/freshness/bind.d.ts +32 -3
  18. package/dist/freshness/bind.js +58 -12
  19. package/dist/hooks/classify/host-session-identity.d.ts +76 -0
  20. package/dist/hooks/classify/host-session-identity.js +470 -0
  21. package/dist/hooks/classify/index.d.ts +3 -2
  22. package/dist/hooks/classify/index.js +3 -2
  23. package/dist/hooks/classify/paths.d.ts +7 -0
  24. package/dist/hooks/classify/paths.js +35 -0
  25. package/dist/hooks/classify/stdin.d.ts +5 -0
  26. package/dist/hooks/classify/stdin.js +27 -0
  27. package/dist/hooks/dest-form.d.ts +46 -0
  28. package/dist/hooks/dest-form.js +575 -0
  29. package/dist/hooks/dispatcher.d.ts +69 -2
  30. package/dist/hooks/dispatcher.js +609 -45
  31. package/dist/hooks/fixtures/cases.d.ts +16 -2
  32. package/dist/hooks/fixtures/cases.js +175 -0
  33. package/dist/hooks/index.d.ts +1 -0
  34. package/dist/hooks/index.js +1 -0
  35. package/dist/hooks/scope.js +3 -1
  36. package/dist/init-deposit/agent-hooks.d.ts +2 -1
  37. package/dist/init-deposit/agent-hooks.js +8 -1
  38. package/dist/init-deposit/hook-runtime-travel.d.ts +77 -0
  39. package/dist/init-deposit/hook-runtime-travel.js +269 -0
  40. package/dist/intake/clause-derivation.js +9 -3
  41. package/dist/intake/github-auth-modes-cli.js +14 -2
  42. package/dist/intake/github-auth-modes.d.ts +54 -9
  43. package/dist/intake/github-auth-modes.js +326 -123
  44. package/dist/intake/issue-ingest.js +62 -2
  45. package/dist/intake/platform-capabilities.d.ts +9 -2
  46. package/dist/intake/platform-capabilities.js +38 -9
  47. package/dist/lifecycle/completed-tracked-on-delivery.d.ts +26 -0
  48. package/dist/lifecycle/completed-tracked-on-delivery.js +37 -14
  49. package/dist/lifecycle/completed-write-guard.d.ts +48 -0
  50. package/dist/lifecycle/completed-write-guard.js +373 -0
  51. package/dist/lifecycle/index.d.ts +1 -0
  52. package/dist/lifecycle/index.js +1 -0
  53. package/dist/literal-acceptance/capture.d.ts +16 -0
  54. package/dist/literal-acceptance/capture.js +75 -7
  55. package/dist/literal-acceptance/evaluate.js +25 -3
  56. package/dist/literal-acceptance/index.d.ts +2 -2
  57. package/dist/literal-acceptance/index.js +2 -2
  58. package/dist/literal-acceptance/run.js +9 -3
  59. package/dist/literal-acceptance/types.d.ts +6 -0
  60. package/dist/literal-acceptance/types.js +6 -0
  61. package/dist/orphan-active/evaluate.d.ts +25 -0
  62. package/dist/orphan-active/evaluate.js +193 -128
  63. package/dist/orphan-active/index.d.ts +1 -0
  64. package/dist/orphan-active/index.js +1 -0
  65. package/dist/orphan-active/issue-state.d.ts +121 -0
  66. package/dist/orphan-active/issue-state.js +278 -0
  67. package/dist/platform/cursor-managed-runtime.d.ts +95 -0
  68. package/dist/platform/cursor-managed-runtime.js +241 -0
  69. package/dist/platform/index.d.ts +1 -0
  70. package/dist/platform/index.js +1 -0
  71. package/dist/platform/platform-capabilities.d.ts +23 -1
  72. package/dist/platform/platform-capabilities.js +55 -15
  73. package/dist/policy/ceremony-dial.js +5 -9
  74. package/dist/policy/host-hooks.js +4 -9
  75. package/dist/policy/org-force-on-migration.js +5 -10
  76. package/dist/policy/plan-extensions.d.ts +14 -2
  77. package/dist/policy/plan-extensions.js +24 -3
  78. package/dist/policy/product-signal.js +5 -10
  79. package/dist/policy/require-human-merge.js +5 -9
  80. package/dist/policy/resolve.js +77 -16
  81. package/dist/policy/runtime-authority.d.ts +18 -0
  82. package/dist/policy/runtime-authority.js +11 -0
  83. package/dist/policy/value-feedback.js +9 -18
  84. package/dist/policy/write-fence.js +3 -0
  85. package/dist/pr-closeout-attestable/evaluate.d.ts +80 -0
  86. package/dist/pr-closeout-attestable/evaluate.js +306 -0
  87. package/dist/pr-closeout-attestable/index.d.ts +2 -0
  88. package/dist/pr-closeout-attestable/index.js +2 -0
  89. package/dist/pr-protected-issues/gh.d.ts +6 -2
  90. package/dist/pr-protected-issues/gh.js +7 -3
  91. package/dist/pr-wait-mergeable/cascade.d.ts +9 -1
  92. package/dist/pr-wait-mergeable/cascade.js +21 -1
  93. package/dist/pr-wait-mergeable/types.d.ts +2 -0
  94. package/dist/pr-wait-mergeable/wrappers.d.ts +6 -0
  95. package/dist/pr-wait-mergeable/wrappers.js +11 -0
  96. package/dist/preflight/evaluate.d.ts +15 -0
  97. package/dist/preflight/evaluate.js +29 -3
  98. package/dist/preflight-cache/evaluate.js +9 -3
  99. package/dist/product-first-done-gate/acceptance-resolver.d.ts +14 -2
  100. package/dist/product-first-done-gate/acceptance-resolver.js +13 -2
  101. package/dist/product-first-done-gate/evaluate.js +53 -12
  102. package/dist/release/cli-drift-report.d.ts +68 -0
  103. package/dist/release/cli-drift-report.js +189 -0
  104. package/dist/release/index.d.ts +1 -0
  105. package/dist/release/index.js +1 -0
  106. package/dist/release/issue-state-fetch.d.ts +5 -3
  107. package/dist/release/issue-state-fetch.js +86 -21
  108. package/dist/release/native-steps.js +1 -0
  109. package/dist/release/pipeline.js +19 -0
  110. package/dist/release/types.d.ts +14 -0
  111. package/dist/render/constants.d.ts +4 -0
  112. package/dist/render/constants.js +11 -8
  113. package/dist/render/export-spec.js +31 -5
  114. package/dist/render/index.d.ts +1 -1
  115. package/dist/render/index.js +1 -1
  116. package/dist/render/prd-render.d.ts +4 -1
  117. package/dist/render/prd-render.js +82 -23
  118. package/dist/render/project-render.js +14 -7
  119. package/dist/render/scope-outlook.d.ts +2 -0
  120. package/dist/render/scope-outlook.js +3 -0
  121. package/dist/render/spec-render.js +2 -2
  122. package/dist/resolution/package-manager.d.ts +33 -4
  123. package/dist/resolution/package-manager.js +210 -9
  124. package/dist/review-monitor/constants.d.ts +7 -0
  125. package/dist/review-monitor/constants.js +7 -0
  126. package/dist/review-monitor/github-lease.d.ts +98 -1
  127. package/dist/review-monitor/github-lease.js +182 -1
  128. package/dist/review-monitor/lease-comment.d.ts +36 -0
  129. package/dist/review-monitor/lease-comment.js +103 -2
  130. package/dist/scm/call.js +12 -3
  131. package/dist/scm/design-critique-chip.d.ts +38 -0
  132. package/dist/scm/design-critique-chip.js +187 -0
  133. package/dist/scm/gh-rest.d.ts +9 -1
  134. package/dist/scm/gh-rest.js +103 -0
  135. package/dist/scm/index.d.ts +1 -0
  136. package/dist/scm/index.js +1 -0
  137. package/dist/scm/main.d.ts +3 -0
  138. package/dist/scm/main.js +15 -1
  139. package/dist/scm/readiness-cli.d.ts +2 -0
  140. package/dist/scm/readiness-cli.js +42 -1
  141. package/dist/scm/readiness.d.ts +4 -1
  142. package/dist/scm/readiness.js +35 -5
  143. package/dist/scope/decompose.js +2 -1
  144. package/dist/scope/delivery-evidence.d.ts +27 -1
  145. package/dist/scope/index.d.ts +1 -0
  146. package/dist/scope/index.js +1 -0
  147. package/dist/scope/lifecycle-write.d.ts +24 -0
  148. package/dist/scope/lifecycle-write.js +64 -0
  149. package/dist/scope/main.js +3 -1
  150. package/dist/scope/project-definition-sync.js +14 -7
  151. package/dist/scope/transition.js +90 -11
  152. package/dist/scope-provenance/evaluate.js +5 -1
  153. package/dist/session/git.d.ts +42 -0
  154. package/dist/session/git.js +219 -3
  155. package/dist/session/occupancy.d.ts +239 -12
  156. package/dist/session/occupancy.js +820 -27
  157. package/dist/session/ritual-sentinel.d.ts +5 -0
  158. package/dist/session/ritual-sentinel.js +5 -0
  159. package/dist/session/session-ready.d.ts +5 -1
  160. package/dist/session/session-ready.js +98 -8
  161. package/dist/session/session-start.d.ts +17 -1
  162. package/dist/session/session-start.js +49 -17
  163. package/dist/session/toolchain-preflight.d.ts +13 -3
  164. package/dist/session/toolchain-preflight.js +93 -18
  165. package/dist/session/verify-session-ritual.d.ts +33 -3
  166. package/dist/session/verify-session-ritual.js +89 -19
  167. package/dist/slice/constants.d.ts +1 -1
  168. package/dist/spec-authority/constants.d.ts +10 -2
  169. package/dist/spec-authority/constants.js +53 -8
  170. package/dist/spec-authority/resolver.d.ts +3 -0
  171. package/dist/spec-authority/resolver.js +55 -7
  172. package/dist/subprocess/max-buffer.d.ts +14 -0
  173. package/dist/subprocess/max-buffer.js +15 -0
  174. package/dist/swarm/complete-cohort.d.ts +2 -0
  175. package/dist/swarm/complete-cohort.js +21 -13
  176. package/dist/swarm/index.d.ts +1 -0
  177. package/dist/swarm/index.js +1 -0
  178. package/dist/swarm/launch-cli.js +53 -33
  179. package/dist/swarm/launch.d.ts +77 -0
  180. package/dist/swarm/launch.js +248 -38
  181. package/dist/swarm/pre-dispatch-cli.js +2 -1
  182. package/dist/swarm/pre-dispatch.js +10 -1
  183. package/dist/swarm/subagent-status-dir.d.ts +27 -0
  184. package/dist/swarm/subagent-status-dir.js +42 -0
  185. package/dist/swarm/worktrees.d.ts +17 -3
  186. package/dist/swarm/worktrees.js +48 -4
  187. package/dist/triage/actions/index.d.ts +4 -0
  188. package/dist/triage/actions/index.js +6 -0
  189. package/dist/triage/evaluate/evaluate.d.ts +11 -0
  190. package/dist/triage/evaluate/evaluate.js +169 -0
  191. package/dist/triage/evaluate/github.d.ts +16 -0
  192. package/dist/triage/evaluate/github.js +153 -0
  193. package/dist/triage/evaluate/index.d.ts +9 -0
  194. package/dist/triage/evaluate/index.js +8 -0
  195. package/dist/triage/evaluate/paths.d.ts +7 -0
  196. package/dist/triage/evaluate/paths.js +25 -0
  197. package/dist/triage/evaluate/sink.d.ts +5 -0
  198. package/dist/triage/evaluate/sink.js +52 -0
  199. package/dist/triage/evaluate/types.d.ts +93 -0
  200. package/dist/triage/evaluate/types.js +13 -0
  201. package/dist/triage/evaluate/validity.d.ts +8 -0
  202. package/dist/triage/evaluate/validity.js +87 -0
  203. package/dist/triage/evaluate/value.d.ts +12 -0
  204. package/dist/triage/evaluate/value.js +33 -0
  205. package/dist/triage/evaluate/wip-census.d.ts +5 -0
  206. package/dist/triage/evaluate/wip-census.js +39 -0
  207. package/dist/triage/evaluate/worktrees.d.ts +8 -0
  208. package/dist/triage/evaluate/worktrees.js +68 -0
  209. package/dist/triage/evaluate/xbrief-refs.d.ts +8 -0
  210. package/dist/triage/evaluate/xbrief-refs.js +60 -0
  211. package/dist/triage/help/registry-data.d.ts +21 -7
  212. package/dist/triage/help/registry-data.js +53 -5
  213. package/dist/triage/index.d.ts +1 -0
  214. package/dist/triage/index.js +1 -0
  215. package/dist/triage/scope/mutations-core.d.ts +2 -6
  216. package/dist/triage/scope/mutations-core.js +23 -55
  217. package/dist/triage/scope-drift/add-ignore.js +5 -39
  218. package/dist/triage/subscribe/index.d.ts +2 -6
  219. package/dist/triage/subscribe/index.js +15 -65
  220. package/dist/triage/welcome/writers.js +15 -74
  221. package/dist/value/feedback-file.d.ts +17 -2
  222. package/dist/value/feedback-file.js +80 -6
  223. package/dist/vbrief-build/index.d.ts +2 -1
  224. package/dist/vbrief-build/index.js +2 -1
  225. package/dist/vbrief-build/parity-scenarios.js +5 -5
  226. package/dist/vbrief-build/project-definition-io.d.ts +63 -3
  227. package/dist/vbrief-build/project-definition-io.js +357 -31
  228. package/dist/vbrief-build/project-definition-mutation.d.ts +32 -0
  229. package/dist/vbrief-build/project-definition-mutation.js +43 -0
  230. package/dist/vbrief-reconcile/labels.d.ts +1 -0
  231. package/dist/vbrief-reconcile/labels.js +30 -0
  232. package/dist/vbrief-validate/conformance.d.ts +1 -0
  233. package/dist/vbrief-validate/conformance.js +85 -8
  234. package/dist/vbrief-validate/main.js +2 -0
  235. package/dist/vbrief-validate/precutover.js +5 -10
  236. package/dist/vbrief-validation/story-quality.d.ts +7 -0
  237. package/dist/vbrief-validation/story-quality.js +8 -1
  238. package/dist/verify-ac/clauses.d.ts +62 -2
  239. package/dist/verify-ac/clauses.js +183 -111
  240. package/dist/verify-ac/index.d.ts +1 -1
  241. package/dist/verify-ac/index.js +1 -1
  242. package/dist/verify-env/node-runtime.d.ts +8 -4
  243. package/dist/verify-env/node-runtime.js +9 -6
  244. package/dist/verify-env/toolchain-check.d.ts +35 -3
  245. package/dist/verify-env/toolchain-check.js +155 -36
  246. package/dist/verify-source/project-definition-mutation-boundary.d.ts +104 -0
  247. package/dist/verify-source/project-definition-mutation-boundary.js +326 -0
  248. package/dist/xbrief-migrate/agents-header.js +69 -7
  249. package/package.json +7 -3
@@ -6,7 +6,7 @@
6
6
  * the missing derive step.
7
7
  */
8
8
  import { ENV_RUN_SUMMARY_PATH, RunSummaryEmitter, } from "../run-summary/index.js";
9
- import { deriveAcceptanceClauses, readAcceptanceClauses, serializeAcceptanceClauses, } from "../verify-ac/clauses.js";
9
+ import { collectPlanItemAcceptanceSurface, deriveAcceptanceClauses, readAcceptanceClauses, serializeAcceptanceClauses, } from "../verify-ac/clauses.js";
10
10
  /** One-line remediation when a stamp has no statement-traceable clause (#3398). */
11
11
  export const CLAUSE_STAMP_IMPLEMENTATION_ONLY_REMEDIATION = "derive clauses from the statement's testable constraints";
12
12
  export const MISSING_AMBIGUITY_ATTESTATION_CAUSE = "missing_ambiguity_attestation";
@@ -72,7 +72,11 @@ export function collectTaskStatementFromPlan(plan) {
72
72
  continue;
73
73
  }
74
74
  const narrative = asRecord(rec.narrative);
75
- const text = narrative?.Acceptance;
75
+ const declared = narrative?.Acceptance;
76
+ // #3826: criteria commonly live in item.title with an empty narrative object.
77
+ // Reading only narrative.Acceptance left them out of the statement entirely,
78
+ // so a clause derived from a title could not trace back to it.
79
+ const text = isNonEmptyString(declared) ? declared : rec.title;
76
80
  if (isNonEmptyString(text)) {
77
81
  parts.push(text.trim());
78
82
  }
@@ -296,7 +300,9 @@ export function applyClauseDerivationToPlan(plan, options = {}) {
296
300
  notice: "",
297
301
  };
298
302
  }
299
- const clauses = deriveAcceptanceClauses(collectTaskStatementFromPlan(plan));
303
+ const clauses = deriveAcceptanceClauses(collectTaskStatementFromPlan(plan), {
304
+ itemSurface: collectPlanItemAcceptanceSurface(plan),
305
+ });
300
306
  if (clauses.length === 0) {
301
307
  return { applied: false, clauses: [], notice: "" };
302
308
  }
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { fileURLToPath } from "node:url";
3
- import { githubAuthModesMain } from "./github-auth-modes.js";
3
+ import { githubAuthModesMain, INSTALLATION_IDENTITY_ISSUE_URL } from "./github-auth-modes.js";
4
4
  function parseArgs(argv) {
5
5
  const out = {};
6
6
  for (let i = 0; i < argv.length; i += 1) {
@@ -11,11 +11,23 @@ function parseArgs(argv) {
11
11
  out.repo = argv[++i];
12
12
  else if (arg === "--github-auth-mode")
13
13
  out.githubAuthMode = argv[++i];
14
+ else if (arg === "--expected-login")
15
+ out.expectedLogin = argv[++i];
16
+ else if (arg === "--expected-app-slug" || arg === "--expected-installation-id") {
17
+ throw new Error(`${arg} is not accepted; GitHub App installation identity is deferred to ${INSTALLATION_IDENTITY_ISSUE_URL}`);
18
+ }
14
19
  }
15
20
  return out;
16
21
  }
17
22
  export function mainEntry(argv = process.argv.slice(2)) {
18
- return githubAuthModesMain(parseArgs(argv));
23
+ try {
24
+ return githubAuthModesMain(parseArgs(argv));
25
+ }
26
+ catch (err) {
27
+ const message = err instanceof Error ? err.message : String(err);
28
+ process.stderr.write(`${message}\n`);
29
+ return 2;
30
+ }
19
31
  }
20
32
  if (process.argv[1] !== undefined && fileURLToPath(import.meta.url) === process.argv[1]) {
21
33
  process.exit(mainEntry());
@@ -3,12 +3,23 @@ import { probeRuntimeCapabilities, type RuntimeCapabilityReport } from "./platfo
3
3
  export declare const GITHUB_AUTH_MODE_INJECTED_TOKEN = "injected-token";
4
4
  export declare const GITHUB_AUTH_MODE_HOST_GH = "host-gh";
5
5
  export declare const KNOWN_GITHUB_AUTH_MODES: Set<string>;
6
- export declare const DEFAULT_VALIDATION_REPO = "deftai/directive";
6
+ export declare const PRINCIPAL_KIND_USER = "user";
7
7
  export declare const FAILURE_MISSING_INJECTED_TOKEN = "missing_injected_token";
8
8
  export declare const FAILURE_GH_AUTH = "gh_auth_failed";
9
9
  export declare const FAILURE_API_UNREACHABLE = "api_unreachable";
10
10
  export declare const FAILURE_REPO_ACCESS = "repo_access_denied";
11
11
  export declare const FAILURE_INVALID_MODE = "invalid_auth_mode";
12
+ export declare const FAILURE_MISSING_EXPECTED_PRINCIPAL = "missing_expected_principal";
13
+ export declare const FAILURE_PRINCIPAL_MISMATCH = "principal_mismatch";
14
+ export declare const FAILURE_MISSING_TARGET_REPO = "missing_target_repo";
15
+ export declare const FAILURE_INSTALLATION_IDENTITY_UNVERIFIABLE = "installation_identity_unverifiable";
16
+ export declare const ENV_EXPECTED_GITHUB_LOGIN = "DEFT_EXPECTED_GITHUB_LOGIN";
17
+ export declare const INSTALLATION_IDENTITY_ISSUE_URL = "https://github.com/deftai/directive/issues/3693";
18
+ /** GitHub-specific expected worker principal. Not a universal (provider-neutral) identity. */
19
+ export type ExpectedGithubWorkerPrincipal = {
20
+ readonly kind: "user";
21
+ readonly login: string;
22
+ };
12
23
  export interface GitHubAuthValidationResult {
13
24
  readonly ok: boolean;
14
25
  readonly githubAuthMode: string;
@@ -17,31 +28,63 @@ export interface GitHubAuthValidationResult {
17
28
  readonly detail: string;
18
29
  readonly remediation: string | null;
19
30
  readonly login: string | null;
31
+ readonly principal: ExpectedGithubWorkerPrincipal | null;
32
+ readonly validationRepo: string | null;
20
33
  }
21
34
  export type GhRunner = (args: readonly string[], environ: NodeJS.ProcessEnv) => CompletedProcess;
22
- export declare function findInjectedToken(environ: NodeJS.ProcessEnv): string | null;
23
- export declare function inferGithubAuthMode(runtimeReport: RuntimeCapabilityReport): string;
24
- export declare function validateInjectedTokenMode(environ: NodeJS.ProcessEnv, options?: {
35
+ export type GitRemoteReader = (cwd?: string) => string | null;
36
+ export interface GithubAuthValidationOptions {
25
37
  repo?: string;
26
38
  runtimeMode?: string | null;
27
39
  runGh?: GhRunner;
28
- }): GitHubAuthValidationResult;
29
- export declare function validateHostGhMode(environ: NodeJS.ProcessEnv, options?: {
40
+ expectedPrincipal?: ExpectedGithubWorkerPrincipal | null;
41
+ gitRemoteUrl?: string | null;
42
+ readGitRemote?: GitRemoteReader;
43
+ cwd?: string;
44
+ }
45
+ export declare function findInjectedToken(environ: NodeJS.ProcessEnv): string | null;
46
+ export declare function inferGithubAuthMode(runtimeReport: RuntimeCapabilityReport): string;
47
+ export declare function defaultReadGitOriginUrl(cwd?: string): string | null;
48
+ export declare function parseOwnerRepoSlug(input: string): string | null;
49
+ export declare function deriveValidationRepo(options: {
30
50
  repo?: string;
31
- runtimeMode?: string | null;
32
- runGh?: GhRunner;
33
- }): GitHubAuthValidationResult;
51
+ environ?: NodeJS.ProcessEnv;
52
+ gitRemoteUrl?: string | null;
53
+ readGitRemote?: GitRemoteReader;
54
+ cwd?: string;
55
+ }): {
56
+ ok: true;
57
+ repo: string;
58
+ } | {
59
+ ok: false;
60
+ detail: string;
61
+ };
62
+ export declare function resolveExpectedGithubWorkerPrincipal(environ: NodeJS.ProcessEnv, explicit?: ExpectedGithubWorkerPrincipal | null): ExpectedGithubWorkerPrincipal | {
63
+ error: string;
64
+ } | null;
65
+ export declare function isInstallationUserEndpointInapplicable(proc: CompletedProcess): boolean;
66
+ export declare function formatUserApiFailureDetail(mode: string, proc: CompletedProcess): string;
67
+ export declare function validateInjectedTokenMode(environ: NodeJS.ProcessEnv, options?: GithubAuthValidationOptions): GitHubAuthValidationResult;
68
+ export declare function validateHostGhMode(environ: NodeJS.ProcessEnv, options?: GithubAuthValidationOptions): GitHubAuthValidationResult;
34
69
  export declare function validateGithubAuth(githubAuthMode: string, options?: {
35
70
  environ?: NodeJS.ProcessEnv;
36
71
  runtimeReport?: RuntimeCapabilityReport | null;
37
72
  repo?: string;
38
73
  runGh?: GhRunner;
74
+ expectedPrincipal?: ExpectedGithubWorkerPrincipal | null;
75
+ gitRemoteUrl?: string | null;
76
+ readGitRemote?: GitRemoteReader;
77
+ cwd?: string;
39
78
  }): GitHubAuthValidationResult;
40
79
  export declare function validateGithubAuthForWorker(githubAuthMode?: string | null, options?: {
41
80
  environ?: NodeJS.ProcessEnv;
42
81
  runtimeReport?: RuntimeCapabilityReport | null;
43
82
  repo?: string;
44
83
  runGh?: GhRunner;
84
+ expectedPrincipal?: ExpectedGithubWorkerPrincipal | null;
85
+ gitRemoteUrl?: string | null;
86
+ readGitRemote?: GitRemoteReader;
87
+ cwd?: string;
45
88
  }): GitHubAuthValidationResult;
46
89
  export declare function resultToDict(result: GitHubAuthValidationResult): Record<string, unknown>;
47
90
  export interface GitHubAuthModesCliArgs {
@@ -49,6 +92,8 @@ export interface GitHubAuthModesCliArgs {
49
92
  repo?: string;
50
93
  json?: boolean;
51
94
  runGh?: GhRunner;
95
+ expectedLogin?: string;
96
+ expectedPrincipal?: ExpectedGithubWorkerPrincipal | null;
52
97
  }
53
98
  export declare function githubAuthModesMain(args: GitHubAuthModesCliArgs): number;
54
99
  export { probeRuntimeCapabilities };