@oscharko-dev/keiko-contracts 0.2.7 → 0.2.9

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 (108) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/bff-wire.d.ts +86 -19
  3. package/dist/bff-wire.d.ts.map +1 -1
  4. package/dist/command-runner.d.ts +81 -0
  5. package/dist/command-runner.d.ts.map +1 -0
  6. package/dist/command-runner.js +209 -0
  7. package/dist/container-runtime.d.ts +125 -0
  8. package/dist/container-runtime.d.ts.map +1 -0
  9. package/dist/container-runtime.js +287 -0
  10. package/dist/context-engineering.js +2 -2
  11. package/dist/discussion-intelligence.d.ts +70 -0
  12. package/dist/discussion-intelligence.d.ts.map +1 -0
  13. package/dist/discussion-intelligence.js +440 -0
  14. package/dist/editor-agent-governance.d.ts +65 -0
  15. package/dist/editor-agent-governance.d.ts.map +1 -0
  16. package/dist/editor-agent-governance.js +180 -0
  17. package/dist/editor-agent.d.ts +29 -1
  18. package/dist/editor-agent.d.ts.map +1 -1
  19. package/dist/editor-agent.js +183 -6
  20. package/dist/editor-builtin-capabilities.d.ts +13 -0
  21. package/dist/editor-builtin-capabilities.d.ts.map +1 -0
  22. package/dist/editor-builtin-capabilities.js +135 -0
  23. package/dist/editor-language-mode-map.d.ts +11 -0
  24. package/dist/editor-language-mode-map.d.ts.map +1 -0
  25. package/dist/editor-language-mode-map.js +89 -0
  26. package/dist/editor-layout.d.ts +37 -0
  27. package/dist/editor-layout.d.ts.map +1 -1
  28. package/dist/editor-layout.js +125 -8
  29. package/dist/editor-workspace-path.d.ts +20 -0
  30. package/dist/editor-workspace-path.d.ts.map +1 -0
  31. package/dist/editor-workspace-path.js +133 -0
  32. package/dist/evidence.d.ts +3 -1
  33. package/dist/evidence.d.ts.map +1 -1
  34. package/dist/gateway.d.ts +72 -3
  35. package/dist/gateway.d.ts.map +1 -1
  36. package/dist/gateway.js +73 -3
  37. package/dist/git-commit-intent.d.ts +28 -0
  38. package/dist/git-commit-intent.d.ts.map +1 -0
  39. package/dist/git-commit-intent.js +155 -0
  40. package/dist/git-commit-policy.d.ts +29 -0
  41. package/dist/git-commit-policy.d.ts.map +1 -0
  42. package/dist/git-commit-policy.js +173 -0
  43. package/dist/git-delivery-action-sheet.d.ts +157 -0
  44. package/dist/git-delivery-action-sheet.d.ts.map +1 -0
  45. package/dist/git-delivery-action-sheet.js +430 -0
  46. package/dist/git-delivery-evidence.d.ts +92 -0
  47. package/dist/git-delivery-evidence.d.ts.map +1 -0
  48. package/dist/git-delivery-evidence.js +272 -0
  49. package/dist/git-delivery-policy.d.ts +40 -0
  50. package/dist/git-delivery-policy.d.ts.map +1 -0
  51. package/dist/git-delivery-policy.js +183 -0
  52. package/dist/git-delivery-provider.d.ts +53 -0
  53. package/dist/git-delivery-provider.d.ts.map +1 -0
  54. package/dist/git-delivery-provider.js +96 -0
  55. package/dist/git-delivery.d.ts +202 -0
  56. package/dist/git-delivery.d.ts.map +1 -0
  57. package/dist/git-delivery.js +410 -0
  58. package/dist/git-history.d.ts +27 -0
  59. package/dist/git-history.d.ts.map +1 -0
  60. package/dist/git-history.js +73 -0
  61. package/dist/git-merge.d.ts +67 -0
  62. package/dist/git-merge.d.ts.map +1 -0
  63. package/dist/git-merge.js +323 -0
  64. package/dist/git-pull-request.d.ts +112 -0
  65. package/dist/git-pull-request.d.ts.map +1 -0
  66. package/dist/git-pull-request.js +351 -0
  67. package/dist/git-repository-agent.d.ts +46 -0
  68. package/dist/git-repository-agent.d.ts.map +1 -0
  69. package/dist/git-repository-agent.js +198 -0
  70. package/dist/git-repository-summary.d.ts +54 -0
  71. package/dist/git-repository-summary.d.ts.map +1 -0
  72. package/dist/git-repository-summary.js +105 -0
  73. package/dist/git-repository.d.ts +60 -0
  74. package/dist/git-repository.d.ts.map +1 -0
  75. package/dist/git-repository.js +106 -0
  76. package/dist/git-sync.d.ts +49 -0
  77. package/dist/git-sync.d.ts.map +1 -0
  78. package/dist/git-sync.js +110 -0
  79. package/dist/index.d.ts +63 -9
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +33 -6
  82. package/dist/lsp-process.d.ts +38 -0
  83. package/dist/lsp-process.d.ts.map +1 -0
  84. package/dist/lsp-process.js +103 -0
  85. package/dist/prompt-enhancer-analyzer.d.ts.map +1 -1
  86. package/dist/prompt-enhancer-analyzer.js +198 -22
  87. package/dist/runtime-capabilities.d.ts +44 -0
  88. package/dist/runtime-capabilities.d.ts.map +1 -0
  89. package/dist/runtime-capabilities.js +141 -0
  90. package/dist/task-workspace.d.ts +302 -0
  91. package/dist/task-workspace.d.ts.map +1 -0
  92. package/dist/task-workspace.js +1236 -0
  93. package/dist/voice-action-intent.d.ts +86 -0
  94. package/dist/voice-action-intent.d.ts.map +1 -0
  95. package/dist/voice-action-intent.js +387 -0
  96. package/dist/voice-playback.d.ts +50 -0
  97. package/dist/voice-playback.d.ts.map +1 -0
  98. package/dist/voice-playback.js +240 -0
  99. package/dist/voice-protocol.d.ts +165 -0
  100. package/dist/voice-protocol.d.ts.map +1 -0
  101. package/dist/voice-protocol.js +312 -0
  102. package/dist/voice-transcript.d.ts +57 -0
  103. package/dist/voice-transcript.d.ts.map +1 -0
  104. package/dist/voice-transcript.js +221 -0
  105. package/package.json +5 -1
  106. package/dist/conversation-budget.d.ts +0 -37
  107. package/dist/conversation-budget.d.ts.map +0 -1
  108. package/dist/conversation-budget.js +0 -97
@@ -0,0 +1,105 @@
1
+ // Read-only Git repository summary + remotes wire contract (Issue #1573, Epic #1572).
2
+ // Pure types + validation helpers only: no filesystem, no process, no clock, no crypto.
3
+ // Reuses GitRepositoryState / GitUnavailableReason / GitRepositoryValidation from git-repository.
4
+ import { GIT_REPOSITORY_STATES } from "./git-repository.js";
5
+ export const GIT_REPOSITORY_SUMMARY_SCHEMA_VERSION = "1";
6
+ function isRecord(input) {
7
+ return typeof input === "object" && input !== null && !Array.isArray(input);
8
+ }
9
+ function isString(input) {
10
+ return typeof input === "string";
11
+ }
12
+ function isBoolean(input) {
13
+ return typeof input === "boolean";
14
+ }
15
+ function isNonNegativeInteger(input) {
16
+ return typeof input === "number" && Number.isInteger(input) && input >= 0;
17
+ }
18
+ function validateRemote(input, reasons, index, options) {
19
+ if (!isRecord(input)) {
20
+ reasons.push(`remotes[${String(index)}] must be an object`);
21
+ return;
22
+ }
23
+ if (!isString(input.name))
24
+ reasons.push(`remotes[${String(index)}].name must be a string`);
25
+ if (!options.allowUrls) {
26
+ if (input.fetchUrl !== undefined) {
27
+ reasons.push(`remotes[${String(index)}].fetchUrl is not allowed in summary`);
28
+ }
29
+ if (input.pushUrl !== undefined) {
30
+ reasons.push(`remotes[${String(index)}].pushUrl is not allowed in summary`);
31
+ }
32
+ return;
33
+ }
34
+ if (input.fetchUrl !== undefined && !isString(input.fetchUrl)) {
35
+ reasons.push(`remotes[${String(index)}].fetchUrl must be a string when present`);
36
+ }
37
+ if (input.pushUrl !== undefined && !isString(input.pushUrl)) {
38
+ reasons.push(`remotes[${String(index)}].pushUrl must be a string when present`);
39
+ }
40
+ }
41
+ function validateRemotesArray(input, reasons, options) {
42
+ if (!Array.isArray(input)) {
43
+ reasons.push("remotes must be an array");
44
+ return;
45
+ }
46
+ input.forEach((remote, index) => {
47
+ validateRemote(remote, reasons, index, options);
48
+ });
49
+ }
50
+ // The summary is a compact wire envelope with required counters, ahead/behind, and a remotes
51
+ // array; keeping the validator in one place makes failure messages predictable for callers.
52
+ // eslint-disable-next-line complexity
53
+ export function validateGitRepositorySummary(input) {
54
+ const reasons = [];
55
+ if (!isRecord(input))
56
+ return { ok: false, reasons: ["response must be an object"] };
57
+ if (input.schemaVersion !== GIT_REPOSITORY_SUMMARY_SCHEMA_VERSION) {
58
+ reasons.push("schemaVersion invalid");
59
+ }
60
+ if (!isString(input.root))
61
+ reasons.push("root must be a string");
62
+ if (!GIT_REPOSITORY_STATES.includes(input.state)) {
63
+ reasons.push("state invalid");
64
+ }
65
+ if (!isBoolean(input.available))
66
+ reasons.push("available must be a boolean");
67
+ if (!isBoolean(input.detached))
68
+ reasons.push("detached must be a boolean");
69
+ if (!isBoolean(input.clean))
70
+ reasons.push("clean must be a boolean");
71
+ if (!isBoolean(input.truncated))
72
+ reasons.push("truncated must be a boolean");
73
+ for (const key of [
74
+ "ahead",
75
+ "behind",
76
+ "stagedCount",
77
+ "unstagedCount",
78
+ "untrackedCount",
79
+ "conflictedCount",
80
+ ]) {
81
+ if (!isNonNegativeInteger(input[key]))
82
+ reasons.push(`${key} must be a non-negative integer`);
83
+ }
84
+ validateRemotesArray(input.remotes, reasons, { allowUrls: false });
85
+ return reasons.length === 0 ? { ok: true } : { ok: false, reasons };
86
+ }
87
+ export function validateGitRemotesResponse(input) {
88
+ const reasons = [];
89
+ if (!isRecord(input))
90
+ return { ok: false, reasons: ["response must be an object"] };
91
+ if (input.schemaVersion !== GIT_REPOSITORY_SUMMARY_SCHEMA_VERSION) {
92
+ reasons.push("schemaVersion invalid");
93
+ }
94
+ if (!isString(input.root))
95
+ reasons.push("root must be a string");
96
+ if (!GIT_REPOSITORY_STATES.includes(input.state)) {
97
+ reasons.push("state invalid");
98
+ }
99
+ if (!isBoolean(input.available))
100
+ reasons.push("available must be a boolean");
101
+ if (!isBoolean(input.truncated))
102
+ reasons.push("truncated must be a boolean");
103
+ validateRemotesArray(input.remotes, reasons, { allowUrls: true });
104
+ return reasons.length === 0 ? { ok: true } : { ok: false, reasons };
105
+ }
@@ -0,0 +1,60 @@
1
+ export declare const GIT_REPOSITORY_SCHEMA_VERSION: "1";
2
+ export declare const GIT_REPOSITORY_STATES: readonly ["available", "unavailable", "unsafe", "error"];
3
+ export type GitRepositoryState = (typeof GIT_REPOSITORY_STATES)[number];
4
+ export declare const GIT_UNAVAILABLE_REASONS: readonly ["not-a-repository", "git-missing", "repository-root-outside-root", "unknown"];
5
+ export type GitUnavailableReason = (typeof GIT_UNAVAILABLE_REASONS)[number];
6
+ export type GitStatusCode = " " | "M" | "A" | "D" | "R" | "C" | "U" | "?" | "!";
7
+ export interface GitChangedFile {
8
+ readonly path: string;
9
+ readonly oldPath?: string | undefined;
10
+ readonly indexStatus: GitStatusCode;
11
+ readonly worktreeStatus: GitStatusCode;
12
+ readonly staged: boolean;
13
+ readonly unstaged: boolean;
14
+ readonly untracked: boolean;
15
+ readonly conflicted: boolean;
16
+ }
17
+ export interface GitRepositoryStatusResponse {
18
+ readonly schemaVersion: typeof GIT_REPOSITORY_SCHEMA_VERSION;
19
+ readonly root: string;
20
+ readonly repositoryRoot?: string | undefined;
21
+ readonly state: GitRepositoryState;
22
+ readonly available: boolean;
23
+ readonly reason?: GitUnavailableReason | "unsafe-repository" | "git-error" | undefined;
24
+ readonly message?: string | undefined;
25
+ readonly branch?: string | undefined;
26
+ readonly detached: boolean;
27
+ readonly clean: boolean;
28
+ readonly stagedCount: number;
29
+ readonly unstagedCount: number;
30
+ readonly untrackedCount: number;
31
+ readonly conflictedCount: number;
32
+ readonly changes: readonly GitChangedFile[];
33
+ readonly truncated: boolean;
34
+ readonly maxChanges: number;
35
+ }
36
+ export type GitDiffScope = "all" | "worktree" | "staged";
37
+ export interface GitRepositoryDiffResponse {
38
+ readonly schemaVersion: typeof GIT_REPOSITORY_SCHEMA_VERSION;
39
+ readonly root: string;
40
+ readonly repositoryRoot?: string | undefined;
41
+ readonly state: GitRepositoryState;
42
+ readonly available: boolean;
43
+ readonly reason?: GitUnavailableReason | "unsafe-repository" | "git-error" | undefined;
44
+ readonly path?: string | undefined;
45
+ readonly scope: GitDiffScope;
46
+ readonly diff: string;
47
+ readonly truncated: boolean;
48
+ readonly maxBytes: number;
49
+ }
50
+ export interface GitRepositoryValidationOk {
51
+ readonly ok: true;
52
+ }
53
+ export interface GitRepositoryValidationFail {
54
+ readonly ok: false;
55
+ readonly reasons: readonly string[];
56
+ }
57
+ export type GitRepositoryValidation = GitRepositoryValidationOk | GitRepositoryValidationFail;
58
+ export declare function validateGitRepositoryStatusResponse(input: unknown): GitRepositoryValidation;
59
+ export declare function validateGitRepositoryDiffResponse(input: unknown): GitRepositoryValidation;
60
+ //# sourceMappingURL=git-repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-repository.d.ts","sourceRoot":"","sources":["../src/git-repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,106 @@
1
+ // Read-only Git repository status/diff wire contract (Issue #1386, Epic #1491).
2
+ // Pure types + validation helpers only: no filesystem, no process, no clock, no crypto.
3
+ export const GIT_REPOSITORY_SCHEMA_VERSION = "1";
4
+ export const GIT_REPOSITORY_STATES = ["available", "unavailable", "unsafe", "error"];
5
+ export const GIT_UNAVAILABLE_REASONS = [
6
+ "not-a-repository",
7
+ "git-missing",
8
+ "repository-root-outside-root",
9
+ "unknown",
10
+ ];
11
+ function isRecord(input) {
12
+ return typeof input === "object" && input !== null && !Array.isArray(input);
13
+ }
14
+ function isString(input) {
15
+ return typeof input === "string";
16
+ }
17
+ function isBoolean(input) {
18
+ return typeof input === "boolean";
19
+ }
20
+ function isNonNegativeInteger(input) {
21
+ return typeof input === "number" && Number.isInteger(input) && input >= 0;
22
+ }
23
+ function validateChange(input, reasons, index) {
24
+ if (!isRecord(input)) {
25
+ reasons.push(`changes[${String(index)}] must be an object`);
26
+ return;
27
+ }
28
+ for (const key of ["path", "indexStatus", "worktreeStatus"]) {
29
+ if (!isString(input[key]))
30
+ reasons.push(`changes[${String(index)}].${key} must be a string`);
31
+ }
32
+ for (const key of ["staged", "unstaged", "untracked", "conflicted"]) {
33
+ if (!isBoolean(input[key]))
34
+ reasons.push(`changes[${String(index)}].${key} must be a boolean`);
35
+ }
36
+ if (input.oldPath !== undefined && !isString(input.oldPath)) {
37
+ reasons.push(`changes[${String(index)}].oldPath must be a string when present`);
38
+ }
39
+ }
40
+ // Git status is a compact wire envelope with several required counters and flags; keeping the
41
+ // validator in one place makes failure messages predictable for tests and callers.
42
+ // eslint-disable-next-line complexity
43
+ export function validateGitRepositoryStatusResponse(input) {
44
+ const reasons = [];
45
+ if (!isRecord(input))
46
+ return { ok: false, reasons: ["response must be an object"] };
47
+ if (input.schemaVersion !== GIT_REPOSITORY_SCHEMA_VERSION)
48
+ reasons.push("schemaVersion invalid");
49
+ if (!isString(input.root))
50
+ reasons.push("root must be a string");
51
+ if (!GIT_REPOSITORY_STATES.includes(input.state)) {
52
+ reasons.push("state invalid");
53
+ }
54
+ if (!isBoolean(input.available))
55
+ reasons.push("available must be a boolean");
56
+ if (!isBoolean(input.detached))
57
+ reasons.push("detached must be a boolean");
58
+ if (!isBoolean(input.clean))
59
+ reasons.push("clean must be a boolean");
60
+ for (const key of [
61
+ "stagedCount",
62
+ "unstagedCount",
63
+ "untrackedCount",
64
+ "conflictedCount",
65
+ "maxChanges",
66
+ ]) {
67
+ if (!isNonNegativeInteger(input[key]))
68
+ reasons.push(`${key} must be a non-negative integer`);
69
+ }
70
+ if (!isBoolean(input.truncated))
71
+ reasons.push("truncated must be a boolean");
72
+ if (!Array.isArray(input.changes))
73
+ reasons.push("changes must be an array");
74
+ else {
75
+ input.changes.forEach((change, index) => {
76
+ validateChange(change, reasons, index);
77
+ });
78
+ }
79
+ return reasons.length === 0 ? { ok: true } : { ok: false, reasons };
80
+ }
81
+ // eslint-disable-next-line complexity
82
+ export function validateGitRepositoryDiffResponse(input) {
83
+ const reasons = [];
84
+ if (!isRecord(input))
85
+ return { ok: false, reasons: ["response must be an object"] };
86
+ if (input.schemaVersion !== GIT_REPOSITORY_SCHEMA_VERSION)
87
+ reasons.push("schemaVersion invalid");
88
+ if (!isString(input.root))
89
+ reasons.push("root must be a string");
90
+ if (!GIT_REPOSITORY_STATES.includes(input.state)) {
91
+ reasons.push("state invalid");
92
+ }
93
+ if (!isBoolean(input.available))
94
+ reasons.push("available must be a boolean");
95
+ if (!["all", "worktree", "staged"].includes(String(input.scope)))
96
+ reasons.push("scope invalid");
97
+ if (!isString(input.diff))
98
+ reasons.push("diff must be a string");
99
+ if (!isBoolean(input.truncated))
100
+ reasons.push("truncated must be a boolean");
101
+ if (!isNonNegativeInteger(input.maxBytes))
102
+ reasons.push("maxBytes must be a non-negative integer");
103
+ if (input.path !== undefined && !isString(input.path))
104
+ reasons.push("path must be a string");
105
+ return reasons.length === 0 ? { ok: true } : { ok: false, reasons };
106
+ }
@@ -0,0 +1,49 @@
1
+ import type { GitRepositoryState, GitUnavailableReason, GitRepositoryValidation } from "./git-repository.js";
2
+ import type { GitUpstreamSummary } from "./git-repository-summary.js";
3
+ export declare const GIT_SYNC_SCHEMA_VERSION: "1";
4
+ export type GitSyncOperation = "fetch" | "pull";
5
+ export declare const GIT_SYNC_OPERATIONS: readonly GitSyncOperation[];
6
+ export type GitSyncOutcome = "succeeded" | "up-to-date" | "no-remote" | "no-upstream" | "detached-head" | "dirty-worktree" | "not-fast-forward" | "auth-failed" | "untrusted-host-key" | "timeout" | "git-missing" | "unsafe-repository" | "git-error";
7
+ export declare const GIT_SYNC_OUTCOMES: readonly GitSyncOutcome[];
8
+ export type GitSyncBlockReason = "no-remote" | "no-upstream" | "detached-head" | "git-missing" | "unsafe-repository" | "unavailable";
9
+ export declare const GIT_SYNC_BLOCK_REASONS: readonly GitSyncBlockReason[];
10
+ export interface GitSyncExecuteRequest {
11
+ readonly schemaVersion: typeof GIT_SYNC_SCHEMA_VERSION;
12
+ readonly projectId: string;
13
+ readonly remote?: string | undefined;
14
+ }
15
+ export interface GitSyncPreview {
16
+ readonly schemaVersion: typeof GIT_SYNC_SCHEMA_VERSION;
17
+ readonly operation: GitSyncOperation;
18
+ readonly available: boolean;
19
+ readonly state: GitRepositoryState;
20
+ readonly reason?: GitUnavailableReason | "unsafe-repository" | "git-error" | undefined;
21
+ readonly branch?: string | undefined;
22
+ readonly detached: boolean;
23
+ readonly upstream?: GitUpstreamSummary | undefined;
24
+ readonly remote?: string | undefined;
25
+ readonly ahead: number;
26
+ readonly behind: number;
27
+ readonly hasRemote: boolean;
28
+ readonly hasUpstream: boolean;
29
+ readonly dirty: boolean;
30
+ readonly executable: boolean;
31
+ readonly blockReason?: GitSyncBlockReason | undefined;
32
+ }
33
+ export interface GitSyncExecuteResponse {
34
+ readonly schemaVersion: typeof GIT_SYNC_SCHEMA_VERSION;
35
+ readonly operation: GitSyncOperation;
36
+ readonly status: GitSyncOutcome;
37
+ readonly available: boolean;
38
+ readonly branch?: string | undefined;
39
+ readonly upstream?: GitUpstreamSummary | undefined;
40
+ readonly remote?: string | undefined;
41
+ readonly ahead?: number | undefined;
42
+ readonly behind?: number | undefined;
43
+ readonly truncated: boolean;
44
+ }
45
+ export declare function isGitSyncOperation(v: unknown): v is GitSyncOperation;
46
+ export declare function isGitSyncOutcome(v: unknown): v is GitSyncOutcome;
47
+ export declare function validateGitSyncPreview(input: unknown): GitRepositoryValidation;
48
+ export declare function validateGitSyncExecuteResponse(input: unknown): GitRepositoryValidation;
49
+ //# sourceMappingURL=git-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-sync.d.ts","sourceRoot":"","sources":["../src/git-sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ // Git fetch/pull sync preview + execute wire contract (Issue #1573, Epic #1572).
2
+ // Pure types + validation helpers only: no filesystem, no process, no clock, no crypto.
3
+ // Reuses GitRepositoryState / GitUnavailableReason / GitRepositoryValidation from git-repository
4
+ // and GitUpstreamSummary from git-repository-summary.
5
+ import { GIT_REPOSITORY_STATES } from "./git-repository.js";
6
+ export const GIT_SYNC_SCHEMA_VERSION = "1";
7
+ export const GIT_SYNC_OPERATIONS = ["fetch", "pull"];
8
+ export const GIT_SYNC_OUTCOMES = [
9
+ "succeeded",
10
+ "up-to-date",
11
+ "no-remote",
12
+ "no-upstream",
13
+ "detached-head",
14
+ "dirty-worktree",
15
+ "not-fast-forward",
16
+ "auth-failed",
17
+ "untrusted-host-key",
18
+ "timeout",
19
+ "git-missing",
20
+ "unsafe-repository",
21
+ "git-error",
22
+ ];
23
+ export const GIT_SYNC_BLOCK_REASONS = [
24
+ "no-remote",
25
+ "no-upstream",
26
+ "detached-head",
27
+ "git-missing",
28
+ "unsafe-repository",
29
+ "unavailable",
30
+ ];
31
+ function isRecord(input) {
32
+ return typeof input === "object" && input !== null && !Array.isArray(input);
33
+ }
34
+ function isString(input) {
35
+ return typeof input === "string";
36
+ }
37
+ function isBoolean(input) {
38
+ return typeof input === "boolean";
39
+ }
40
+ function isNonNegativeInteger(input) {
41
+ return typeof input === "number" && Number.isInteger(input) && input >= 0;
42
+ }
43
+ export function isGitSyncOperation(v) {
44
+ return v === "fetch" || v === "pull";
45
+ }
46
+ export function isGitSyncOutcome(v) {
47
+ return typeof v === "string" && GIT_SYNC_OUTCOMES.includes(v);
48
+ }
49
+ // The preview is a read-only readiness envelope (branch/upstream/ahead/behind + executable gate);
50
+ // centralizing the validator keeps per-field failure messages predictable for callers.
51
+ // eslint-disable-next-line complexity
52
+ export function validateGitSyncPreview(input) {
53
+ const reasons = [];
54
+ if (!isRecord(input))
55
+ return { ok: false, reasons: ["response must be an object"] };
56
+ if (input.schemaVersion !== GIT_SYNC_SCHEMA_VERSION)
57
+ reasons.push("schemaVersion invalid");
58
+ if (!isGitSyncOperation(input.operation))
59
+ reasons.push("operation invalid");
60
+ if (!GIT_REPOSITORY_STATES.includes(input.state)) {
61
+ reasons.push("state invalid");
62
+ }
63
+ for (const key of [
64
+ "available",
65
+ "detached",
66
+ "hasRemote",
67
+ "hasUpstream",
68
+ "dirty",
69
+ "executable",
70
+ ]) {
71
+ if (!isBoolean(input[key]))
72
+ reasons.push(`${key} must be a boolean`);
73
+ }
74
+ for (const key of ["ahead", "behind"]) {
75
+ if (!isNonNegativeInteger(input[key]))
76
+ reasons.push(`${key} must be a non-negative integer`);
77
+ }
78
+ if (input.blockReason !== undefined &&
79
+ !GIT_SYNC_BLOCK_REASONS.includes(input.blockReason)) {
80
+ reasons.push("blockReason invalid");
81
+ }
82
+ return reasons.length === 0 ? { ok: true } : { ok: false, reasons };
83
+ }
84
+ // eslint-disable-next-line complexity
85
+ export function validateGitSyncExecuteResponse(input) {
86
+ const reasons = [];
87
+ if (!isRecord(input))
88
+ return { ok: false, reasons: ["response must be an object"] };
89
+ if (input.schemaVersion !== GIT_SYNC_SCHEMA_VERSION)
90
+ reasons.push("schemaVersion invalid");
91
+ if (!isGitSyncOperation(input.operation))
92
+ reasons.push("operation invalid");
93
+ if (!isGitSyncOutcome(input.status))
94
+ reasons.push("status invalid");
95
+ if (!isBoolean(input.available))
96
+ reasons.push("available must be a boolean");
97
+ if (!isBoolean(input.truncated))
98
+ reasons.push("truncated must be a boolean");
99
+ for (const key of ["ahead", "behind"]) {
100
+ if (input[key] !== undefined && !isNonNegativeInteger(input[key])) {
101
+ reasons.push(`${key} must be a non-negative integer when present`);
102
+ }
103
+ }
104
+ for (const key of ["branch", "remote"]) {
105
+ if (input[key] !== undefined && !isString(input[key])) {
106
+ reasons.push(`${key} must be a string when present`);
107
+ }
108
+ }
109
+ return reasons.length === 0 ? { ok: true } : { ok: false, reasons };
110
+ }
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export declare const KEIKO_CONTRACTS_VERSION: "0.8.0";
2
- export declare const KEIKO_PRODUCT_VERSION: "0.2.7";
1
+ export declare const KEIKO_CONTRACTS_VERSION: "0.12.0";
2
+ export declare const KEIKO_PRODUCT_VERSION: "0.2.9";
3
3
  export type { HarnessStateName, TerminalState, StateTransition, HarnessLimits, TaskType, GenerateUnitTestsInput, InvestigateBugInput, ExplainPlanInput, VerifyInput, TaskInput, RunCounters, RunOutcome, RunResult, RunManifest, HarnessCode, HarnessFailure, RunStartedEvent, StateTransitionEvent, ModelCallStartedEvent, ModelCallCompletedEvent, ModelCallFailedEvent, ToolCallStartedEvent, ToolCallCompletedEvent, ToolCallFailedEvent, CommandExecutedEvent, SandboxConfiguredEvent, PatchAppliedEvent, ReasoningTraceEvent, PatchProposedEvent, VerificationResultEvent, RunCompletedEvent, RunCancelledEvent, RunFailedEvent, BrowserSessionCloseReason, BrowserSessionOpenedEvent, BrowserNavigatedEvent, BrowserScreenshotCapturedEvent, BrowserPageContentCapturedEvent, BrowserSessionClosedEvent, BrowserTrustWarningEvent, BrowserErrorEvent, BrowserEvent, HarnessEvent, } from "./harness.js";
4
4
  export { TERMINAL_STATES, DEFAULT_LIMITS, HARNESS_CODES, HARNESS_VERSION } from "./harness.js";
5
5
  export type { WorkflowDescriptor, WorkflowInputSpec } from "./workflow-descriptor.js";
@@ -11,24 +11,56 @@ export type { CreateEditorLayoutStateV2Input, EditorLayoutAction, EditorLayoutNo
11
11
  export { EDITOR_LAYOUT_SCHEMA_VERSION, activeEditorPane, createEditorLayoutStateV2, editorLayoutOpenFiles, editorLayoutPaneIds, editorLayoutPanes, editorLayoutReducer, serializeEditorLayoutStateV2, } from "./editor-layout.js";
12
12
  export type { EditorDirtyCloseDecision, EditorDirtyCloseIntent, EditorDirtyCloseReason, EditorDirtyCloseResolution, } from "./editor-dirty-close.js";
13
13
  export { createEditorDirtyCloseIntent } from "./editor-dirty-close.js";
14
+ export type { RootRelativeFileIdentifier, WorkspaceFileIdentifierResolution, WorkspaceFileTarget, } from "./editor-workspace-path.js";
15
+ export { isRootRelativeFileIdentifier, resolveWorkspaceFileIdentifier, selectWorkspaceFileTarget, } from "./editor-workspace-path.js";
14
16
  export type { EditorHotExitSnapshotV1 } from "./editor-hot-exit.js";
15
17
  export { EDITOR_HOT_EXIT_SCHEMA_VERSION, EDITOR_HOT_EXIT_TTL_MS, editorHotExitSnapshotExpired, isEditorHotExitSnapshotV1, } from "./editor-hot-exit.js";
16
- export type { EditorAgentAction, EditorAgentActionQueuedResponse, EditorAgentActionResult, EditorAgentActionResultRequest, EditorAgentActionStatus, EditorAgentActionType, EditorAgentActionsPostBody, EditorAgentBridgeSnapshotRequest, EditorAgentEvent, EditorAgentPaneSnapshot, EditorAgentParse, EditorAgentParseFail, EditorAgentParseOk, EditorAgentSessionSnapshot, EditorAgentSessionsResponse, EditorAgentSnapshotRequest, EditorAgentSnapshotResponse, EditorAgentSnapshotTextMode, } from "./editor-agent.js";
17
- export { EDITOR_AGENT_SCHEMA_VERSION, isEditorAgentAction, isEditorAgentActionResult, isEditorAgentSessionSnapshot, parseEditorAgentActionsPostBody, parseEditorAgentSnapshotRequest, } from "./editor-agent.js";
18
+ export type { EditorAgentAction, EditorAgentActionFailure, EditorAgentActionQueuedResponse, EditorAgentActionResult, EditorAgentActionResultRequest, EditorAgentActionStatus, EditorAgentActionType, EditorAgentActionsPostBody, EditorAgentBridgeSnapshotRequest, EditorAgentConflictCode, EditorAgentEvent, EditorAgentFailureCode, EditorAgentPaneSnapshot, EditorAgentParse, EditorAgentParseFail, EditorAgentParseOk, EditorAgentSessionSnapshot, EditorAgentSessionsResponse, EditorAgentSnapshotRequest, EditorAgentSnapshotResponse, EditorAgentSnapshotTextMode, } from "./editor-agent.js";
19
+ export { DEFAULT_EDITOR_AGENT_SNAPSHOT_TEXT_MODE, EDITOR_AGENT_CONFLICT_CODES, EDITOR_AGENT_FAILURE_CODES, EDITOR_AGENT_SCHEMA_VERSION, EDITOR_AGENT_WRITE_ACTION_TYPES, editorAgentActionHasWritePrecondition, editorAgentWritePreconditionError, isContainedAgentPath, isEditorAgentAction, isEditorAgentActionResult, isEditorAgentConflictCode, isEditorAgentEvent, isEditorAgentFailureCode, isEditorAgentSessionSnapshot, isEditorAgentWriteActionType, parseEditorAgentActionsPostBody, parseEditorAgentSnapshotRequest, validateAgentTextEdits, } from "./editor-agent.js";
20
+ export type { EditorAgentActionAuditInput, EditorAgentActionAuditRecord, EditorAgentActionDenyReason, EditorAgentActionDisposition, EditorAgentActionEffectClass, EditorAgentActionPolicyContext, EditorAgentActionPolicyDecision, EditorAgentActionReviewReason, EditorAgentAuditResponse, } from "./editor-agent-governance.js";
21
+ export { EDITOR_AGENT_ACTION_DENY_REASONS, EDITOR_AGENT_ACTION_DISPOSITIONS, EDITOR_AGENT_ACTION_EFFECT_CLASS, EDITOR_AGENT_ACTION_REVIEW_REASONS, EDITOR_AGENT_AUDIT_SCHEMA_VERSION, EDITOR_AGENT_AUDIT_SUMMARY_MAX_CHARS, buildEditorAgentActionAuditRecord, classifyEditorAgentAction, isEditorAgentActionAuditRecord, isEditorAgentActionDisposition, isEditorAgentActionEffectClass, isMutatingEditorAgentAction, } from "./editor-agent-governance.js";
18
22
  export type { LanguageServiceOperation, LanguageServiceErrorCode, LanguagePosition, LanguageRange, LanguageDocumentOverlay, LanguageDiagnosticSeverity, LanguageDiagnostic, LanguageDiagnosticsResult, LanguageCompletionItemKind, LanguageCompletionItem, LanguageCompletionResult, LanguageHoverResult, LanguageSymbolKind, LanguageDocumentSymbol, LanguageSymbolResult, LanguageTextEdit, LanguageFormattingOptions, LanguageFormattingResult, LanguageProviderAvailability, LanguageProviderDescriptor, LanguageServiceCapabilities, LanguageServiceLimits, LanguageDiagnosticsRequest, LanguageCompletionRequest, LanguageHoverRequest, LanguageSymbolsRequest, LanguageFormattingRequest, LanguageServiceRequest, LanguageServiceParseOk, LanguageServiceParseFail, LanguageServiceParse, } from "./language-service.js";
19
23
  export { LANGUAGE_SERVICE_SCHEMA_VERSION, LANGUAGE_SERVICE_OPERATIONS, LANGUAGE_SERVICE_ERROR_CODES, MAX_LANGUAGE_FORMATTING_TAB_SIZE, DEFAULT_LANGUAGE_SERVICE_LIMITS, isLanguagePosition, isLanguageDocumentOverlay, isLanguageFormattingOptions, parseLanguageServiceRequest, } from "./language-service.js";
24
+ export type { EditorLanguageMode } from "./editor-language-mode-map.js";
25
+ export { EDITOR_LANGUAGE_MODE_MAP, EDITOR_LANGUAGE_MODE_IDS, EDITOR_LANGUAGE_MODE_BY_EXTENSION, inferEditorLanguageModeId, isEditorLanguageModeId, } from "./editor-language-mode-map.js";
26
+ export type { EditorBuiltinCapability, EditorBuiltinFormattingSource, } from "./editor-builtin-capabilities.js";
27
+ export { EDITOR_BUILTIN_CAPABILITIES, EDITOR_BUILTIN_CAPABILITY_BY_LANGUAGE, editorBuiltinCapability, editorBuiltinDocumentFormatting, isBuiltinFormattingAvailable, } from "./editor-builtin-capabilities.js";
28
+ export type { LspProcessErrorCode, LspProcessStatus, LspFrameRejectReason, LspNetworkPolicy, LspProcessConfig, LspLifecycleEvent, } from "./lsp-process.js";
29
+ export { LSP_PROCESS_SCHEMA_VERSION, LSP_PROCESS_ERROR_CODES, LSP_PROCESS_STATUSES, DEFAULT_LSP_PROCESS_CONFIG, isTerminalLspStatus, lspStatusToProviderDescriptor, parseLspFrameHeader, } from "./lsp-process.js";
30
+ export type { RuntimeCapabilityKind, RuntimeCapabilityState, RuntimeCapabilityUnavailableReason, RuntimeCommandKind, RuntimeCommandSourceType, RuntimeCommandSource, RuntimeCapability, RuntimeCapabilitiesResponse, RuntimeCapabilitiesParseOk, RuntimeCapabilitiesParseFail, RuntimeCapabilitiesParse, } from "./runtime-capabilities.js";
31
+ export { RUNTIME_CAPABILITY_SCHEMA_VERSION, RUNTIME_CAPABILITY_KINDS, RUNTIME_CAPABILITY_STATES, RUNTIME_CAPABILITY_UNAVAILABLE_REASONS, RUNTIME_COMMAND_KINDS, validateRuntimeCapabilitiesResponse, } from "./runtime-capabilities.js";
32
+ export type { GitRepositoryState, GitUnavailableReason, GitStatusCode, GitChangedFile, GitRepositoryStatusResponse, GitDiffScope, GitRepositoryDiffResponse, GitRepositoryValidationOk, GitRepositoryValidationFail, GitRepositoryValidation, } from "./git-repository.js";
33
+ export { GIT_REPOSITORY_SCHEMA_VERSION, GIT_REPOSITORY_STATES, GIT_UNAVAILABLE_REASONS, validateGitRepositoryStatusResponse, validateGitRepositoryDiffResponse, } from "./git-repository.js";
34
+ export type { GitRemoteSummary, GitRepositorySummaryRemote, GitUpstreamSummary, GitLastSyncMetadata, GitRepositorySummary, GitRemotesResponse, GitRepositorySummaryValidation, } from "./git-repository-summary.js";
35
+ export { GIT_REPOSITORY_SUMMARY_SCHEMA_VERSION, validateGitRepositorySummary, validateGitRemotesResponse, } from "./git-repository-summary.js";
36
+ export type { GitHistoryEntry, GitHistoryResponse } from "./git-history.js";
37
+ export { GIT_HISTORY_SCHEMA_VERSION, validateGitHistoryResponse } from "./git-history.js";
38
+ export type { GitSyncOperation, GitSyncOutcome, GitSyncBlockReason, GitSyncExecuteRequest, GitSyncPreview, GitSyncExecuteResponse, } from "./git-sync.js";
39
+ export { GIT_SYNC_SCHEMA_VERSION, GIT_SYNC_OPERATIONS, GIT_SYNC_OUTCOMES, GIT_SYNC_BLOCK_REASONS, isGitSyncOperation, isGitSyncOutcome, validateGitSyncPreview, validateGitSyncExecuteResponse, } from "./git-sync.js";
40
+ export type { GitRepositoryAgentOperationMode, GitRepositoryAgentOperationKind, GitRepositoryAgentDenialReason, GitRepositoryAgentOperationRequest, GitRepositoryAgentOperationDelegatedResponse, GitRepositoryAgentOperationDeniedResponse, GitRepositoryAgentOperationResponse, GitRepositoryAgentParseOk, GitRepositoryAgentParseFail, GitRepositoryAgentParseResult, } from "./git-repository-agent.js";
41
+ export { GIT_REPOSITORY_AGENT_SCHEMA_VERSION, GIT_REPOSITORY_AGENT_OPERATION_MODES, GIT_REPOSITORY_AGENT_OPERATION_KINDS, GIT_REPOSITORY_AGENT_DENIAL_REASONS, parseGitRepositoryAgentOperationRequest, isGitRepositoryAgentOperationResponse, } from "./git-repository-agent.js";
42
+ export type { CommandTaskKind, CommandTaskSource, CommandTask, CommandTaskCatalog, CommandFailureReason, CommandTaskRunRequest, CommandTaskRunResult, CommandRunnerEventKind, CommandRunnerEvent, CommandTaskRunRequestParseOk, CommandTaskRunRequestParseFail, CommandTaskRunRequestParse, CommandTaskCatalogParseOk, CommandTaskCatalogParseFail, CommandTaskCatalogParse, CommandTaskRunResultParseOk, CommandTaskRunResultParseFail, CommandTaskRunResultParse, } from "./command-runner.js";
43
+ export { COMMAND_RUNNER_SCHEMA_VERSION, COMMAND_TASK_KINDS, COMMAND_TASK_SOURCES, COMMAND_FAILURE_REASONS, COMMAND_RUNNER_EVENT_KINDS, COMMAND_TASK_RULES, parseCommandTaskRunRequest, validateCommandTaskCatalog, validateCommandTaskRunResult, } from "./command-runner.js";
20
44
  export type { EditorCompletionWireTriggerKind, EditorCompletionItemOrigin, EditorCompletionWireItem, EditorCompletionSource, EditorCompletionWireProvenance, EditorCompletionWireResponse, EditorCompletionContextSelectors, EditorCompletionWireRequest, EditorCompletionParseOk, EditorCompletionParseFail, EditorCompletionParse, } from "./editor-completion.js";
21
45
  export { EDITOR_COMPLETION_SCHEMA_VERSION, EDITOR_COMPLETION_WIRE_TRIGGER_KINDS, EDITOR_COMPLETION_ITEM_ORIGINS, EDITOR_COMPLETION_SOURCES, parseEditorCompletionRequest, } from "./editor-completion.js";
46
+ export type { ContainerEngineId, ContainerEngineState, ContainerEngineUnavailableReason, ContainerEngineStatus, ContainerCapabilityResponse, ContainerMountMode, ContainerNetworkMode, ContainerResourceLimits, ContainerExecutionPolicy, ContainerTaskKind, ContainerTask, ContainerTaskCatalog, ContainerRunRequest, ContainerFailureReason, ContainerRunResult, ContainerRunnerEventKind, ContainerRunnerEvent, ContainerRunRequestParseOk, ContainerRunRequestParseFail, ContainerRunRequestParse, ContainerCapabilityResponseParseOk, ContainerCapabilityResponseParseFail, ContainerCapabilityResponseParse, ContainerTaskCatalogParseOk, ContainerTaskCatalogParseFail, ContainerTaskCatalogParse, ContainerRunResultParseOk, ContainerRunResultParseFail, ContainerRunResultParse, } from "./container-runtime.js";
47
+ export { CONTAINER_RUNTIME_SCHEMA_VERSION, CONTAINER_ENGINE_IDS, CONTAINER_MOUNT_MODES, CONTAINER_NETWORK_MODES, CONTAINER_TASK_KINDS, CONTAINER_FAILURE_REASONS, CONTAINER_RUNNER_EVENT_KINDS, CONTAINER_TASK_RULES, parseContainerRunRequest, validateContainerCapabilityResponse, validateContainerTaskCatalog, validateContainerRunResult, } from "./container-runtime.js";
22
48
  export type { EditorInlineCompletionWireTriggerKind, EditorInlineCompletionWireItem, EditorInlineCompletionWireProvenance, EditorInlineCompletionWireResponse, EditorInlineCompletionWireRequest, EditorInlineCompletionTelemetryReport, EditorInlineCompletionParseOk, EditorInlineCompletionParseFail, EditorInlineCompletionParse, EditorInlineCompletionTelemetryParseOk, EditorInlineCompletionTelemetryParseFail, EditorInlineCompletionTelemetryParse, } from "./editor-inline-completion.js";
23
49
  export { EDITOR_INLINE_COMPLETION_SCHEMA_VERSION, EDITOR_INLINE_COMPLETION_WIRE_TRIGGER_KINDS, EDITOR_INLINE_COMPLETION_TELEMETRY_SCHEMA_VERSION, parseEditorInlineCompletionRequest, parseEditorInlineCompletionTelemetry, } from "./editor-inline-completion.js";
24
50
  export type { EditorTestGenerationTargetKind, EditorTestGenerationWireSymbol, EditorTestGenerationWireTarget, EditorTestGenerationWireRequest, EditorTestGenerationStatus, EditorTestGenerationAssurance, EditorTestGenerationGateState, EditorTestGenerationFunnel, EditorTestGenerationWireChangeKind, EditorTestGenerationWireEdit, EditorTestGenerationWireFileChange, EditorTestGenerationWirePatch, EditorTestGenerationWireProvenance, EditorTestGenerationWireResponse, EditorTestGenerationParseOk, EditorTestGenerationParseFail, EditorTestGenerationParse, } from "./editor-test-generation.js";
25
51
  export { EDITOR_TEST_GENERATION_SCHEMA_VERSION, EDITOR_TEST_GENERATION_STABILITY_RUNS, EDITOR_TEST_GENERATION_TARGET_KINDS, EDITOR_TEST_GENERATION_STATUSES, EDITOR_TEST_GENERATION_ASSURANCES, EDITOR_TEST_GENERATION_GATE_STATES, notRunTestGenerationFunnel, parseEditorTestGenerationRequest, } from "./editor-test-generation.js";
26
52
  export type { EditorPatchApplyDecision, EditorPatchApplyWireRequest, EditorPatchApplyStatus, EditorPatchRejectionReason, EditorPatchApplyRejection, EditorPatchApplyChangeCounts, EditorPatchVerificationOutcome, EditorPatchVerificationBounds, EditorPatchVerificationSummary, EditorPatchRevertProposal, EditorPatchApplyEvidenceRefs, EditorPatchApplyWireResponse, EditorPatchApplyParseOk, EditorPatchApplyParseFail, EditorPatchApplyParse, } from "./editor-patch-apply.js";
27
53
  export { EDITOR_PATCH_APPLY_SCHEMA_VERSION, EDITOR_PATCH_APPLY_DECISIONS, EDITOR_PATCH_APPLY_STATUSES, EDITOR_PATCH_REJECTION_REASONS, EDITOR_PATCH_VERIFICATION_OUTCOMES, parseEditorPatchApplyRequest, } from "./editor-patch-apply.js";
28
- export type { ModelKind, CostClass, LatencyClass, InfillingAlignment, ModelCapability, CompletionInteractionMode, CompletionDegradeReason, CompletionModelSelection, ChatMessage, ChatMessageContentPart, ChatMessageImageUrlContentPart, ChatMessageTextContentPart, ToolDefinition, ResponseFormat, GatewayRequest, NormalizedToolCall, UsageMetadata, NormalizedResponse, FinishReason, StreamDelta, StreamEvent, } from "./gateway.js";
29
- export { CONVERSATION_CAPABILITY_CONTRACT_VERSION, INFILLING_ALIGNMENTS } from "./gateway.js";
54
+ export type { ModelKind, CostClass, LatencyClass, InfillingAlignment, ModelCapability, CompletionInteractionMode, CompletionDegradeReason, CompletionModelSelection, ChatMessage, ChatMessageContentPart, ChatMessageImageUrlContentPart, ChatMessageTextContentPart, ToolDefinition, ResponseFormat, GatewayRequest, NormalizedToolCall, UsageMetadata, NormalizedResponse, FinishReason, StreamDelta, StreamEvent, VoiceProviderLocality, VoicePersona, VoiceProfile, VoiceUnavailableReason, VoiceTransportPosture, VoiceCapabilityResolution, VoiceProviderAvailability, } from "./gateway.js";
55
+ export { CONVERSATION_CAPABILITY_CONTRACT_VERSION, INFILLING_ALIGNMENTS, VOICE_PROVIDER_LOCALITIES, VOICE_PERSONAS, } from "./gateway.js";
30
56
  export type { ConversationIneligibilityReason } from "./gateway.js";
31
- export { isConversationEligibleModel, explainConversationIneligibility, modelSupportsInfilling, isAlignedInfillingModel, isAsYouTypeCompletionModel, } from "./gateway.js";
57
+ export { isConversationEligibleModel, explainConversationIneligibility, modelSupportsInfilling, isAlignedInfillingModel, isAsYouTypeCompletionModel, isVoiceCapability, modelSupportsSpeechInput, modelSupportsSpeechOutput, modelSupportsRealtimeVoice, isConfiguredVoiceProvider, describeVoiceProviderAvailability, listVoicePersonas, } from "./gateway.js";
58
+ export type { VoicePlane, VoiceControlTransport, VoiceMediaTransport, VoiceNegotiationMode, VoiceReplayClass, VoiceRedactionClass, VoiceMessageDirection, VoiceMediaTrackKind, VoiceMediaPlaneDescriptor, VoiceControlMessageKind, VoiceDataChannelEventKind, VoiceSessionCloseReason, VoiceMediaTrackState, VoicePlaybackState, VoicePolicyDecision, VoiceProtocolErrorCode, VoiceSessionMemoryContext, VoiceSessionGroundingKind, VoiceSessionGroundingContext, VoiceSessionChatContext, VoiceSessionCreateMessage, VoiceSessionCreatedMessage, VoiceSessionCloseMessage, VoiceSessionClosedMessage, VoiceCapabilityOfferMessage, VoiceCapabilitySelectMessage, VoiceSdpOfferMessage, VoiceSdpAnswerMessage, VoiceIceCandidateMessage, VoiceMediaTrackStateMessage, VoiceControlCancelMessage, VoiceControlInterruptMessage, VoiceTranscriptPartialMessage, VoiceTranscriptCommittedMessage, VoiceTranscriptDiscardedMessage, VoicePlaybackStateMessage, VoicePolicyDecisionMessage, VoiceErrorMessage, VoiceControlMessage, VoiceProtocolTimeouts, VoiceProtocolValidation, } from "./voice-protocol.js";
59
+ export { VOICE_PROTOCOL_VERSION, VOICE_PLANES, VOICE_CONTROL_TRANSPORTS, VOICE_CONTROL_TRANSPORT_V1, VOICE_MEDIA_TRANSPORTS, VOICE_NEGOTIATION_MODES, PREFERRED_VOICE_NEGOTIATION_MODE, VOICE_REPLAY_CLASSES, VOICE_REDACTION_CLASSES, VOICE_MESSAGE_DIRECTIONS, VOICE_MEDIA_TRACK_KINDS, VOICE_MEDIA_PLANE, VOICE_CONTROL_MESSAGE_KINDS, VOICE_DATA_CHANNEL_EVENT_KINDS, VOICE_SESSION_CLOSE_REASONS, VOICE_MEDIA_TRACK_STATES, VOICE_PLAYBACK_STATES, VOICE_POLICY_DECISIONS, VOICE_PROTOCOL_ERROR_CODES, VOICE_CONTROL_MESSAGE_REPLAY, VOICE_CONTROL_MESSAGE_REDACTION, VOICE_PROFILE_ALLOWED_MESSAGE_KINDS, VOICE_PROFILE_MEDIA_TRANSPORT, VOICE_PROFILE_NEGOTIATION_MODE, DEFAULT_VOICE_PROTOCOL_TIMEOUTS, isVoiceProtocolVersionSupported, isVoiceControlMessageKind, isVoiceMessageDirection, isVoiceNegotiationMode, voiceControlMessageReplayClass, voiceControlMessageRedactionClass, isVoiceReplayEligible, voiceMessageAllowedForProfile, assertNeverVoiceControlMessageKind, isVoiceControlMessage, validateVoiceControlMessage, } from "./voice-protocol.js";
60
+ export type { VoiceTranscriptSegmentState, VoiceTranscriptProviderErrorKind, VoiceTranscriptSource, VoiceTranscriptSegment, CommittedVoiceTranscriptProjection, VoiceTranscriptEvidenceSummary, } from "./voice-transcript.js";
61
+ export { VOICE_TRANSCRIPT_SCHEMA_VERSION, VOICE_TRANSCRIPT_SEGMENT_STATES, VOICE_TRANSCRIPT_CONSUMABLE_STATES, VOICE_TRANSCRIPT_PROVIDER_ERROR_KINDS, VOICE_TRANSCRIPT_SOURCES, VOICE_TRANSCRIPT_SEGMENT_REPLAY, VOICE_TRANSCRIPT_SEGMENT_REDACTION, VOICE_TRANSCRIPT_SEGMENT_TRANSITIONS, isVoiceTranscriptSchemaVersionSupported, isVoiceTranscriptSegmentState, isVoiceTranscriptProviderErrorKind, isVoiceTranscriptSource, voiceTranscriptSegmentReplayClass, voiceTranscriptSegmentRedactionClass, canTransitionVoiceTranscriptSegment, isCommittedVoiceTranscriptState, assertNeverVoiceTranscriptSegmentState, mapWireKindToVoiceTranscriptSegmentState, voiceTranscriptCaptureAllowed, voiceTranscriptPreviewAllowed, selectCommittedVoiceTranscript, summarizeVoiceTranscript, } from "./voice-transcript.js";
62
+ export type { VoicePlaybackPhase, VoicePlaybackFailureKind, VoicePlaybackEffect, VoicePlaybackTurnSummary, } from "./voice-playback.js";
63
+ export { VOICE_PLAYBACK_SCHEMA_VERSION, VOICE_PLAYBACK_PHASES, VOICE_PLAYBACK_ACTIVE_PHASES, VOICE_PLAYBACK_SETTLED_PHASES, VOICE_PLAYBACK_FAILURE_KINDS, VOICE_PLAYBACK_PHASE_REPLAY, VOICE_PLAYBACK_PHASE_REDACTION, VOICE_PLAYBACK_AUDIO_PLANE, VOICE_PLAYBACK_TRANSITIONS, VOICE_PLAYBACK_EFFECTS, isVoicePlaybackSchemaVersionSupported, isVoicePlaybackPhase, isVoicePlaybackFailureKind, isVoicePlaybackEffect, voicePlaybackPhaseReplayClass, voicePlaybackPhaseRedactionClass, isActiveVoicePlaybackPhase, isSettledVoicePlaybackPhase, canTransitionVoicePlayback, assertNeverVoicePlaybackPhase, mapVoicePlaybackPhaseToWireState, voicePlaybackAllowedForProfile, voicePlaybackInterruptAllowedForProfile, initialVoicePlaybackPhase, summarizeVoicePlaybackTurn, } from "./voice-playback.js";
32
64
  export type { NetworkPolicy, FilesystemPolicy, SandboxPolicy, SandboxBackend, SandboxAttestation, CommandRule, CommandRunInput, CommandResult, PatchChangeKind, PatchHunk, PatchFileChange, PatchRejectionCode, PatchRejection, PatchConflict, PatchValidation, PatchLimits, PatchApplyResult, ToolHostConfig, ToolHostConfigInput, ToolCallRequest, ToolCallMetadata, ToolCallResult, ToolPort, } from "./tools.js";
33
65
  export { DEFAULT_ENV_ALLOWLIST, DEFAULT_SANDBOX_POLICY, SANDBOX_BACKENDS, DEFAULT_COMMAND_RULES, DEFAULT_PATCH_LIMITS, DEFAULT_TOOL_HOST_CONFIG, } from "./tools.js";
34
66
  export type { VerificationKind, VerificationStatus, ResourceDimension, ResourceLimitDecision, VerificationResourceLimits, VerificationStep, VerificationPlan, VerificationResult, VerificationReport, ScriptCatalog, ScriptMapping, } from "./verification.js";
@@ -76,8 +108,6 @@ export { validateCapsuleRowShape, redactPathInDiagnostic, } from "./local-knowle
76
108
  export type { ConversationId as MemoryConversationId, EvidenceManifestId as MemoryEvidenceManifestId, MemoryAcceptance, MemoryArchive, MemoryAuditAction, MemoryAuditActionKind, MemoryAuditEvent, MemoryAuditEventKind, MemoryAuditInitiatorSurface, MemoryAuditRecord, MemoryAuditRecordId, MemoryEdge, MemoryEdgeId, MemoryEdgeKind, MemoryForget, MemoryId, MemoryModelIdentity, MemoryPin, MemoryProposal, MemoryProposalId, MemoryProvenance, MemoryRecord, MemoryRejection, MemoryRetentionHint, MemoryRetrievalRequest, MemoryReviewerId, MemoryScope, MemoryScopeKind, MemorySensitivity, MemorySourceKind, MemoryStatus, MemoryStructuredPayload, MemoryStructuredPayloadKind, MemorySupersession, MemoryType, MemoryUnpin, MemoryUpdate, MemoryUpdateField, MemoryValidation, MemoryValidationFail, MemoryValidationOk, MemoryValidityInterval, ProjectId as MemoryProjectId, StaleModelMetadataInput, StatusTransitionCheck, UserId as MemoryUserId, WorkflowDefinitionId as MemoryWorkflowDefinitionId, WorkflowRunId as MemoryWorkflowRunId, WorkspaceId as MemoryWorkspaceId, } from "./memory-barrel.js";
77
109
  export { MEMORY_AUDIT_ACTION_KINDS, MEMORY_AUDIT_EVENT_KINDS, MEMORY_AUDIT_EVENT_SCHEMA_VERSION, MEMORY_AUDIT_EVENT_SUMMARY_MAX_CHARS, MEMORY_AUDIT_INITIATOR_SURFACES, MEMORY_EDGE_KINDS, MEMORY_SCHEMA_VERSION, MEMORY_SCOPE_KINDS, MEMORY_SENSITIVITIES, MEMORY_SOURCE_KINDS, MEMORY_STATUSES, MEMORY_STATUS_TRANSITIONS, MEMORY_STRUCTURED_PAYLOAD_KINDS, MEMORY_TYPES, MEMORY_UPDATE_FIELDS, assertNeverMemoryType, checkStatusTransition, hasStaleModelMetadata, isMemoryEdge, isMemoryRecord, isScopeReachable, looksLikeSecretShape, validateMemoryAcceptance, validateMemoryArchive, validateMemoryAuditRecord, validateMemoryEdge, validateMemoryForget, validateMemoryPin, validateMemoryProposal, validateMemoryProvenance, validateMemoryRecord, validateMemoryRejection, validateMemoryRetrievalRequest, validateMemoryScope, validateMemoryStructuredPayload, validateMemorySupersession, validateMemoryUnpin, validateMemoryUpdate, validateMemoryValidityInterval, } from "./memory-barrel.js";
78
110
  export type { MemoryOmittedEvent, MemoryUsedEvent, MemoryWorkflowContext, MemoryWorkflowPort, MemoryWriteCandidateEvent, } from "./memory-workflow-port.js";
79
- export type { ConversationBudgetBreakdown, ConversationBudgetDocumentContext, ConversationBudgetEstimate, ConversationBudgetInputs, ConversationBudgetMessage, ConversationBudgetPressure, } from "./conversation-budget.js";
80
- export { estimateConversationBudget } from "./conversation-budget.js";
81
111
  export * as QualityIntelligence from "./qualityIntelligence/index.js";
82
112
  export type { QualityIntelligenceUiEvidenceRef, QualityIntelligenceUiFindingSummary, QualityIntelligenceUiRunDetail, QualityIntelligenceUiAtomCoverage, QualityIntelligenceUiRunListResponse, QualityIntelligenceUiRunSummary, QualityIntelligenceUiRunTotals, QualityIntelligenceUiCandidate, QualityIntelligenceUiWeakTestFlag, QualityIntelligenceUiDriftMetadata, QualityIntelligenceUiStalenessEntry, QualityIntelligenceUiStalenessReport, QualityIntelligenceUiRegenerateResult, QualityIntelligenceInlineSource, QualityIntelligenceInlineSourceKind, QualityIntelligenceRequirementsSource, QualityIntelligenceWorkspaceSource, QualityIntelligenceFileSource, QualityIntelligenceCapsuleSource, QualityIntelligenceCapsuleSetSource, QualityIntelligenceFigmaSnapshotSource, QualityIntelligenceImageSource, QualityIntelligenceStartRunRequest, QualityIntelligenceSkippedSource, QualityIntelligenceRunStreamAccepted, QualityIntelligenceRunStreamEvent, QualityIntelligenceRunStreamDone, QualityIntelligenceRunStreamError, QualityIntelligenceRunStreamMessage, } from "./qualityIntelligence/bffWire.js";
83
113
  export type { QualityIntelligenceExportAdapter, QualityIntelligenceExportBundle, QualityIntelligenceExportBundleEntry, QualityIntelligenceTestCaseCandidate, QualityIntelligenceReviewState, QualityIntelligencePriority, QualityIntelligenceRiskClass, QualityIntelligenceTestCaseStatus, } from "./qualityIntelligence/index.js";
@@ -106,4 +136,28 @@ export type { PromptSafetyRuleId, PromptSafetyViolationCode, PromptSafetySeverit
106
136
  export { PROMPT_SAFETY_RULE_IDS, PROMPT_SAFETY_VIOLATION_CODES, PROMPT_SAFETY_SEVERITIES, LEAST_PRIVILEGE_CONSTRAINTS, PROMPT_SAFETY_DECISIONS, PROMPT_SAFETY_VERIFICATION_STATUSES, PROMPT_SAFETY_VIOLATION_DETAILS, isPromptSafetyViolationCode, requiresHumanReviewForAnalysis, leastPrivilegeForAnalysis, summarizePromptSafety, assessEnhancedPromptStructuralSafety, validatePromptSafetyAssessment, } from "./prompt-enhancer-safety.js";
107
137
  export type { PromptEnhancementWireRequest, PromptEnhancementModelAvailability, PromptEnhancementModelRoutingReason, PromptEnhancementModelRouting, PromptEnhancementCandidateComparison, PromptEnhancementGroundingReadiness, PromptEnhancementGroundingReadinessStatus, PromptEnhancementGroundingReadinessReason, PromptEnhancementEvidenceReference, PromptEnhancementWireResponse, } from "./prompt-enhancer-bff.js";
108
138
  export { PROMPT_ENHANCEMENT_LOCALE_MAX_CHARS, PROMPT_ENHANCEMENT_MODEL_ID_MAX_CHARS, PROMPT_ENHANCEMENT_DEFAULT_CANDIDATE_COUNT, PROMPT_ENHANCEMENT_MAX_CANDIDATE_COUNT, PROMPT_ENHANCEMENT_MODEL_AVAILABILITIES, validatePromptEnhancementWireRequest, } from "./prompt-enhancer-bff.js";
139
+ export type { GitDeliveryActionKind, GitDeliveryRiskClass, GitDeliveryMergeStrategyHint, GitDeliveryAbortableOperation, GitDeliveryRecoveryStrategyHint, GitDeliveryProviderCapability, GitDeliveryBranchMatchKind, GitDeliveryBranchPattern, GitDeliveryBranchPatternConstraint, GitDeliveryProviderCapabilityConstraint, GitDeliveryRiskClassCeilingConstraint, GitDeliveryConstraint, GitDeliveryBlockReason, GitDeliveryMergeBlockReason, GitDeliveryExecutionOutcome, GitDeliveryExecutionErrorCode, GitDeliveryPartialDetail, GitDeliveryBranchCreateInputs, GitDeliveryStageInputs, GitDeliveryUnstageInputs, GitDeliveryCommitInputs, GitDeliveryPushInputs, GitDeliveryPrCreateInputs, GitDeliveryPrUpdateInputs, GitDeliveryMergeInputs, GitDeliveryAbortInputs, GitDeliveryRecoveryInputs, GitDeliveryResolvedInputs, GitDeliveryApprovalNotRequired, GitDeliveryApprovalGranted, GitDeliveryApprovalRequirement, GitDeliveryPolicyDecision, GitDeliveryActionPreview, GitDeliveryExecutionResult, GitDeliveryEvidenceRef, GitDeliveryActionEnvelopeFor, GitDeliveryActionEnvelope, GitDeliveryParseResult, } from "./git-delivery.js";
140
+ export { GIT_DELIVERY_SCHEMA_VERSION, GIT_DELIVERY_ACTION_KINDS, GIT_DELIVERY_RISK_CLASSES, GIT_DELIVERY_RISK_CLASS_SEVERITY, GIT_DELIVERY_ACTION_RISK_DEFAULTS, GIT_DELIVERY_MERGE_STRATEGY_HINTS, GIT_DELIVERY_ABORTABLE_OPERATIONS, GIT_DELIVERY_RECOVERY_STRATEGY_HINTS, GIT_DELIVERY_PROVIDER_CAPABILITIES, GIT_DELIVERY_BRANCH_MATCH_KINDS, GIT_DELIVERY_EXECUTION_OUTCOMES, GIT_DELIVERY_EXECUTION_ERROR_CODES, GIT_DELIVERY_BLOCK_REASONS, GIT_DELIVERY_MERGE_BLOCK_REASONS, isGitDeliveryActionKind, isGitDeliveryRiskClass, isGitDeliveryProviderCapability, isGitDeliveryBranchMatchKind, isGitDeliveryBranchPattern, isGitDeliveryConstraint, isGitDeliveryBlockReason, isGitDeliveryMergeBlockReason, isGitDeliveryMergeStrategyHint, isGitDeliveryAbortableOperation, isGitDeliveryRecoveryStrategyHint, isGitDeliveryExecutionOutcome, isGitDeliveryExecutionErrorCode, isGitDeliveryApprovalRequirement, isGitDeliveryPolicyDecision, isGitDeliveryEvidenceRef, isGitDeliveryExecutionResult, parseGitDeliveryResolvedInputs, parseGitDeliveryActionEnvelope, gitDeliveryDefaultRiskClass, gitDeliveryRiskClassForInputs, gitDeliveryRiskClassWithinCeiling, gitDeliveryBranchNameMatchesPattern, gitDeliveryBranchNameMatchesAny, } from "./git-delivery.js";
141
+ export type { GitDeliveryRuleDecision, GitDeliveryPolicyRule, GitDeliveryDefaultRule, GitDeliveryRepoPolicyPack, GitDeliveryOrgPolicyPack, GitDeliveryPolicyContext, } from "./git-delivery-policy.js";
142
+ export { GIT_DELIVERY_POLICY_SCHEMA_VERSION, GIT_DELIVERY_RULE_DECISIONS, isGitDeliveryPolicyRule, evaluateGitPolicy, parseGitPolicyPack, parseGitRepoPolicyPack, parseGitOrgPolicyPack, } from "./git-delivery-policy.js";
143
+ export type { GitDeliveryChecksOverallStatus, GitDeliveryPullRequestStatus, GitDeliveryBranchProtection, GitDeliveryChecksState, GitDeliveryMergeReadiness, GitDeliveryPullRequestState, GitDeliveryRemoteTargetPolicy, GitDeliveryProviderDescriptor, } from "./git-delivery-provider.js";
144
+ export { GIT_DELIVERY_PROVIDER_SCHEMA_VERSION, GIT_DELIVERY_CHECKS_OVERALL_STATUSES, GIT_DELIVERY_PULL_REQUEST_STATUSES, isGitDeliveryChecksOverallStatus, isGitDeliveryPullRequestStatus, isGitDeliveryBranchProtection, isGitDeliveryChecksState, isGitDeliveryMergeReadiness, isGitDeliveryPullRequestState, isGitDeliveryProviderDescriptor, isGitDeliveryRemoteTargetPolicy, } from "./git-delivery-provider.js";
145
+ export type { GitDeliveryActionSheetState, GitDeliveryApprovalNecessity, GitDeliveryBlockedCause, GitDeliveryBlockerSource, GitDeliveryBlockerSeverity, GitDeliveryRemediationClass, GitDeliveryExpectedBlocker, GitDeliveryRecoveryActionHint, GitDeliveryRecoveryHint, GitDeliveryApprovalSummary, GitDeliveryPolicyExplanation, GitDeliveryPreviewManifest, GitDeliveryBlockedDetail, GitDeliveryActionSheet, GitDeliveryActionSheetInput, GitDeliveryPreviewManifestInput, GitDeliveryActionSheetStateInput, GitDeliveryWorktreeSnapshot, GitDeliveryActionSheetProviderState, GitDeliveryActionSheetRequest, } from "./git-delivery-action-sheet.js";
146
+ export { GIT_DELIVERY_ACTION_SHEET_SCHEMA_VERSION, GIT_DELIVERY_ACTION_SHEET_STATES, GIT_DELIVERY_APPROVAL_NECESSITIES, GIT_DELIVERY_BLOCKED_CAUSES, GIT_DELIVERY_BLOCKER_SOURCES, GIT_DELIVERY_BLOCKER_SEVERITIES, GIT_DELIVERY_REMEDIATION_CLASSES, GIT_DELIVERY_RECOVERY_ACTION_HINTS, GIT_DELIVERY_POLICY_DECISION_OUTCOMES, isGitDeliveryPolicyDecisionOutcome, isGitDeliveryActionSheetState, isGitDeliveryApprovalNecessity, isGitDeliveryBlockedCause, isGitDeliveryBlockerSource, isGitDeliveryBlockerSeverity, isGitDeliveryRemediationClass, isGitDeliveryRecoveryActionHint, isGitDeliveryExpectedBlocker, isGitDeliveryRecoveryHint, isGitDeliveryApprovalSummary, isGitDeliveryPolicyExplanation, isGitDeliveryPreviewManifest, isGitDeliveryBlockedDetail, isGitDeliveryActionSheet, parseGitDeliveryActionSheet, buildGitDeliveryPreviewManifest, gitDeliveryApprovalNecessityForDecision, gitDeliveryActionSheetStateFor, gitDeliveryBlockedCauseFor, gitDeliverySuggestedRecoveryStrategy, buildGitDeliveryActionSheet, } from "./git-delivery-action-sheet.js";
147
+ export type { GitDeliveryEvidenceOutcomeClass, GitDeliveryRecoveryDisposition, GitDeliveryEvidenceLifecyclePhase, GitDeliveryRecoveryMetadata, GitDeliveryEvidenceCorrelation, GitDeliveryEvidenceApproval, GitDeliveryEvidencePreviewSummary, GitDeliveryEvidenceExecution, GitDeliveryEvidenceRepoContext, GitDeliveryEvidenceRecord, GitDeliveryAuditPacket, } from "./git-delivery-evidence.js";
148
+ export { GIT_DELIVERY_EVIDENCE_SCHEMA_VERSION, GIT_DELIVERY_EVIDENCE_OUTCOME_CLASSES, GIT_DELIVERY_RECOVERY_DISPOSITIONS, GIT_DELIVERY_EVIDENCE_LIFECYCLE_PHASES, isGitDeliveryEvidenceOutcomeClass, isGitDeliveryRecoveryDisposition, isGitDeliveryEvidenceLifecyclePhase, isGitDeliveryRecoveryMetadata, isGitDeliveryEvidenceRecord, isGitDeliveryAuditPacket, gitDeliveryRecoveryDispositionForExecutionError, gitDeliveryRecoveryDispositionForBlockReason, buildGitDeliveryAuditPacket, GIT_DELIVERY_AUDIT_PACKET_KNOWN_LIMITATIONS, } from "./git-delivery-evidence.js";
149
+ export type { GitCommitConventionalCommitRule, GitCommitIssueKeyRule, GitCommitMessagePolicy, GitCommitMessageViolationCode, GitCommitMessageValidation, } from "./git-commit-policy.js";
150
+ export { GIT_COMMIT_POLICY_SCHEMA_VERSION, GIT_COMMIT_MESSAGE_VIOLATION_CODES, KEIKO_DEFAULT_COMMIT_MESSAGE_POLICY, validateGitCommitMessage, isGitCommitMessageViolationCode, isGitCommitMessagePolicy, isGitCommitMessageValidation, } from "./git-commit-policy.js";
151
+ export type { GitCommitChangeSummary, GitCommitQualityWarningCode, GitCommitIntentAnalysis, GitCommitIntentInput, } from "./git-commit-intent.js";
152
+ export { GIT_COMMIT_INTENT_SCHEMA_VERSION, DEFAULT_LARGE_CHANGE_THRESHOLD, GIT_COMMIT_QUALITY_WARNING_CODES, analyzeGitCommitIntent, isGitCommitQualityWarningCode, isGitCommitChangeSummary, isGitCommitIntentAnalysis, } from "./git-commit-intent.js";
153
+ export type { GitPrChangeType, GitPrPolicyOutcome, GitPullRequestChangeNarrative, GitPullRequestRiskDigest, GitPrSummarySection, GitPrRiskSection, GitPrChangeNarrativeSection, GitPullRequestMetadataDraft, GitPullRequestReadinessBlockerCode, GitPrBlockerSeverity, GitPrRemediationClass, GitPullRequestReadinessBlocker, GitPullRequestReadinessSummary, GitPullRequestReadinessInput, GitPullRequestRecommendation, GitPrReviewerSuggestionBasis, GitPrLabelSuggestionBasis, GitPrLinkageSuggestionBasis, GitPullRequestReviewerSuggestion, GitPullRequestLabelSuggestion, GitPullRequestLinkageSuggestion, GitPullRequestRejectionReason, } from "./git-pull-request.js";
154
+ export { GIT_PULL_REQUEST_SCHEMA_VERSION, GIT_PR_CHANGE_TYPES, GIT_PR_POLICY_OUTCOMES, GIT_PR_READINESS_BLOCKER_CODES, GIT_PR_RECOMMENDATIONS, GIT_PR_REJECTION_REASONS, GIT_PR_REJECTION_ERROR_CODE, GIT_PR_REJECTION_DISPOSITION, gitPrRejectionToErrorCode, gitPrRejectionToDisposition, synthesizePullRequestMetadata, gitPullRequestReadinessFor, gitPullRequestRecommendationFor, gitPullRequestReviewerSuggestionsFor, gitPullRequestLabelSuggestionsFor, gitPullRequestLinkageSuggestionsFor, isGitPrChangeType, isGitPrPolicyOutcome, isGitPullRequestReadinessBlockerCode, isGitPullRequestRecommendation, isGitPullRequestRejectionReason, isGitPullRequestReadinessBlocker, isGitPullRequestReadinessSummary, isGitPullRequestChangeNarrative, isGitPullRequestMetadataDraft, parseGitPullRequestReadinessSummary, } from "./git-pull-request.js";
155
+ export type { GitMergeLifecycleBlockerCode, GitMergeReadinessBlockerCode, GitMergeBlockerSeverity, GitMergeRemediationClass, GitMergeReadinessBlocker, GitMergeReadinessSummary, GitMergeStrategyPolicy, GitMergeStrategyEligibility, GitMergeRecommendation, GitMergeApprovalContext, GitMergeRejectionReason, GitMergeRejection, GitMergeReadinessInput, } from "./git-merge.js";
156
+ export { GIT_MERGE_SCHEMA_VERSION, GIT_MERGE_LIFECYCLE_BLOCKER_CODES, GIT_MERGE_READINESS_BLOCKER_CODES, GIT_MERGE_RECOMMENDATIONS, GIT_MERGE_REJECTION_REASONS, GIT_MERGE_REJECTION_ERROR_CODE, GIT_MERGE_REJECTION_DISPOSITION, gitMergeBlockerRemediationFor, gitMergeBlockerActionHintFor, deriveEligibleMergeStrategies, gitMergeRecommendationFor, gitMergeRejectionToErrorCode, gitMergeRejectionToDisposition, gitMergeRejectionFor, gitMergeReadinessFor, gitMergeReadinessBlockerIsPrerequisite, isGitMergeReadinessBlockerCode, isGitMergeRecommendation, isGitMergeRejectionReason, isGitMergeReadinessBlocker, isGitMergeReadinessSummary, parseGitMergeReadinessSummary, } from "./git-merge.js";
157
+ export type { DiscussionMode, ConfidenceLevel, DisagreementFacet, DiscussionDirective, DiscussionModePlan, DiscussionTurnStatus, DiscussionTurnContext, DiscussionTurnSummary, DiscussionValidationResult, } from "./discussion-intelligence.js";
158
+ export { DISCUSSION_INTELLIGENCE_SCHEMA_VERSION, DISCUSSION_MODES, DISCUSSION_CONFIDENCE_LEVELS, DISAGREEMENT_FACETS, DISCUSSION_DIRECTIVES, DISCUSSION_DIRECTIVE_TEMPLATES, DISCUSSION_DIRECTIVE_FACETS, DISCUSSION_MODE_PLANS, DISCUSSION_TURN_STATUSES, DISCUSSION_TURN_STATUS_TRANSITIONS, isDiscussionIntelligenceSchemaVersionSupported, isDiscussionMode, assertNeverDiscussionMode, confidenceLevelFromScore, assertNeverDiscussionDirective, discussionModePlan, discussionDirectivesCoverFacets, voiceCanDriveDiscussion, isDiscussionTurnStatus, canTransitionDiscussionTurnStatus, assertNeverDiscussionTurnStatus, discussionTopicIdReasons, isValidDiscussionTopicId, beginDiscussionTurn, applyDiscussionInterruption, applyDiscussionRecovery, resolveDiscussionTurn, summarizeDiscussionTurn, validateDiscussionTurnContext, validateDiscussionModePlan, } from "./discussion-intelligence.js";
159
+ export type { SpokenActionEffectClass, SpokenActionEffectMarkers, SpokenActionState, SpokenActionOutcome, SpokenActionConfirmationInput, SpokenActionProposal, SpokenActionAuditInput, SpokenActionAuditRecord, SpokenActionValidationResult, } from "./voice-action-intent.js";
160
+ export { VOICE_ACTION_INTENT_SCHEMA_VERSION, SPOKEN_ACTION_EFFECT_CLASSES, SPOKEN_ACTION_EFFECT_REQUIRES_CONFIRMATION, SPOKEN_ACTION_EFFECT_MARKERS, SPOKEN_ACTION_STATES, SPOKEN_ACTION_TERMINAL_STATES, SPOKEN_ACTION_STATE_TRANSITIONS, SPOKEN_ACTION_OUTCOMES, isVoiceActionIntentSchemaVersionSupported, isSpokenActionEffectClass, assertNeverSpokenActionEffectClass, spokenActionRequiresConfirmation, classifySpokenActionEffect, isSpokenActionState, canTransitionSpokenAction, isTerminalSpokenActionState, assertNeverSpokenActionState, voiceCanProposeAction, isSpokenActionOutcome, canonicalizeSpokenActionConfirmation, normalizeSpokenActionProposal, buildSpokenActionAuditRecord, validateSpokenActionProposal, validateSpokenActionAuditRecord, } from "./voice-action-intent.js";
161
+ export type { TaskWorkspaceValidationOk, TaskWorkspaceValidationFail, TaskWorkspaceValidation, TaskWorkspaceTransitionValidation, TaskWorkspaceLifecycleState, TaskWorkspaceTransitionPrecondition, TaskWorkspaceTransitionContext, TaskWorkspaceTransitionInput, TaskWorkspaceHealth, TaskWorkspaceDriftMarker, WorkspaceLockReason, WorkspaceLock, WorkspaceFailureClass, WorkspaceRecoveryStrategy, WorkspaceRecoveryHint, WorkspaceSurface, WorkspaceEventType, WorkspaceEvent, WorkspaceInstance, WorkspaceBinding, WorkspaceActivation, WorkspaceOperationAuthority, WorkspaceOperationName, WorkspaceOperation, TaskWorkspaceDelegatedConcern, TaskWorkspaceDelegatedSubsystem, WorkspaceReconciliationStatus, WorkspaceReconciliationFacts, WorkspaceReconciliationOutcome, WorkspaceReconciliationEntry, WorkspaceActiveRestorationKind, WorkspaceActiveRestoration, WorkspaceReconciliationReport, WorkspaceHealthClassification, WorkspaceCleanupRefusalReason, WorkspaceCleanupSafetyFacts, WorkspaceCleanupDecision, WorkspaceHealthSignals, WorkspaceHealthEvaluation, WorkspaceHealthEntryKind, WorkspaceHealthEntry, WorkspaceHealthReport, } from "./task-workspace.js";
162
+ export { TASK_WORKSPACE_SCHEMA_VERSION, TASK_WORKSPACE_LIFECYCLE_STATES, TASK_WORKSPACE_LEGAL_TRANSITIONS, TASK_WORKSPACE_TRANSITION_PRECONDITIONS, TASK_WORKSPACE_HEALTH_STATES, TASK_WORKSPACE_DRIFT_MARKERS, WORKSPACE_LOCK_REASONS, WORKSPACE_FAILURE_CLASSES, WORKSPACE_RECOVERY_STRATEGIES, TASK_WORKSPACE_SURFACES, WORKSPACE_EVENT_TYPES, WORKSPACE_EVENT_ALLOWED_KEYS, WORKSPACE_INSTANCE_ALLOWED_KEYS, WORKSPACE_BINDING_ALLOWED_KEYS, WORKSPACE_ACTIVATION_ALLOWED_KEYS, TASK_WORKSPACE_OPERATIONS, TASK_WORKSPACE_DELEGATED_SUBSYSTEMS, isTaskWorkspaceLifecycleState, isLegalTaskWorkspaceTransition, nextLegalTaskWorkspaceStates, isTaskWorkspaceTransitionPrecondition, requiredTaskWorkspaceTransitionPreconditions, validateTaskWorkspaceTransition, isTaskWorkspaceHealth, isTaskWorkspaceDriftMarker, isWorkspaceLockReason, isWorkspaceFailureClass, isWorkspaceRecoveryStrategy, isWorkspaceSurface, isWorkspaceEventType, validateWorkspaceEvent, validateWorkspaceInstance, validateWorkspaceBinding, validateWorkspaceActivation, taskWorkspaceOperation, isReadOnlyTaskWorkspaceOperation, isMutatingTaskWorkspaceOperation, isDelegatedTaskWorkspaceConcern, taskWorkspaceDelegatedOwner, WORKSPACE_RECONCILIATION_STATUSES, WORKSPACE_RECONCILIATION_ENTRY_ALLOWED_KEYS, WORKSPACE_RECONCILIATION_REPORT_ALLOWED_KEYS, WORKSPACE_ACTIVE_RESTORATION_KINDS, isWorkspaceReconciliationStatus, isWorkspaceActiveRestorationKind, classifyWorkspaceReconciliation, planWorkspaceRecoveryHints, reconciliationHealth, reconciliationRequiresRecoveryFlag, reconciliationStatusFromInstance, isAutomaticWorkspaceRepairStrategy, isWorkspaceRepairStrategyApplicable, workspaceEntryRepairable, workspaceEntryOperatorActionRequired, deriveReconciliationEntry, resolveActiveRestoration, validateWorkspaceReconciliationEntry, validateWorkspaceActiveRestoration, validateWorkspaceReconciliationReport, WORKSPACE_HEALTH_CLASSIFICATIONS, WORKSPACE_CLEANUP_ELIGIBLE_LIFECYCLE_STATES, WORKSPACE_CLEANUP_REFUSAL_REASONS, WORKSPACE_HEALTH_ENTRY_KINDS, WORKSPACE_HEALTH_ENTRY_ALLOWED_KEYS, WORKSPACE_HEALTH_REPORT_ALLOWED_KEYS, isWorkspaceHealthClassification, isCleanupEligibleLifecycleState, isWorkspaceCleanupRefusalReason, isWorkspaceHealthEntryKind, evaluateWorkspaceCleanupSafety, classifyWorkspaceHealth, deriveWorkspaceHealthEntry, deriveOrphanWorktreeHealthEntry, validateWorkspaceHealthEntry, validateWorkspaceHealthReport, } from "./task-workspace.js";
109
163
  //# sourceMappingURL=index.d.ts.map