@oscharko-dev/keiko-contracts 0.2.8 → 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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/bff-wire.d.ts +33 -0
- package/dist/bff-wire.d.ts.map +1 -1
- package/dist/command-runner.d.ts +81 -0
- package/dist/command-runner.d.ts.map +1 -0
- package/dist/command-runner.js +209 -0
- package/dist/container-runtime.d.ts +125 -0
- package/dist/container-runtime.d.ts.map +1 -0
- package/dist/container-runtime.js +287 -0
- package/dist/context-engineering.js +2 -2
- package/dist/discussion-intelligence.d.ts +70 -0
- package/dist/discussion-intelligence.d.ts.map +1 -0
- package/dist/discussion-intelligence.js +440 -0
- package/dist/editor-agent-governance.d.ts +65 -0
- package/dist/editor-agent-governance.d.ts.map +1 -0
- package/dist/editor-agent-governance.js +180 -0
- package/dist/editor-agent.d.ts +29 -1
- package/dist/editor-agent.d.ts.map +1 -1
- package/dist/editor-agent.js +183 -6
- package/dist/editor-builtin-capabilities.d.ts +13 -0
- package/dist/editor-builtin-capabilities.d.ts.map +1 -0
- package/dist/editor-builtin-capabilities.js +135 -0
- package/dist/editor-language-mode-map.d.ts +11 -0
- package/dist/editor-language-mode-map.d.ts.map +1 -0
- package/dist/editor-language-mode-map.js +89 -0
- package/dist/editor-layout.d.ts +37 -0
- package/dist/editor-layout.d.ts.map +1 -1
- package/dist/editor-layout.js +125 -8
- package/dist/editor-workspace-path.d.ts +20 -0
- package/dist/editor-workspace-path.d.ts.map +1 -0
- package/dist/editor-workspace-path.js +133 -0
- package/dist/evidence.d.ts +3 -1
- package/dist/evidence.d.ts.map +1 -1
- package/dist/gateway.d.ts +72 -3
- package/dist/gateway.d.ts.map +1 -1
- package/dist/gateway.js +73 -3
- package/dist/git-commit-intent.d.ts +28 -0
- package/dist/git-commit-intent.d.ts.map +1 -0
- package/dist/git-commit-intent.js +155 -0
- package/dist/git-commit-policy.d.ts +29 -0
- package/dist/git-commit-policy.d.ts.map +1 -0
- package/dist/git-commit-policy.js +173 -0
- package/dist/git-delivery-action-sheet.d.ts +157 -0
- package/dist/git-delivery-action-sheet.d.ts.map +1 -0
- package/dist/git-delivery-action-sheet.js +430 -0
- package/dist/git-delivery-evidence.d.ts +92 -0
- package/dist/git-delivery-evidence.d.ts.map +1 -0
- package/dist/git-delivery-evidence.js +272 -0
- package/dist/git-delivery-policy.d.ts +40 -0
- package/dist/git-delivery-policy.d.ts.map +1 -0
- package/dist/git-delivery-policy.js +183 -0
- package/dist/git-delivery-provider.d.ts +53 -0
- package/dist/git-delivery-provider.d.ts.map +1 -0
- package/dist/git-delivery-provider.js +96 -0
- package/dist/git-delivery.d.ts +202 -0
- package/dist/git-delivery.d.ts.map +1 -0
- package/dist/git-delivery.js +410 -0
- package/dist/git-history.d.ts +27 -0
- package/dist/git-history.d.ts.map +1 -0
- package/dist/git-history.js +73 -0
- package/dist/git-merge.d.ts +67 -0
- package/dist/git-merge.d.ts.map +1 -0
- package/dist/git-merge.js +323 -0
- package/dist/git-pull-request.d.ts +112 -0
- package/dist/git-pull-request.d.ts.map +1 -0
- package/dist/git-pull-request.js +351 -0
- package/dist/git-repository-agent.d.ts +46 -0
- package/dist/git-repository-agent.d.ts.map +1 -0
- package/dist/git-repository-agent.js +198 -0
- package/dist/git-repository-summary.d.ts +54 -0
- package/dist/git-repository-summary.d.ts.map +1 -0
- package/dist/git-repository-summary.js +105 -0
- package/dist/git-repository.d.ts +60 -0
- package/dist/git-repository.d.ts.map +1 -0
- package/dist/git-repository.js +106 -0
- package/dist/git-sync.d.ts +49 -0
- package/dist/git-sync.d.ts.map +1 -0
- package/dist/git-sync.js +110 -0
- package/dist/index.d.ts +63 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -6
- package/dist/lsp-process.d.ts +38 -0
- package/dist/lsp-process.d.ts.map +1 -0
- package/dist/lsp-process.js +103 -0
- package/dist/runtime-capabilities.d.ts +44 -0
- package/dist/runtime-capabilities.d.ts.map +1 -0
- package/dist/runtime-capabilities.js +141 -0
- package/dist/task-workspace.d.ts +302 -0
- package/dist/task-workspace.d.ts.map +1 -0
- package/dist/task-workspace.js +1236 -0
- package/dist/voice-action-intent.d.ts +86 -0
- package/dist/voice-action-intent.d.ts.map +1 -0
- package/dist/voice-action-intent.js +387 -0
- package/dist/voice-playback.d.ts +50 -0
- package/dist/voice-playback.d.ts.map +1 -0
- package/dist/voice-playback.js +240 -0
- package/dist/voice-protocol.d.ts +165 -0
- package/dist/voice-protocol.d.ts.map +1 -0
- package/dist/voice-protocol.js +312 -0
- package/dist/voice-transcript.d.ts +57 -0
- package/dist/voice-transcript.d.ts.map +1 -0
- package/dist/voice-transcript.js +221 -0
- package/package.json +5 -1
- package/dist/conversation-budget.d.ts +0 -37
- package/dist/conversation-budget.d.ts.map +0 -1
- package/dist/conversation-budget.js +0 -97
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export declare const GIT_COMMIT_POLICY_SCHEMA_VERSION: "1";
|
|
2
|
+
export interface GitCommitConventionalCommitRule {
|
|
3
|
+
readonly enabled: boolean;
|
|
4
|
+
readonly allowedTypes: readonly string[];
|
|
5
|
+
}
|
|
6
|
+
export interface GitCommitIssueKeyRule {
|
|
7
|
+
readonly enabled: boolean;
|
|
8
|
+
readonly pattern: string;
|
|
9
|
+
}
|
|
10
|
+
export interface GitCommitMessagePolicy {
|
|
11
|
+
readonly conventionalCommit: GitCommitConventionalCommitRule;
|
|
12
|
+
readonly requireIssueKey: GitCommitIssueKeyRule;
|
|
13
|
+
readonly requireSignoff: boolean;
|
|
14
|
+
readonly subjectMaxLength: number;
|
|
15
|
+
}
|
|
16
|
+
export type GitCommitMessageViolationCode = "empty-subject" | "missing-conventional-prefix" | "disallowed-type" | "subject-too-long" | "missing-issue-key" | "missing-signoff";
|
|
17
|
+
export declare const GIT_COMMIT_MESSAGE_VIOLATION_CODES: readonly GitCommitMessageViolationCode[];
|
|
18
|
+
export type GitCommitMessageValidation = {
|
|
19
|
+
readonly ok: true;
|
|
20
|
+
} | {
|
|
21
|
+
readonly ok: false;
|
|
22
|
+
readonly violations: readonly GitCommitMessageViolationCode[];
|
|
23
|
+
};
|
|
24
|
+
export declare const KEIKO_DEFAULT_COMMIT_MESSAGE_POLICY: GitCommitMessagePolicy;
|
|
25
|
+
export declare function validateGitCommitMessage(message: string, policy: GitCommitMessagePolicy): GitCommitMessageValidation;
|
|
26
|
+
export declare const isGitCommitMessageViolationCode: (v: unknown) => v is GitCommitMessageViolationCode;
|
|
27
|
+
export declare function isGitCommitMessagePolicy(value: unknown): value is GitCommitMessagePolicy;
|
|
28
|
+
export declare function isGitCommitMessageValidation(value: unknown): value is GitCommitMessageValidation;
|
|
29
|
+
//# sourceMappingURL=git-commit-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-commit-policy.d.ts","sourceRoot":"","sources":["../src/git-commit-policy.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,gCAAgC,EAAG,GAAY,CAAC;AAI7D,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,qBAAqB;IAEpC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,kBAAkB,EAAE,+BAA+B,CAAC;IAC7D,QAAQ,CAAC,eAAe,EAAE,qBAAqB,CAAC;IAEhD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAID,MAAM,MAAM,6BAA6B,GACrC,eAAe,GACf,6BAA6B,GAC7B,iBAAiB,GACjB,kBAAkB,GAClB,mBAAmB,GACnB,iBAAiB,CAAC;AAEtB,eAAO,MAAM,kCAAkC,EAAE,SAAS,6BAA6B,EAO7E,CAAC;AAIX,MAAM,MAAM,0BAA0B,GAClC;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAA;CAAE,GACrB;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,6BAA6B,EAAE,CAAA;CAAE,CAAC;AAI1F,eAAO,MAAM,mCAAmC,EAAE,sBAoBjD,CAAC;AA2HF,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,sBAAsB,GAC7B,0BAA0B,CAkB5B;AAID,eAAO,MAAM,+BAA+B,MA5He,OAAO,KAAK,CAAC,iCA4HkB,CAAC;AAU3F,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,sBAAsB,CAQxF;AAMD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,0BAA0B,CAQhG"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
// Governed commit-MESSAGE policy contracts (Issue #475, Epic #470). Ownership: the deterministic,
|
|
2
|
+
// content-free validation of a commit message draft against a server-resolved message policy
|
|
3
|
+
// (conventional-commit shape, an optional issue-key requirement, an optional DCO sign-off trailer,
|
|
4
|
+
// and a subject-length ceiling). The validator takes message content IN and returns typed violation
|
|
5
|
+
// CODES OUT only — it never stores, echoes, or returns any fragment of the message, so the result is
|
|
6
|
+
// content-free by construction (a violation code is a closed-vocabulary token, not message text).
|
|
7
|
+
//
|
|
8
|
+
// Disjoint from git-delivery.ts (the action model + risk + lifecycle envelope), git-commit-intent.ts
|
|
9
|
+
// (the deterministic commit-intent heuristics over a content-free change summary), and the server
|
|
10
|
+
// gate that consumes this validator. The POLICY is resolved server-side from trusted configuration
|
|
11
|
+
// and is never client-asserted; this leaf only defines its shape and the pure validation function.
|
|
12
|
+
//
|
|
13
|
+
// Leaf-package rules (ADR-0019, ADR-0062): pure types, frozen const tables, and pure functions only.
|
|
14
|
+
// No IO, no clock, no crypto, no randomness. Relative imports end in ".js". The issue-key rule is a
|
|
15
|
+
// CONFIG string compiled inside the validator via `new RegExp`; it is guarded against an empty
|
|
16
|
+
// pattern (which disables the rule) and the patterns shipped in the default policy are linear (no
|
|
17
|
+
// nested quantifiers), avoiding catastrophic backtracking (the CodeQL ReDoS gate).
|
|
18
|
+
// Pinned schema version. A breaking change adds a NEW literal member; this one is never mutated.
|
|
19
|
+
export const GIT_COMMIT_POLICY_SCHEMA_VERSION = "1";
|
|
20
|
+
export const GIT_COMMIT_MESSAGE_VIOLATION_CODES = [
|
|
21
|
+
"empty-subject",
|
|
22
|
+
"missing-conventional-prefix",
|
|
23
|
+
"disallowed-type",
|
|
24
|
+
"subject-too-long",
|
|
25
|
+
"missing-issue-key",
|
|
26
|
+
"missing-signoff",
|
|
27
|
+
];
|
|
28
|
+
// ─── Default policy (matches this repository's own commit style) ──────────────────────────────────
|
|
29
|
+
export const KEIKO_DEFAULT_COMMIT_MESSAGE_POLICY = {
|
|
30
|
+
conventionalCommit: {
|
|
31
|
+
enabled: true,
|
|
32
|
+
allowedTypes: [
|
|
33
|
+
"feat",
|
|
34
|
+
"fix",
|
|
35
|
+
"chore",
|
|
36
|
+
"docs",
|
|
37
|
+
"refactor",
|
|
38
|
+
"test",
|
|
39
|
+
"build",
|
|
40
|
+
"ci",
|
|
41
|
+
"perf",
|
|
42
|
+
"style",
|
|
43
|
+
"revert",
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
requireIssueKey: { enabled: false, pattern: "" },
|
|
47
|
+
requireSignoff: false,
|
|
48
|
+
subjectMaxLength: 72,
|
|
49
|
+
};
|
|
50
|
+
// ─── Private predicate helpers ────────────────────────────────────────────────────────────────────
|
|
51
|
+
function isString(value) {
|
|
52
|
+
return typeof value === "string";
|
|
53
|
+
}
|
|
54
|
+
function isBoolean(value) {
|
|
55
|
+
return typeof value === "boolean";
|
|
56
|
+
}
|
|
57
|
+
function isNonNegativeInteger(value) {
|
|
58
|
+
return typeof value === "number" && Number.isInteger(value) && value >= 0;
|
|
59
|
+
}
|
|
60
|
+
function isRecord(value) {
|
|
61
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
62
|
+
}
|
|
63
|
+
function isStringArray(value) {
|
|
64
|
+
return Array.isArray(value) && value.every(isString);
|
|
65
|
+
}
|
|
66
|
+
function isInSet(set) {
|
|
67
|
+
return (v) => isString(v) && set.includes(v);
|
|
68
|
+
}
|
|
69
|
+
// ─── Conventional-commit parse (linear, ReDoS-safe) ───────────────────────────────────────────────
|
|
70
|
+
// `type(scope)?!?: subject`. The scope body excludes parentheses and the subject is a single bounded
|
|
71
|
+
// `.+`; neither sub-pattern nests an unbounded quantifier inside another, so matching is linear.
|
|
72
|
+
const CONVENTIONAL_SUBJECT_RE = /^([a-zA-Z]+)(\([^()]*\))?(!)?: (.+)$/;
|
|
73
|
+
function parseConventionalSubject(subject) {
|
|
74
|
+
const match = CONVENTIONAL_SUBJECT_RE.exec(subject);
|
|
75
|
+
if (match === null) {
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
const type = match[1];
|
|
79
|
+
if (type === undefined) {
|
|
80
|
+
return undefined;
|
|
81
|
+
}
|
|
82
|
+
return { type, hasPrefix: true };
|
|
83
|
+
}
|
|
84
|
+
const SIGNOFF_RE = /^Signed-off-by: .+$/m;
|
|
85
|
+
function parseMessageStructure(message) {
|
|
86
|
+
const newlineIndex = message.indexOf("\n");
|
|
87
|
+
const subject = newlineIndex === -1 ? message : message.slice(0, newlineIndex);
|
|
88
|
+
return { subject: subject.trim(), hasSignoff: SIGNOFF_RE.test(message) };
|
|
89
|
+
}
|
|
90
|
+
// ─── Per-rule checks (each returns at most one violation code) ────────────────────────────────────
|
|
91
|
+
function checkConventional(subject, rule) {
|
|
92
|
+
if (!rule.enabled) {
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
95
|
+
const parsed = parseConventionalSubject(subject);
|
|
96
|
+
if (parsed === undefined) {
|
|
97
|
+
return "missing-conventional-prefix";
|
|
98
|
+
}
|
|
99
|
+
if (!rule.allowedTypes.includes(parsed.type)) {
|
|
100
|
+
return "disallowed-type";
|
|
101
|
+
}
|
|
102
|
+
return undefined;
|
|
103
|
+
}
|
|
104
|
+
function checkSubjectLength(subject, maxLength) {
|
|
105
|
+
return subject.length > maxLength ? "subject-too-long" : undefined;
|
|
106
|
+
}
|
|
107
|
+
function checkIssueKey(message, rule) {
|
|
108
|
+
if (!rule.enabled || rule.pattern.length === 0) {
|
|
109
|
+
return undefined;
|
|
110
|
+
}
|
|
111
|
+
let re;
|
|
112
|
+
try {
|
|
113
|
+
re = new RegExp(rule.pattern);
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
// The rule is enabled but its pattern is not a valid regex (operator misconfiguration). Keep the
|
|
117
|
+
// validator total (a pure function must never throw on a well-typed input) AND fail closed: a key
|
|
118
|
+
// requirement that cannot be evaluated must block rather than silently pass.
|
|
119
|
+
return "missing-issue-key";
|
|
120
|
+
}
|
|
121
|
+
return re.test(message) ? undefined : "missing-issue-key";
|
|
122
|
+
}
|
|
123
|
+
function checkSignoff(hasSignoff, required) {
|
|
124
|
+
if (!required) {
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
return hasSignoff ? undefined : "missing-signoff";
|
|
128
|
+
}
|
|
129
|
+
// ─── Validator (PURE; content in, codes out) ──────────────────────────────────────────────────────
|
|
130
|
+
export function validateGitCommitMessage(message, policy) {
|
|
131
|
+
const { subject, hasSignoff } = parseMessageStructure(message);
|
|
132
|
+
if (subject.length === 0) {
|
|
133
|
+
return { ok: false, violations: ["empty-subject"] };
|
|
134
|
+
}
|
|
135
|
+
const candidates = [
|
|
136
|
+
checkConventional(subject, policy.conventionalCommit),
|
|
137
|
+
checkSubjectLength(subject, policy.subjectMaxLength),
|
|
138
|
+
checkIssueKey(message, policy.requireIssueKey),
|
|
139
|
+
checkSignoff(hasSignoff, policy.requireSignoff),
|
|
140
|
+
];
|
|
141
|
+
const violations = candidates.filter((code) => code !== undefined);
|
|
142
|
+
if (violations.length === 0) {
|
|
143
|
+
return { ok: true };
|
|
144
|
+
}
|
|
145
|
+
return { ok: false, violations };
|
|
146
|
+
}
|
|
147
|
+
// ─── Exported guards ────────────────────────────────────────────────────────────────────────────
|
|
148
|
+
export const isGitCommitMessageViolationCode = isInSet(GIT_COMMIT_MESSAGE_VIOLATION_CODES);
|
|
149
|
+
function isConventionalRule(value) {
|
|
150
|
+
return isRecord(value) && isBoolean(value.enabled) && isStringArray(value.allowedTypes);
|
|
151
|
+
}
|
|
152
|
+
function isIssueKeyRule(value) {
|
|
153
|
+
return isRecord(value) && isBoolean(value.enabled) && isString(value.pattern);
|
|
154
|
+
}
|
|
155
|
+
export function isGitCommitMessagePolicy(value) {
|
|
156
|
+
return (isRecord(value) &&
|
|
157
|
+
isConventionalRule(value.conventionalCommit) &&
|
|
158
|
+
isIssueKeyRule(value.requireIssueKey) &&
|
|
159
|
+
isBoolean(value.requireSignoff) &&
|
|
160
|
+
isNonNegativeInteger(value.subjectMaxLength));
|
|
161
|
+
}
|
|
162
|
+
function isViolationArray(value) {
|
|
163
|
+
return Array.isArray(value) && value.every(isGitCommitMessageViolationCode);
|
|
164
|
+
}
|
|
165
|
+
export function isGitCommitMessageValidation(value) {
|
|
166
|
+
if (!isRecord(value)) {
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
169
|
+
if (value.ok === true) {
|
|
170
|
+
return true;
|
|
171
|
+
}
|
|
172
|
+
return value.ok === false && isViolationArray(value.violations);
|
|
173
|
+
}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import type { GitDeliveryAbortableOperation, GitDeliveryActionKind, GitDeliveryActionPreview, GitDeliveryApprovalRequirement, GitDeliveryBlockReason, GitDeliveryConstraint, GitDeliveryParseResult, GitDeliveryPolicyDecision, GitDeliveryProviderCapability, GitDeliveryRecoveryStrategyHint, GitDeliveryResolvedInputs, GitDeliveryRiskClass } from "./git-delivery.js";
|
|
2
|
+
import type { GitDeliveryBranchProtection, GitDeliveryChecksState, GitDeliveryMergeReadiness, GitDeliveryPullRequestState } from "./git-delivery-provider.js";
|
|
3
|
+
export declare const GIT_DELIVERY_ACTION_SHEET_SCHEMA_VERSION: "1";
|
|
4
|
+
export type GitDeliveryActionSheetState = "ready-to-execute" | "waiting-for-approval" | "blocked";
|
|
5
|
+
export declare const GIT_DELIVERY_ACTION_SHEET_STATES: readonly GitDeliveryActionSheetState[];
|
|
6
|
+
export type GitDeliveryApprovalNecessity = "not-required" | "required" | "impossible";
|
|
7
|
+
export declare const GIT_DELIVERY_APPROVAL_NECESSITIES: readonly GitDeliveryApprovalNecessity[];
|
|
8
|
+
export type GitDeliveryBlockedCause = "policy" | "preflight" | "provider-not-ready";
|
|
9
|
+
export declare const GIT_DELIVERY_BLOCKED_CAUSES: readonly GitDeliveryBlockedCause[];
|
|
10
|
+
export type GitDeliveryBlockerSource = "preflight" | "policy" | "provider";
|
|
11
|
+
export declare const GIT_DELIVERY_BLOCKER_SOURCES: readonly GitDeliveryBlockerSource[];
|
|
12
|
+
export type GitDeliveryBlockerSeverity = "blocking" | "advisory";
|
|
13
|
+
export declare const GIT_DELIVERY_BLOCKER_SEVERITIES: readonly GitDeliveryBlockerSeverity[];
|
|
14
|
+
export type GitDeliveryRemediationClass = "user-actionable" | "internal";
|
|
15
|
+
export declare const GIT_DELIVERY_REMEDIATION_CLASSES: readonly GitDeliveryRemediationClass[];
|
|
16
|
+
export interface GitDeliveryExpectedBlocker {
|
|
17
|
+
readonly source: GitDeliveryBlockerSource;
|
|
18
|
+
readonly severity: GitDeliveryBlockerSeverity;
|
|
19
|
+
readonly remediation: GitDeliveryRemediationClass;
|
|
20
|
+
readonly reasonCode: string;
|
|
21
|
+
}
|
|
22
|
+
export type GitDeliveryRecoveryActionHint = "retry" | "stage-changes" | "configure-upstream" | "resolve-conflicts" | "abort-in-progress-operation" | "request-approval" | "adjust-policy-target" | "recover-via-strategy" | "wait-for-provider";
|
|
23
|
+
export declare const GIT_DELIVERY_RECOVERY_ACTION_HINTS: readonly GitDeliveryRecoveryActionHint[];
|
|
24
|
+
export interface GitDeliveryRecoveryHint {
|
|
25
|
+
readonly actionHint: GitDeliveryRecoveryActionHint;
|
|
26
|
+
readonly remediation: GitDeliveryRemediationClass;
|
|
27
|
+
readonly suggestedRecoveryStrategy?: GitDeliveryRecoveryStrategyHint | undefined;
|
|
28
|
+
}
|
|
29
|
+
export interface GitDeliveryApprovalSummary {
|
|
30
|
+
readonly necessity: GitDeliveryApprovalNecessity;
|
|
31
|
+
readonly satisfied: boolean;
|
|
32
|
+
readonly riskClass: GitDeliveryRiskClass;
|
|
33
|
+
readonly riskSeverity: number;
|
|
34
|
+
readonly requiredApprovers: readonly string[];
|
|
35
|
+
}
|
|
36
|
+
export interface GitDeliveryPolicyExplanation {
|
|
37
|
+
readonly decision: GitDeliveryPolicyDecision["outcome"];
|
|
38
|
+
readonly requiredApprovers: readonly string[];
|
|
39
|
+
readonly constraints: readonly GitDeliveryConstraint[];
|
|
40
|
+
readonly blockReason?: GitDeliveryBlockReason | undefined;
|
|
41
|
+
}
|
|
42
|
+
export interface GitDeliveryPreviewManifest {
|
|
43
|
+
readonly schemaVersion: typeof GIT_DELIVERY_ACTION_SHEET_SCHEMA_VERSION;
|
|
44
|
+
readonly actionKind: GitDeliveryActionKind;
|
|
45
|
+
readonly riskClass: GitDeliveryRiskClass;
|
|
46
|
+
readonly riskSeverity: number;
|
|
47
|
+
readonly affectedBranchName?: string | undefined;
|
|
48
|
+
readonly baseBranchName?: string | undefined;
|
|
49
|
+
readonly remoteBranchName?: string | undefined;
|
|
50
|
+
readonly estimatedFileCount?: number | undefined;
|
|
51
|
+
readonly estimatedBytesDelta?: number | undefined;
|
|
52
|
+
readonly touchesRemote: boolean;
|
|
53
|
+
readonly wouldCreateRemoteBranch: boolean;
|
|
54
|
+
readonly wouldForcePublish: boolean;
|
|
55
|
+
readonly wouldTriggerChecks: boolean;
|
|
56
|
+
readonly pullRequest?: GitDeliveryPullRequestState | undefined;
|
|
57
|
+
readonly mergeReadiness?: GitDeliveryMergeReadiness | undefined;
|
|
58
|
+
readonly branchProtection?: GitDeliveryBranchProtection | undefined;
|
|
59
|
+
readonly checks?: GitDeliveryChecksState | undefined;
|
|
60
|
+
readonly expectedBlockers: readonly GitDeliveryExpectedBlocker[];
|
|
61
|
+
}
|
|
62
|
+
export interface GitDeliveryBlockedDetail {
|
|
63
|
+
readonly cause: GitDeliveryBlockedCause;
|
|
64
|
+
readonly expectedBlockers: readonly GitDeliveryExpectedBlocker[];
|
|
65
|
+
}
|
|
66
|
+
export interface GitDeliveryActionSheet {
|
|
67
|
+
readonly schemaVersion: typeof GIT_DELIVERY_ACTION_SHEET_SCHEMA_VERSION;
|
|
68
|
+
readonly actionId: string;
|
|
69
|
+
readonly actionKind: GitDeliveryActionKind;
|
|
70
|
+
readonly state: GitDeliveryActionSheetState;
|
|
71
|
+
readonly preview: GitDeliveryPreviewManifest;
|
|
72
|
+
readonly approval: GitDeliveryApprovalSummary;
|
|
73
|
+
readonly policyExplanation: GitDeliveryPolicyExplanation;
|
|
74
|
+
readonly recovery: readonly GitDeliveryRecoveryHint[];
|
|
75
|
+
readonly blocked?: GitDeliveryBlockedDetail | undefined;
|
|
76
|
+
}
|
|
77
|
+
export interface GitDeliveryWorktreeSnapshot {
|
|
78
|
+
readonly headDetached: boolean;
|
|
79
|
+
readonly currentBranchName?: string | undefined;
|
|
80
|
+
readonly stagedFileCount: number;
|
|
81
|
+
readonly unstagedFileCount: number;
|
|
82
|
+
readonly untrackedFileCount: number;
|
|
83
|
+
readonly hasUpstream: boolean;
|
|
84
|
+
readonly aheadCount: number;
|
|
85
|
+
readonly behindCount: number;
|
|
86
|
+
readonly existingLocalBranchNames: readonly string[];
|
|
87
|
+
readonly remoteAliases: readonly string[];
|
|
88
|
+
readonly remoteReachable?: boolean | undefined;
|
|
89
|
+
readonly operationInProgress?: GitDeliveryAbortableOperation | undefined;
|
|
90
|
+
}
|
|
91
|
+
export interface GitDeliveryActionSheetProviderState {
|
|
92
|
+
readonly pullRequest?: GitDeliveryPullRequestState | undefined;
|
|
93
|
+
readonly mergeReadiness?: GitDeliveryMergeReadiness | undefined;
|
|
94
|
+
readonly branchProtection?: GitDeliveryBranchProtection | undefined;
|
|
95
|
+
readonly checks?: GitDeliveryChecksState | undefined;
|
|
96
|
+
}
|
|
97
|
+
export interface GitDeliveryActionSheetRequest {
|
|
98
|
+
readonly schemaVersion: typeof GIT_DELIVERY_ACTION_SHEET_SCHEMA_VERSION;
|
|
99
|
+
readonly resolvedInputs: GitDeliveryResolvedInputs;
|
|
100
|
+
readonly worktreeSnapshot: GitDeliveryWorktreeSnapshot;
|
|
101
|
+
readonly approval?: GitDeliveryApprovalRequirement | undefined;
|
|
102
|
+
readonly providerState?: GitDeliveryActionSheetProviderState | undefined;
|
|
103
|
+
readonly activeProviderCapabilities?: readonly GitDeliveryProviderCapability[] | undefined;
|
|
104
|
+
}
|
|
105
|
+
export interface GitDeliveryActionSheetInput {
|
|
106
|
+
readonly actionId: string;
|
|
107
|
+
readonly resolvedInputs: GitDeliveryResolvedInputs;
|
|
108
|
+
readonly policyDecision: GitDeliveryPolicyDecision;
|
|
109
|
+
readonly approvalRequirement: GitDeliveryApprovalRequirement;
|
|
110
|
+
readonly providerReady: boolean;
|
|
111
|
+
readonly expectedBlockers: readonly GitDeliveryExpectedBlocker[];
|
|
112
|
+
readonly recovery: readonly GitDeliveryRecoveryHint[];
|
|
113
|
+
readonly kernelPreview?: GitDeliveryActionPreview | undefined;
|
|
114
|
+
readonly pullRequest?: GitDeliveryPullRequestState | undefined;
|
|
115
|
+
readonly mergeReadiness?: GitDeliveryMergeReadiness | undefined;
|
|
116
|
+
readonly branchProtection?: GitDeliveryBranchProtection | undefined;
|
|
117
|
+
readonly checks?: GitDeliveryChecksState | undefined;
|
|
118
|
+
}
|
|
119
|
+
export declare const isGitDeliveryActionSheetState: (v: unknown) => v is GitDeliveryActionSheetState;
|
|
120
|
+
export declare const isGitDeliveryApprovalNecessity: (v: unknown) => v is GitDeliveryApprovalNecessity;
|
|
121
|
+
export declare const isGitDeliveryBlockedCause: (v: unknown) => v is GitDeliveryBlockedCause;
|
|
122
|
+
export declare const isGitDeliveryBlockerSource: (v: unknown) => v is GitDeliveryBlockerSource;
|
|
123
|
+
export declare const isGitDeliveryBlockerSeverity: (v: unknown) => v is GitDeliveryBlockerSeverity;
|
|
124
|
+
export declare const isGitDeliveryRemediationClass: (v: unknown) => v is GitDeliveryRemediationClass;
|
|
125
|
+
export declare const isGitDeliveryRecoveryActionHint: (v: unknown) => v is GitDeliveryRecoveryActionHint;
|
|
126
|
+
export declare function isGitDeliveryExpectedBlocker(value: unknown): value is GitDeliveryExpectedBlocker;
|
|
127
|
+
export declare function isGitDeliveryRecoveryHint(value: unknown): value is GitDeliveryRecoveryHint;
|
|
128
|
+
export declare function isGitDeliveryApprovalSummary(value: unknown): value is GitDeliveryApprovalSummary;
|
|
129
|
+
export declare const GIT_DELIVERY_POLICY_DECISION_OUTCOMES: readonly GitDeliveryPolicyDecision["outcome"][];
|
|
130
|
+
export declare const isGitDeliveryPolicyDecisionOutcome: (v: unknown) => v is "allowed" | "blocked" | "approval-gated" | "constrained";
|
|
131
|
+
export declare function isGitDeliveryPolicyExplanation(value: unknown): value is GitDeliveryPolicyExplanation;
|
|
132
|
+
export declare function isGitDeliveryPreviewManifest(value: unknown): value is GitDeliveryPreviewManifest;
|
|
133
|
+
export declare function isGitDeliveryBlockedDetail(value: unknown): value is GitDeliveryBlockedDetail;
|
|
134
|
+
export declare function isGitDeliveryActionSheet(value: unknown): value is GitDeliveryActionSheet;
|
|
135
|
+
export declare function parseGitDeliveryActionSheet(value: unknown): GitDeliveryParseResult<GitDeliveryActionSheet>;
|
|
136
|
+
export interface GitDeliveryPreviewManifestInput {
|
|
137
|
+
readonly resolvedInputs: GitDeliveryResolvedInputs;
|
|
138
|
+
readonly expectedBlockers: readonly GitDeliveryExpectedBlocker[];
|
|
139
|
+
readonly kernelPreview?: GitDeliveryActionPreview | undefined;
|
|
140
|
+
readonly pullRequest?: GitDeliveryPullRequestState | undefined;
|
|
141
|
+
readonly mergeReadiness?: GitDeliveryMergeReadiness | undefined;
|
|
142
|
+
readonly branchProtection?: GitDeliveryBranchProtection | undefined;
|
|
143
|
+
readonly checks?: GitDeliveryChecksState | undefined;
|
|
144
|
+
}
|
|
145
|
+
export declare function buildGitDeliveryPreviewManifest(input: GitDeliveryPreviewManifestInput): GitDeliveryPreviewManifest;
|
|
146
|
+
export declare function gitDeliveryApprovalNecessityForDecision(decision: GitDeliveryPolicyDecision): GitDeliveryApprovalNecessity;
|
|
147
|
+
export interface GitDeliveryActionSheetStateInput {
|
|
148
|
+
readonly policyDecision: GitDeliveryPolicyDecision;
|
|
149
|
+
readonly approvalRequirement: GitDeliveryApprovalRequirement;
|
|
150
|
+
readonly providerReady: boolean;
|
|
151
|
+
readonly hasBlockingPreflight: boolean;
|
|
152
|
+
}
|
|
153
|
+
export declare function gitDeliveryActionSheetStateFor(input: GitDeliveryActionSheetStateInput): GitDeliveryActionSheetState;
|
|
154
|
+
export declare function gitDeliveryBlockedCauseFor(input: GitDeliveryActionSheetStateInput): GitDeliveryBlockedCause | undefined;
|
|
155
|
+
export declare function gitDeliverySuggestedRecoveryStrategy(actionKind: GitDeliveryActionKind, worktreeIsDirty: boolean): GitDeliveryRecoveryStrategyHint;
|
|
156
|
+
export declare function buildGitDeliveryActionSheet(input: GitDeliveryActionSheetInput): GitDeliveryActionSheet;
|
|
157
|
+
//# sourceMappingURL=git-delivery-action-sheet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-delivery-action-sheet.d.ts","sourceRoot":"","sources":["../src/git-delivery-action-sheet.ts"],"names":[],"mappings":"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"}
|