@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,133 @@
|
|
|
1
|
+
// Root-relative project-tree file-identifier contract (Issue #1374, Epic #1491). The Files
|
|
2
|
+
// browser and the agent-native editor exchange file identifiers with the BFF as ROOT-RELATIVE
|
|
3
|
+
// POSIX paths: `root` is an absolute machine path, and every `path` in the FilesTree* /
|
|
4
|
+
// FilesContent* / FilesWrite* wire shapes (see ./bff-wire) is interpreted relative to that root.
|
|
5
|
+
// Absolute paths are NEVER valid file identifiers — the BFF rejects them with 400 BAD_PATH
|
|
6
|
+
// ("The path must be relative to the selected root.", keiko-server/src/files.ts). This module is
|
|
7
|
+
// the single, tested place that turns a possibly-absolute candidate into a root-relative
|
|
8
|
+
// identifier (or a clear "outside-root" state), so the editor and the file tree can never hand an
|
|
9
|
+
// absolute path to the BFF and trigger the absolute-path editor load failure.
|
|
10
|
+
//
|
|
11
|
+
// Leaf-package rules (ADR-0019): pure string functions only. No filesystem, no clock, no crypto,
|
|
12
|
+
// no randomness, and no imports of other `@oscharko-dev/keiko-*` packages. The single in-package
|
|
13
|
+
// dependency is `isContainedAgentPath` (./editor-agent), the existing root-relative path guard the
|
|
14
|
+
// agent action surface already uses — reused here so ONE predicate defines what a contained,
|
|
15
|
+
// root-relative file identifier is across the editor surface (AC5: no new subsystem).
|
|
16
|
+
import { isContainedAgentPath } from "./editor-agent.js";
|
|
17
|
+
const WINDOWS_DRIVE_RE = /^[A-Za-z]:/u;
|
|
18
|
+
// A path the BFF treats as absolute: POSIX root, Windows drive, UNC share, or `~` (which a shell
|
|
19
|
+
// expands to $HOME). Mirrors the server's rejection surface (files.ts normalizeRelativePath +
|
|
20
|
+
// resolveArbitraryRoot) so the client and server agree on what "absolute" means.
|
|
21
|
+
function isAbsoluteLike(path) {
|
|
22
|
+
return (path.startsWith("/") ||
|
|
23
|
+
path.startsWith("\\") ||
|
|
24
|
+
path.startsWith("~") ||
|
|
25
|
+
WINDOWS_DRIVE_RE.test(path));
|
|
26
|
+
}
|
|
27
|
+
// Backslash -> slash, collapse repeated slashes, strip a trailing slash. Pure lexical
|
|
28
|
+
// normalization shared by root and candidate so prefix comparison is stable across separators.
|
|
29
|
+
// Implemented with split/join (no quantified, anchored regex) so it stays strictly linear on
|
|
30
|
+
// adversarial input such as a path of many repeated slashes (avoids polynomial backtracking).
|
|
31
|
+
function toPosix(path) {
|
|
32
|
+
const slashed = path.replace(/\\/gu, "/");
|
|
33
|
+
const collapsed = slashed
|
|
34
|
+
.split("/")
|
|
35
|
+
.filter((segment) => segment.length > 0)
|
|
36
|
+
.join("/");
|
|
37
|
+
if (collapsed.length === 0)
|
|
38
|
+
return "";
|
|
39
|
+
return slashed.startsWith("/") ? `/${collapsed}` : collapsed;
|
|
40
|
+
}
|
|
41
|
+
// When `child` is the workspace root return ""; when it is lexically nested under `root` return
|
|
42
|
+
// the root-relative remainder; otherwise return null. Matching is case-insensitive (preserving the
|
|
43
|
+
// editor's historic behavior and the common macOS/Windows case-insensitive filesystem), but the
|
|
44
|
+
// returned remainder keeps the candidate's original casing — only the prefix MATCH is folded.
|
|
45
|
+
function relativeUnderRoot(root, child) {
|
|
46
|
+
const normalizedRoot = toPosix(root);
|
|
47
|
+
const normalizedChild = toPosix(child);
|
|
48
|
+
if (normalizedRoot.length === 0)
|
|
49
|
+
return null;
|
|
50
|
+
const rootCmp = normalizedRoot.toLowerCase();
|
|
51
|
+
const childCmp = normalizedChild.toLowerCase();
|
|
52
|
+
if (childCmp === rootCmp)
|
|
53
|
+
return "";
|
|
54
|
+
if (childCmp.startsWith(`${rootCmp}/`))
|
|
55
|
+
return normalizedChild.slice(normalizedRoot.length + 1);
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
// The single guard for "is this a valid, contained, root-relative file identifier?". Delegates to
|
|
59
|
+
// the agent-surface predicate so the editor file tree and agent actions share one definition.
|
|
60
|
+
export function isRootRelativeFileIdentifier(value) {
|
|
61
|
+
return isContainedAgentPath(value);
|
|
62
|
+
}
|
|
63
|
+
// Resolve an absolute candidate against the root: strip the root prefix when contained, flag the
|
|
64
|
+
// root itself, or report outside-root with the POSIX-normalized candidate.
|
|
65
|
+
function resolveAbsoluteCandidate(root, raw) {
|
|
66
|
+
const remainder = relativeUnderRoot(root, raw);
|
|
67
|
+
if (remainder === null)
|
|
68
|
+
return { kind: "outside-root", candidate: toPosix(raw) };
|
|
69
|
+
if (remainder.length === 0)
|
|
70
|
+
return { kind: "root" };
|
|
71
|
+
return isRootRelativeFileIdentifier(remainder)
|
|
72
|
+
? { kind: "relative", path: remainder }
|
|
73
|
+
: { kind: "outside-root", candidate: toPosix(raw) };
|
|
74
|
+
}
|
|
75
|
+
// Resolve a candidate path (absolute or relative, any separator) against an absolute workspace
|
|
76
|
+
// root into the root-relative file-identifier contract. NEVER returns an absolute path.
|
|
77
|
+
export function resolveWorkspaceFileIdentifier(root, candidate) {
|
|
78
|
+
const raw = candidate?.trim() ?? "";
|
|
79
|
+
if (raw.length === 0)
|
|
80
|
+
return { kind: "empty" };
|
|
81
|
+
if (raw.includes("\u0000"))
|
|
82
|
+
return { kind: "outside-root", candidate: toPosix(raw) };
|
|
83
|
+
if (isAbsoluteLike(raw))
|
|
84
|
+
return resolveAbsoluteCandidate(root, raw);
|
|
85
|
+
// Relative candidate: normalize separators and strip a single leading "./" before validating.
|
|
86
|
+
const relative = toPosix(raw).replace(/^\.\//u, "");
|
|
87
|
+
if (relative.length === 0)
|
|
88
|
+
return { kind: "empty" };
|
|
89
|
+
return isRootRelativeFileIdentifier(relative)
|
|
90
|
+
? { kind: "relative", path: relative }
|
|
91
|
+
: { kind: "outside-root", candidate: relative };
|
|
92
|
+
}
|
|
93
|
+
// POSIX dirname for an already-`toPosix`-normalized absolute path. Returns "/" at the filesystem
|
|
94
|
+
// root and "" when the path has no separator.
|
|
95
|
+
function posixDirname(path) {
|
|
96
|
+
const index = path.lastIndexOf("/");
|
|
97
|
+
if (index < 0)
|
|
98
|
+
return "";
|
|
99
|
+
return index === 0 ? "/" : path.slice(0, index);
|
|
100
|
+
}
|
|
101
|
+
// POSIX basename for an already-`toPosix`-normalized path.
|
|
102
|
+
function posixBasename(path) {
|
|
103
|
+
const index = path.lastIndexOf("/");
|
|
104
|
+
return index < 0 ? path : path.slice(index + 1);
|
|
105
|
+
}
|
|
106
|
+
// Resolve the {root, file} pair the editor should open for a candidate path:
|
|
107
|
+
// - a root-relative or absolute-inside-`root` candidate keeps the supplied root;
|
|
108
|
+
// - a single ABSOLUTE file outside `root` selects its containing directory as the root and its
|
|
109
|
+
// basename as the file (AC3: "selects a containing root");
|
|
110
|
+
// - anything that cannot be turned into a contained root-relative file (no root, a `..`-escaping
|
|
111
|
+
// relative path, a bare filename with no root) yields null so the caller renders a clear
|
|
112
|
+
// non-blocking state (AC3/AC4) instead of sending an unusable path to the BFF.
|
|
113
|
+
export function selectWorkspaceFileTarget(root, candidate) {
|
|
114
|
+
const normalizedRoot = toPosix(root.trim());
|
|
115
|
+
const resolution = resolveWorkspaceFileIdentifier(normalizedRoot, candidate);
|
|
116
|
+
switch (resolution.kind) {
|
|
117
|
+
case "relative":
|
|
118
|
+
return normalizedRoot.length > 0 ? { root: normalizedRoot, file: resolution.path } : null;
|
|
119
|
+
case "root":
|
|
120
|
+
case "empty":
|
|
121
|
+
return normalizedRoot.length > 0 ? { root: normalizedRoot, file: "" } : null;
|
|
122
|
+
case "outside-root": {
|
|
123
|
+
const offending = resolution.candidate;
|
|
124
|
+
if (!isAbsoluteLike(offending))
|
|
125
|
+
return null;
|
|
126
|
+
const containingRoot = posixDirname(offending);
|
|
127
|
+
const file = posixBasename(offending);
|
|
128
|
+
if (containingRoot.length === 0 || !isRootRelativeFileIdentifier(file))
|
|
129
|
+
return null;
|
|
130
|
+
return { root: containingRoot, file };
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
package/dist/evidence.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { CostClass } from "./gateway.js";
|
|
|
3
3
|
import type { HarnessCode, HarnessStateName, RunManifest, RunOutcome, RunResult, TaskType } from "./harness.js";
|
|
4
4
|
import type { AuditSummary } from "./workspace.js";
|
|
5
5
|
import type { VerificationAuditSummary } from "./verification-summary.js";
|
|
6
|
+
import type { SpokenActionAuditRecord } from "./voice-action-intent.js";
|
|
6
7
|
export declare const EVIDENCE_SCHEMA_VERSION: "1";
|
|
7
8
|
export interface EvidenceRunIdentity {
|
|
8
9
|
readonly runId: string;
|
|
@@ -86,7 +87,7 @@ export interface EvidenceFailure {
|
|
|
86
87
|
readonly category: HarnessCode;
|
|
87
88
|
readonly message: string;
|
|
88
89
|
}
|
|
89
|
-
export type EvidenceTaskType = TaskType | "browser-capture" | "terminal-execution" | "connected-context";
|
|
90
|
+
export type EvidenceTaskType = TaskType | "browser-capture" | "terminal-execution" | "command-run" | "container-run" | "connected-context";
|
|
90
91
|
export interface EvidenceBrowserViewportPx {
|
|
91
92
|
readonly width: number;
|
|
92
93
|
readonly height: number;
|
|
@@ -241,6 +242,7 @@ export interface EvidenceGovernedWorkflowHandoff {
|
|
|
241
242
|
readonly evidenceAtomCount: number;
|
|
242
243
|
readonly expectedChecks: readonly string[];
|
|
243
244
|
readonly approvalTokenHash: string;
|
|
245
|
+
readonly voiceAction?: SpokenActionAuditRecord | undefined;
|
|
244
246
|
}
|
|
245
247
|
export interface EvidenceManifest {
|
|
246
248
|
readonly evidenceSchemaVersion: "1";
|
package/dist/evidence.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../src/evidence.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"evidence.d.ts","sourceRoot":"","sources":["../src/evidence.ts"],"names":[],"mappings":"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"}
|
package/dist/gateway.d.ts
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
export declare const CONVERSATION_CAPABILITY_CONTRACT_VERSION:
|
|
2
|
-
export type ModelKind = "chat" | "embedding" | "ocr-vision";
|
|
1
|
+
export declare const CONVERSATION_CAPABILITY_CONTRACT_VERSION: 3;
|
|
2
|
+
export type ModelKind = "chat" | "embedding" | "ocr-vision" | "voice";
|
|
3
3
|
export type CostClass = "low" | "medium" | "high";
|
|
4
4
|
export type LatencyClass = "fast" | "standard" | "slow";
|
|
5
5
|
export type InfillingAlignment = "base" | "instruct" | "edit-tuned";
|
|
6
6
|
export declare const INFILLING_ALIGNMENTS: readonly InfillingAlignment[];
|
|
7
|
+
export type VoiceProviderLocality = "azure-foundry" | "customer-hosted" | "local-only";
|
|
8
|
+
export declare const VOICE_PROVIDER_LOCALITIES: readonly VoiceProviderLocality[];
|
|
9
|
+
export type VoicePersona = "male" | "female" | "neutral";
|
|
10
|
+
export declare const VOICE_PERSONAS: readonly VoicePersona[];
|
|
7
11
|
export interface ModelCapability {
|
|
8
12
|
readonly id: string;
|
|
9
13
|
readonly kind: ModelKind;
|
|
@@ -37,6 +41,36 @@ export interface ModelCapability {
|
|
|
37
41
|
* for governed completion because base-FIM re-opens a prompt-injection surface (ADR-0042 D5).
|
|
38
42
|
*/
|
|
39
43
|
readonly infillingAlignment?: InfillingAlignment | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* Whether the voice provider advertises speech-to-text / transcription, i.e. controlled
|
|
46
|
+
* composer dictation (audio in → text). Only meaningful for `kind: "voice"` (Issue #493).
|
|
47
|
+
*/
|
|
48
|
+
readonly supportsSpeechInput?: boolean | undefined;
|
|
49
|
+
/**
|
|
50
|
+
* Whether the voice provider advertises speech output / synthesis (text → audio playback).
|
|
51
|
+
* Only meaningful for `kind: "voice"` (Issue #493).
|
|
52
|
+
*/
|
|
53
|
+
readonly supportsSpeechOutput?: boolean | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Whether the voice provider advertises realtime, full-duplex speech (interruptible,
|
|
56
|
+
* colleague-like conversation / speech-in-speech-out). Only meaningful for `kind: "voice"`.
|
|
57
|
+
* Realtime is the gate for the full-conversation profile (Issue #493 AC3, ADR-0058 D2).
|
|
58
|
+
*/
|
|
59
|
+
readonly supportsRealtimeVoice?: boolean | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Where a `kind: "voice"` provider runs (Issue #493, ADR-0058 D7). Declared explicitly, never
|
|
62
|
+
* inferred from the endpoint URL or environment name. Required when `kind === "voice"`.
|
|
63
|
+
*/
|
|
64
|
+
readonly voiceProviderLocality?: VoiceProviderLocality | undefined;
|
|
65
|
+
/**
|
|
66
|
+
* The product voice personas this voice provider offers as OUTPUT voices (Issue #1557, ADR-0094
|
|
67
|
+
* D2). CONTENT-FREE: persona enums only, never a provider voice id — the sensitive persona →
|
|
68
|
+
* voice-id mapping lives on the credential-tier `ModelProviderConfig.voiceProfiles`. This field is
|
|
69
|
+
* DERIVED at config parse time from that mapping (sorted canonical `VOICE_PERSONAS` order); it is
|
|
70
|
+
* never an operator input key and is never persisted. Only meaningful for a `kind: "voice"`
|
|
71
|
+
* provider that advertises speech output or realtime voice.
|
|
72
|
+
*/
|
|
73
|
+
readonly supportedVoicePersonas?: readonly VoicePersona[] | undefined;
|
|
40
74
|
}
|
|
41
75
|
export declare function modelSupportsInfilling(capability: ModelCapability): boolean;
|
|
42
76
|
export declare function isAlignedInfillingModel(capability: ModelCapability): boolean;
|
|
@@ -49,6 +83,41 @@ export interface CompletionModelSelection {
|
|
|
49
83
|
readonly latencyClass?: LatencyClass | undefined;
|
|
50
84
|
readonly degradeReason?: CompletionDegradeReason | undefined;
|
|
51
85
|
}
|
|
86
|
+
export declare function isVoiceCapability(capability: ModelCapability): boolean;
|
|
87
|
+
export declare function modelSupportsSpeechInput(capability: ModelCapability): boolean;
|
|
88
|
+
export declare function modelSupportsSpeechOutput(capability: ModelCapability): boolean;
|
|
89
|
+
export declare function modelSupportsRealtimeVoice(capability: ModelCapability): boolean;
|
|
90
|
+
export type VoiceProfile = "none" | "speech-to-text" | "speech-output" | "full-realtime";
|
|
91
|
+
export type VoiceUnavailableReason = "no-voice-provider" | "policy-disabled" | "provider-unreachable";
|
|
92
|
+
export interface VoiceTransportPosture {
|
|
93
|
+
readonly websocketControl: boolean;
|
|
94
|
+
readonly webrtcMedia: boolean;
|
|
95
|
+
}
|
|
96
|
+
export interface VoiceCapabilityResolution {
|
|
97
|
+
readonly available: boolean;
|
|
98
|
+
readonly profile: VoiceProfile;
|
|
99
|
+
readonly capabilities: {
|
|
100
|
+
readonly speechToText: boolean;
|
|
101
|
+
readonly speechOutput: boolean;
|
|
102
|
+
readonly realtimeVoice: boolean;
|
|
103
|
+
readonly realtimeToolCalling?: boolean | undefined;
|
|
104
|
+
};
|
|
105
|
+
readonly transport: VoiceTransportPosture;
|
|
106
|
+
readonly availableVoicePersonas: readonly VoicePersona[];
|
|
107
|
+
readonly providerLocality?: VoiceProviderLocality | undefined;
|
|
108
|
+
readonly reason?: VoiceUnavailableReason | undefined;
|
|
109
|
+
}
|
|
110
|
+
export interface VoiceProviderAvailability {
|
|
111
|
+
readonly available: boolean;
|
|
112
|
+
readonly speechToText: boolean;
|
|
113
|
+
readonly speechOutput: boolean;
|
|
114
|
+
readonly realtimeVoice: boolean;
|
|
115
|
+
readonly personas: readonly VoicePersona[];
|
|
116
|
+
readonly providerLocality?: VoiceProviderLocality | undefined;
|
|
117
|
+
}
|
|
118
|
+
export declare function isConfiguredVoiceProvider(capability: ModelCapability): boolean;
|
|
119
|
+
export declare function listVoicePersonas(capability: ModelCapability): readonly VoicePersona[];
|
|
120
|
+
export declare function describeVoiceProviderAvailability(capability: ModelCapability): VoiceProviderAvailability;
|
|
52
121
|
export interface ChatMessageTextContentPart {
|
|
53
122
|
readonly type: "text";
|
|
54
123
|
readonly text: string;
|
|
@@ -123,7 +192,7 @@ export type StreamEvent = {
|
|
|
123
192
|
readonly type: "done";
|
|
124
193
|
readonly response: NormalizedResponse;
|
|
125
194
|
};
|
|
126
|
-
export type ConversationIneligibilityReason = "embedding-only" | "ocr-vision-only" | "non-chat";
|
|
195
|
+
export type ConversationIneligibilityReason = "embedding-only" | "ocr-vision-only" | "voice-only" | "non-chat";
|
|
127
196
|
export declare function isConversationEligibleModel(capability: ModelCapability): boolean;
|
|
128
197
|
export declare function explainConversationIneligibility(capability: ModelCapability): ConversationIneligibilityReason | undefined;
|
|
129
198
|
//# sourceMappingURL=gateway.d.ts.map
|
package/dist/gateway.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../src/gateway.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../src/gateway.ts"],"names":[],"mappings":"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"}
|
package/dist/gateway.js
CHANGED
|
@@ -5,14 +5,25 @@
|
|
|
5
5
|
// here. `readonly` everywhere; optional props are `| undefined` because exactOptionalPropertyTypes
|
|
6
6
|
// is on.
|
|
7
7
|
// Bumped to 2 by issue #143 (Epic #142 Conversation Center): ModelCapability now carries
|
|
8
|
-
// supportsImageInput / supportsDocumentInput / workflowEligible.
|
|
9
|
-
//
|
|
10
|
-
|
|
8
|
+
// supportsImageInput / supportsDocumentInput / workflowEligible. Bumped to 3 by issue #493
|
|
9
|
+
// (Epic #491 Voice Digital Twin): ModelKind gained the "voice" member — a STRUCTURAL change
|
|
10
|
+
// that adds a new literal discriminant. A structural break adds a new literal member (and bumps
|
|
11
|
+
// this constant); additive OPTIONAL flags (Epic #761 determinism, Issue #1210 infilling, the
|
|
12
|
+
// #493 voice sub-capability flags) never bump it.
|
|
13
|
+
export const CONVERSATION_CAPABILITY_CONTRACT_VERSION = 3;
|
|
11
14
|
export const INFILLING_ALIGNMENTS = [
|
|
12
15
|
"base",
|
|
13
16
|
"instruct",
|
|
14
17
|
"edit-tuned",
|
|
15
18
|
];
|
|
19
|
+
export const VOICE_PROVIDER_LOCALITIES = [
|
|
20
|
+
"azure-foundry",
|
|
21
|
+
"customer-hosted",
|
|
22
|
+
"local-only",
|
|
23
|
+
];
|
|
24
|
+
// Canonical, ordered tuple of personas. Derivation of `supportedVoicePersonas` and aggregation of
|
|
25
|
+
// `availableVoicePersonas` both sort against this order so the wire surface is deterministic.
|
|
26
|
+
export const VOICE_PERSONAS = ["male", "female", "neutral"];
|
|
16
27
|
// ─── Completion / infilling capability helpers (Issue #1210, ADR-0042 D5) ──────
|
|
17
28
|
// These are additive, optional fields: a future capability flag (e.g. `edit-prediction` for
|
|
18
29
|
// next-edit prediction) is another optional member, never a structural break, so
|
|
@@ -42,6 +53,64 @@ export function isAlignedInfillingModel(capability) {
|
|
|
42
53
|
export function isAsYouTypeCompletionModel(capability) {
|
|
43
54
|
return isAlignedInfillingModel(capability) && capability.latencyClass === "fast";
|
|
44
55
|
}
|
|
56
|
+
// ─── Voice capability predicates (Issue #493, ADR-0058 D2/D5) ──────────────────
|
|
57
|
+
// Pure, total predicates over a capability. They live in contracts (not keiko-model-gateway) so
|
|
58
|
+
// the browser-tier keiko-ui can value-import them without crossing ADR-0019 trust rule 3 (UI →
|
|
59
|
+
// model-gateway/src forbidden at error), mirroring `modelSupportsInfilling`. Every predicate is
|
|
60
|
+
// fail-closed: a non-voice kind, or an absent flag, is "no".
|
|
61
|
+
// Whether the capability is the voice modality at all.
|
|
62
|
+
export function isVoiceCapability(capability) {
|
|
63
|
+
return capability.kind === "voice";
|
|
64
|
+
}
|
|
65
|
+
// Whether the voice provider advertises speech-to-text (dictation). Total: only a voice-kind model
|
|
66
|
+
// with the flag set qualifies.
|
|
67
|
+
export function modelSupportsSpeechInput(capability) {
|
|
68
|
+
return capability.kind === "voice" && capability.supportsSpeechInput === true;
|
|
69
|
+
}
|
|
70
|
+
// Whether the voice provider advertises speech output (synthesis / playback).
|
|
71
|
+
export function modelSupportsSpeechOutput(capability) {
|
|
72
|
+
return capability.kind === "voice" && capability.supportsSpeechOutput === true;
|
|
73
|
+
}
|
|
74
|
+
// Whether the voice provider advertises realtime full-duplex speech.
|
|
75
|
+
export function modelSupportsRealtimeVoice(capability) {
|
|
76
|
+
return capability.kind === "voice" && capability.supportsRealtimeVoice === true;
|
|
77
|
+
}
|
|
78
|
+
// Whether the capability is a CONFIGURED, working voice provider: the voice modality advertising at
|
|
79
|
+
// least one of speech input / speech output / realtime voice. Fail-closed: a non-voice kind, or a
|
|
80
|
+
// voice kind with no advertised sub-capability, is false.
|
|
81
|
+
export function isConfiguredVoiceProvider(capability) {
|
|
82
|
+
return (isVoiceCapability(capability) &&
|
|
83
|
+
(modelSupportsSpeechInput(capability) ||
|
|
84
|
+
modelSupportsSpeechOutput(capability) ||
|
|
85
|
+
modelSupportsRealtimeVoice(capability)));
|
|
86
|
+
}
|
|
87
|
+
// The product voice personas a single capability offers, sorted in canonical `VOICE_PERSONAS` order
|
|
88
|
+
// and de-duplicated. Fail-closed: empty for a non-voice capability (even if a persona field is
|
|
89
|
+
// present — defence in depth alongside the config parser, which prevents that at parse time) or one
|
|
90
|
+
// that advertises none.
|
|
91
|
+
export function listVoicePersonas(capability) {
|
|
92
|
+
if (!isVoiceCapability(capability)) {
|
|
93
|
+
return [];
|
|
94
|
+
}
|
|
95
|
+
const declared = capability.supportedVoicePersonas;
|
|
96
|
+
if (declared === undefined || declared.length === 0) {
|
|
97
|
+
return [];
|
|
98
|
+
}
|
|
99
|
+
const present = new Set(declared);
|
|
100
|
+
return VOICE_PERSONAS.filter((persona) => present.has(persona));
|
|
101
|
+
}
|
|
102
|
+
// Content-free availability descriptor for one capability (ADR-0094 D3). Total and probe-free.
|
|
103
|
+
export function describeVoiceProviderAvailability(capability) {
|
|
104
|
+
const locality = capability.voiceProviderLocality;
|
|
105
|
+
return {
|
|
106
|
+
available: isConfiguredVoiceProvider(capability),
|
|
107
|
+
speechToText: modelSupportsSpeechInput(capability),
|
|
108
|
+
speechOutput: modelSupportsSpeechOutput(capability),
|
|
109
|
+
realtimeVoice: modelSupportsRealtimeVoice(capability),
|
|
110
|
+
personas: listVoicePersonas(capability),
|
|
111
|
+
...(locality !== undefined ? { providerLocality: locality } : {}),
|
|
112
|
+
};
|
|
113
|
+
}
|
|
45
114
|
// Why: see header — only `kind === "chat"` is conversation-eligible by
|
|
46
115
|
// construction. Pure, total, no side effects.
|
|
47
116
|
export function isConversationEligibleModel(capability) {
|
|
@@ -58,6 +127,7 @@ export function isConversationEligibleModel(capability) {
|
|
|
58
127
|
const INELIGIBILITY_REASON_BY_KIND = {
|
|
59
128
|
embedding: "embedding-only",
|
|
60
129
|
"ocr-vision": "ocr-vision-only",
|
|
130
|
+
voice: "voice-only",
|
|
61
131
|
};
|
|
62
132
|
export function explainConversationIneligibility(capability) {
|
|
63
133
|
if (capability.kind === "chat")
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare const GIT_COMMIT_INTENT_SCHEMA_VERSION: "1";
|
|
2
|
+
export declare const DEFAULT_LARGE_CHANGE_THRESHOLD = 20;
|
|
3
|
+
export interface GitCommitChangeSummary {
|
|
4
|
+
readonly stagedFileCount: number;
|
|
5
|
+
readonly areaCount: number;
|
|
6
|
+
readonly areas: readonly string[];
|
|
7
|
+
readonly touchesTests: boolean;
|
|
8
|
+
}
|
|
9
|
+
export type GitCommitQualityWarningCode = "mixed-scope" | "wip-marker" | "large-change" | "empty-body" | "non-conventional-subject";
|
|
10
|
+
export declare const GIT_COMMIT_QUALITY_WARNING_CODES: readonly GitCommitQualityWarningCode[];
|
|
11
|
+
export interface GitCommitIntentAnalysis {
|
|
12
|
+
readonly warnings: readonly GitCommitQualityWarningCode[];
|
|
13
|
+
readonly mixedScope: boolean;
|
|
14
|
+
readonly isWip: boolean;
|
|
15
|
+
readonly suggestedType?: string | undefined;
|
|
16
|
+
readonly suggestedScope?: string | undefined;
|
|
17
|
+
readonly suggestedSubjectPrefix?: string | undefined;
|
|
18
|
+
}
|
|
19
|
+
export interface GitCommitIntentInput {
|
|
20
|
+
readonly summary: GitCommitChangeSummary;
|
|
21
|
+
readonly message?: string | undefined;
|
|
22
|
+
readonly largeChangeThreshold?: number | undefined;
|
|
23
|
+
}
|
|
24
|
+
export declare function analyzeGitCommitIntent(input: GitCommitIntentInput): GitCommitIntentAnalysis;
|
|
25
|
+
export declare const isGitCommitQualityWarningCode: (v: unknown) => v is GitCommitQualityWarningCode;
|
|
26
|
+
export declare function isGitCommitChangeSummary(value: unknown): value is GitCommitChangeSummary;
|
|
27
|
+
export declare function isGitCommitIntentAnalysis(value: unknown): value is GitCommitIntentAnalysis;
|
|
28
|
+
//# sourceMappingURL=git-commit-intent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-commit-intent.d.ts","sourceRoot":"","sources":["../src/git-commit-intent.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,gCAAgC,EAAG,GAAY,CAAC;AAG7D,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAOjD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;CAChC;AAID,MAAM,MAAM,2BAA2B,GACnC,aAAa,GACb,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,0BAA0B,CAAC;AAE/B,eAAO,MAAM,gCAAgC,EAAE,SAAS,2BAA2B,EAMzE,CAAC;AAIX,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE,SAAS,2BAA2B,EAAE,CAAC;IAC1D,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpD;AAgID,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,oBAAoB,GAAG,uBAAuB,CAkB3F;AAID,eAAO,MAAM,6BAA6B,MA1HiB,OAAO,KAAK,CAAC,+BA0Hc,CAAC;AAEvF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,sBAAsB,CAQxF;AAMD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,uBAAuB,CAU1F"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
// Deterministic commit-INTENT composition contracts (Issue #475, Epic #470). Ownership: the pure,
|
|
2
|
+
// deterministic heuristics that turn a content-free staged-change SUMMARY (counts, distinct top-level
|
|
3
|
+
// area tokens, a touches-tests flag) plus an optional message draft into quality warnings and
|
|
4
|
+
// scaffolding suggestions (a suggested type/scope and a `type(scope): ` subject prefix). The
|
|
5
|
+
// suggestions are DETERMINISTIC rules — never a model call (ADR-0062 §5). The summary is content-free
|
|
6
|
+
// by construction: it carries counts, a bounded list of low-sensitivity structural area tokens, and a
|
|
7
|
+
// boolean; it never carries raw paths, diff content, or file contents.
|
|
8
|
+
//
|
|
9
|
+
// Disjoint from git-commit-policy.ts (the message-policy validator that gates the commit) and from
|
|
10
|
+
// git-delivery.ts (the action model). The change SUMMARY is produced in keiko-tools from the staged
|
|
11
|
+
// pathspec; this leaf only defines its shape and the pure analyzer over it.
|
|
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".
|
|
15
|
+
// Pinned schema version. A breaking change adds a NEW literal member; this one is never mutated.
|
|
16
|
+
export const GIT_COMMIT_INTENT_SCHEMA_VERSION = "1";
|
|
17
|
+
// Default ceiling above which a changeset is flagged "large-change". Overridable per call.
|
|
18
|
+
export const DEFAULT_LARGE_CHANGE_THRESHOLD = 20;
|
|
19
|
+
export const GIT_COMMIT_QUALITY_WARNING_CODES = [
|
|
20
|
+
"mixed-scope",
|
|
21
|
+
"wip-marker",
|
|
22
|
+
"large-change",
|
|
23
|
+
"empty-body",
|
|
24
|
+
"non-conventional-subject",
|
|
25
|
+
];
|
|
26
|
+
// ─── Private predicate helpers ────────────────────────────────────────────────────────────────────
|
|
27
|
+
function isString(value) {
|
|
28
|
+
return typeof value === "string";
|
|
29
|
+
}
|
|
30
|
+
function isBoolean(value) {
|
|
31
|
+
return typeof value === "boolean";
|
|
32
|
+
}
|
|
33
|
+
function isNonNegativeInteger(value) {
|
|
34
|
+
return typeof value === "number" && Number.isInteger(value) && value >= 0;
|
|
35
|
+
}
|
|
36
|
+
function isRecord(value) {
|
|
37
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
38
|
+
}
|
|
39
|
+
function isStringArray(value) {
|
|
40
|
+
return Array.isArray(value) && value.every(isString);
|
|
41
|
+
}
|
|
42
|
+
function isUndefinedOr(check) {
|
|
43
|
+
return (v) => v === undefined || check(v);
|
|
44
|
+
}
|
|
45
|
+
function isInSet(set) {
|
|
46
|
+
return (v) => isString(v) && set.includes(v);
|
|
47
|
+
}
|
|
48
|
+
// ─── Message structure ──────────────────────────────────────────────────────────────────────────
|
|
49
|
+
// Subject = first line; the body is the remaining non-blank lines. WIP detection and the
|
|
50
|
+
// conventional-prefix check read the subject only; the empty-body check reads the body.
|
|
51
|
+
const WIP_RE = /\bwip\b/i;
|
|
52
|
+
const CONVENTIONAL_PREFIX_RE = /^[a-zA-Z]+(\([^()]*\))?(!)?: .+$/;
|
|
53
|
+
function messageFacts(message) {
|
|
54
|
+
if (message === undefined) {
|
|
55
|
+
return { hasMessage: false, subject: "", hasBody: false };
|
|
56
|
+
}
|
|
57
|
+
const lines = message.split("\n");
|
|
58
|
+
const subject = (lines[0] ?? "").trim();
|
|
59
|
+
const body = lines.slice(1).join("\n").trim();
|
|
60
|
+
return { hasMessage: true, subject, hasBody: body.length > 0 };
|
|
61
|
+
}
|
|
62
|
+
// ─── Suggestion heuristics ────────────────────────────────────────────────────────────────────────
|
|
63
|
+
// Deterministic, conservative: a single dominant area becomes the scope; a tests-only single-area
|
|
64
|
+
// change suggests `test`, a docs-only single-area change suggests `docs`; otherwise no type is
|
|
65
|
+
// suggested. A subject prefix is scaffolded only when BOTH a type and a scope are derivable.
|
|
66
|
+
function dominantScope(summary) {
|
|
67
|
+
if (summary.areaCount !== 1) {
|
|
68
|
+
return undefined;
|
|
69
|
+
}
|
|
70
|
+
const only = summary.areas[0];
|
|
71
|
+
return only !== undefined && only.length > 0 ? only : undefined;
|
|
72
|
+
}
|
|
73
|
+
function suggestedTypeFor(summary, scope) {
|
|
74
|
+
if (scope === undefined) {
|
|
75
|
+
return undefined;
|
|
76
|
+
}
|
|
77
|
+
if (summary.touchesTests) {
|
|
78
|
+
return "test";
|
|
79
|
+
}
|
|
80
|
+
if (scope === "docs") {
|
|
81
|
+
return "docs";
|
|
82
|
+
}
|
|
83
|
+
return undefined;
|
|
84
|
+
}
|
|
85
|
+
function deriveSignals(input, facts) {
|
|
86
|
+
const threshold = input.largeChangeThreshold ?? DEFAULT_LARGE_CHANGE_THRESHOLD;
|
|
87
|
+
const nonConventionalSubject = facts.hasMessage && !CONVENTIONAL_PREFIX_RE.test(facts.subject);
|
|
88
|
+
return {
|
|
89
|
+
mixedScope: input.summary.areaCount > 1,
|
|
90
|
+
isWip: facts.hasMessage && WIP_RE.test(facts.subject),
|
|
91
|
+
large: input.summary.stagedFileCount > threshold,
|
|
92
|
+
emptyBody: facts.hasMessage && !facts.hasBody,
|
|
93
|
+
nonConventionalSubject,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
function collectWarnings(signals) {
|
|
97
|
+
const warnings = [];
|
|
98
|
+
if (signals.mixedScope) {
|
|
99
|
+
warnings.push("mixed-scope");
|
|
100
|
+
}
|
|
101
|
+
if (signals.isWip) {
|
|
102
|
+
warnings.push("wip-marker");
|
|
103
|
+
}
|
|
104
|
+
if (signals.large) {
|
|
105
|
+
warnings.push("large-change");
|
|
106
|
+
}
|
|
107
|
+
if (signals.emptyBody) {
|
|
108
|
+
warnings.push("empty-body");
|
|
109
|
+
}
|
|
110
|
+
if (signals.nonConventionalSubject) {
|
|
111
|
+
warnings.push("non-conventional-subject");
|
|
112
|
+
}
|
|
113
|
+
return warnings;
|
|
114
|
+
}
|
|
115
|
+
// ─── Analyzer (PURE, deterministic) ───────────────────────────────────────────────────────────────
|
|
116
|
+
export function analyzeGitCommitIntent(input) {
|
|
117
|
+
const facts = messageFacts(input.message);
|
|
118
|
+
const signals = deriveSignals(input, facts);
|
|
119
|
+
const scope = dominantScope(input.summary);
|
|
120
|
+
const type = suggestedTypeFor(input.summary, scope);
|
|
121
|
+
const base = {
|
|
122
|
+
warnings: collectWarnings(signals),
|
|
123
|
+
mixedScope: signals.mixedScope,
|
|
124
|
+
isWip: signals.isWip,
|
|
125
|
+
};
|
|
126
|
+
return {
|
|
127
|
+
...base,
|
|
128
|
+
...(type !== undefined ? { suggestedType: type } : {}),
|
|
129
|
+
...(scope !== undefined ? { suggestedScope: scope } : {}),
|
|
130
|
+
...(type !== undefined && scope !== undefined
|
|
131
|
+
? { suggestedSubjectPrefix: `${type}(${scope}): ` }
|
|
132
|
+
: {}),
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
// ─── Exported guards ────────────────────────────────────────────────────────────────────────────
|
|
136
|
+
export const isGitCommitQualityWarningCode = isInSet(GIT_COMMIT_QUALITY_WARNING_CODES);
|
|
137
|
+
export function isGitCommitChangeSummary(value) {
|
|
138
|
+
return (isRecord(value) &&
|
|
139
|
+
isNonNegativeInteger(value.stagedFileCount) &&
|
|
140
|
+
isNonNegativeInteger(value.areaCount) &&
|
|
141
|
+
isStringArray(value.areas) &&
|
|
142
|
+
isBoolean(value.touchesTests));
|
|
143
|
+
}
|
|
144
|
+
function isWarningArray(value) {
|
|
145
|
+
return Array.isArray(value) && value.every(isGitCommitQualityWarningCode);
|
|
146
|
+
}
|
|
147
|
+
export function isGitCommitIntentAnalysis(value) {
|
|
148
|
+
return (isRecord(value) &&
|
|
149
|
+
isWarningArray(value.warnings) &&
|
|
150
|
+
isBoolean(value.mixedScope) &&
|
|
151
|
+
isBoolean(value.isWip) &&
|
|
152
|
+
isUndefinedOr(isString)(value.suggestedType) &&
|
|
153
|
+
isUndefinedOr(isString)(value.suggestedScope) &&
|
|
154
|
+
isUndefinedOr(isString)(value.suggestedSubjectPrefix));
|
|
155
|
+
}
|