@oscharko-dev/keiko-contracts 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -0
- package/dist/bff-wire.d.ts +661 -0
- package/dist/bff-wire.d.ts.map +1 -0
- package/dist/bff-wire.js +102 -0
- package/dist/bug-investigation-events.d.ts +92 -0
- package/dist/bug-investigation-events.d.ts.map +1 -0
- package/dist/bug-investigation-events.js +18 -0
- package/dist/coding-context.d.ts +76 -0
- package/dist/coding-context.d.ts.map +1 -0
- package/dist/coding-context.js +158 -0
- package/dist/connected-context.d.ts +174 -0
- package/dist/connected-context.d.ts.map +1 -0
- package/dist/connected-context.js +636 -0
- package/dist/conversation-budget.d.ts +37 -0
- package/dist/conversation-budget.d.ts.map +1 -0
- package/dist/conversation-budget.js +97 -0
- package/dist/editor-agent.d.ts +131 -0
- package/dist/editor-agent.d.ts.map +1 -0
- package/dist/editor-agent.js +197 -0
- package/dist/editor-completion.d.ts +62 -0
- package/dist/editor-completion.d.ts.map +1 -0
- package/dist/editor-completion.js +147 -0
- package/dist/editor-dirty-close.d.ts +17 -0
- package/dist/editor-dirty-close.d.ts.map +1 -0
- package/dist/editor-dirty-close.js +8 -0
- package/dist/editor-hot-exit.d.ts +18 -0
- package/dist/editor-hot-exit.d.ts.map +1 -0
- package/dist/editor-hot-exit.js +42 -0
- package/dist/editor-inline-completion.d.ts +70 -0
- package/dist/editor-inline-completion.d.ts.map +1 -0
- package/dist/editor-inline-completion.js +215 -0
- package/dist/editor-layout.d.ts +105 -0
- package/dist/editor-layout.d.ts.map +1 -0
- package/dist/editor-layout.js +479 -0
- package/dist/editor-patch-apply.d.ts +77 -0
- package/dist/editor-patch-apply.d.ts.map +1 -0
- package/dist/editor-patch-apply.js +122 -0
- package/dist/editor-session.d.ts +31 -0
- package/dist/editor-session.d.ts.map +1 -0
- package/dist/editor-session.js +75 -0
- package/dist/editor-test-generation.d.ts +104 -0
- package/dist/editor-test-generation.d.ts.map +1 -0
- package/dist/editor-test-generation.js +211 -0
- package/dist/evaluations.d.ts +75 -0
- package/dist/evaluations.d.ts.map +1 -0
- package/dist/evaluations.js +16 -0
- package/dist/evidence.d.ts +297 -0
- package/dist/evidence.d.ts.map +1 -0
- package/dist/evidence.js +9 -0
- package/dist/gateway.d.ts +129 -0
- package/dist/gateway.d.ts.map +1 -0
- package/dist/gateway.js +66 -0
- package/dist/harness.d.ts +274 -0
- package/dist/harness.d.ts.map +1 -0
- package/dist/harness.js +38 -0
- package/dist/index.d.ts +101 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +83 -0
- package/dist/language-service.d.ts +145 -0
- package/dist/language-service.d.ts.map +1 -0
- package/dist/language-service.js +161 -0
- package/dist/local-knowledge-large-document-validation.d.ts +7 -0
- package/dist/local-knowledge-large-document-validation.d.ts.map +1 -0
- package/dist/local-knowledge-large-document-validation.js +161 -0
- package/dist/local-knowledge-large-document.d.ts +113 -0
- package/dist/local-knowledge-large-document.d.ts.map +1 -0
- package/dist/local-knowledge-large-document.js +142 -0
- package/dist/local-knowledge-paths.d.ts +3 -0
- package/dist/local-knowledge-paths.d.ts.map +1 -0
- package/dist/local-knowledge-paths.js +65 -0
- package/dist/local-knowledge-records.d.ts +190 -0
- package/dist/local-knowledge-records.d.ts.map +1 -0
- package/dist/local-knowledge-records.js +36 -0
- package/dist/local-knowledge-schema-validation.d.ts +19 -0
- package/dist/local-knowledge-schema-validation.d.ts.map +1 -0
- package/dist/local-knowledge-schema-validation.js +115 -0
- package/dist/local-knowledge-schema.d.ts +14 -0
- package/dist/local-knowledge-schema.d.ts.map +1 -0
- package/dist/local-knowledge-schema.js +715 -0
- package/dist/local-knowledge-validation.d.ts +20 -0
- package/dist/local-knowledge-validation.d.ts.map +1 -0
- package/dist/local-knowledge-validation.js +487 -0
- package/dist/local-knowledge.d.ts +158 -0
- package/dist/local-knowledge.d.ts.map +1 -0
- package/dist/local-knowledge.js +63 -0
- package/dist/memory-audit-events.d.ts +73 -0
- package/dist/memory-audit-events.d.ts.map +1 -0
- package/dist/memory-audit-events.js +44 -0
- package/dist/memory-audit-validation.d.ts +4 -0
- package/dist/memory-audit-validation.d.ts.map +1 -0
- package/dist/memory-audit-validation.js +151 -0
- package/dist/memory-barrel.d.ts +15 -0
- package/dist/memory-barrel.d.ts.map +1 -0
- package/dist/memory-barrel.js +20 -0
- package/dist/memory-internal.d.ts +26 -0
- package/dist/memory-internal.d.ts.map +1 -0
- package/dist/memory-internal.js +104 -0
- package/dist/memory-operations-validation.d.ts +12 -0
- package/dist/memory-operations-validation.d.ts.map +1 -0
- package/dist/memory-operations-validation.js +267 -0
- package/dist/memory-operations.d.ts +156 -0
- package/dist/memory-operations.d.ts.map +1 -0
- package/dist/memory-operations.js +29 -0
- package/dist/memory-record-validation.d.ts +10 -0
- package/dist/memory-record-validation.d.ts.map +1 -0
- package/dist/memory-record-validation.js +101 -0
- package/dist/memory-records.d.ts +66 -0
- package/dist/memory-records.d.ts.map +1 -0
- package/dist/memory-records.js +22 -0
- package/dist/memory-retrieval-validation.d.ts +6 -0
- package/dist/memory-retrieval-validation.d.ts.map +1 -0
- package/dist/memory-retrieval-validation.js +108 -0
- package/dist/memory-validation.d.ts +31 -0
- package/dist/memory-validation.d.ts.map +1 -0
- package/dist/memory-validation.js +318 -0
- package/dist/memory-workflow-port.d.ts +26 -0
- package/dist/memory-workflow-port.d.ts.map +1 -0
- package/dist/memory-workflow-port.js +13 -0
- package/dist/memory.d.ts +81 -0
- package/dist/memory.d.ts.map +1 -0
- package/dist/memory.js +104 -0
- package/dist/prompt-enhancer-analyzer.d.ts +7 -0
- package/dist/prompt-enhancer-analyzer.d.ts.map +1 -0
- package/dist/prompt-enhancer-analyzer.js +745 -0
- package/dist/prompt-enhancer-bff.d.ts +67 -0
- package/dist/prompt-enhancer-bff.d.ts.map +1 -0
- package/dist/prompt-enhancer-bff.js +156 -0
- package/dist/prompt-enhancer-critic.d.ts +46 -0
- package/dist/prompt-enhancer-critic.d.ts.map +1 -0
- package/dist/prompt-enhancer-critic.js +35 -0
- package/dist/prompt-enhancer-grounding.d.ts +19 -0
- package/dist/prompt-enhancer-grounding.d.ts.map +1 -0
- package/dist/prompt-enhancer-grounding.js +235 -0
- package/dist/prompt-enhancer-safety.d.ts +66 -0
- package/dist/prompt-enhancer-safety.d.ts.map +1 -0
- package/dist/prompt-enhancer-safety.js +446 -0
- package/dist/prompt-enhancer-validation.d.ts +28 -0
- package/dist/prompt-enhancer-validation.d.ts.map +1 -0
- package/dist/prompt-enhancer-validation.js +931 -0
- package/dist/prompt-enhancer.d.ts +184 -0
- package/dist/prompt-enhancer.d.ts.map +1 -0
- package/dist/prompt-enhancer.js +350 -0
- package/dist/qualityIntelligence/assertNever.d.ts +2 -0
- package/dist/qualityIntelligence/assertNever.d.ts.map +1 -0
- package/dist/qualityIntelligence/assertNever.js +7 -0
- package/dist/qualityIntelligence/auditSummary.d.ts +25 -0
- package/dist/qualityIntelligence/auditSummary.d.ts.map +1 -0
- package/dist/qualityIntelligence/auditSummary.js +7 -0
- package/dist/qualityIntelligence/bffWire.d.ts +356 -0
- package/dist/qualityIntelligence/bffWire.d.ts.map +1 -0
- package/dist/qualityIntelligence/bffWire.js +22 -0
- package/dist/qualityIntelligence/coverageMap.d.ts +21 -0
- package/dist/qualityIntelligence/coverageMap.d.ts.map +1 -0
- package/dist/qualityIntelligence/coverageMap.js +29 -0
- package/dist/qualityIntelligence/editableRevision.d.ts +21 -0
- package/dist/qualityIntelligence/editableRevision.d.ts.map +1 -0
- package/dist/qualityIntelligence/editableRevision.js +8 -0
- package/dist/qualityIntelligence/evidenceAtom.d.ts +35 -0
- package/dist/qualityIntelligence/evidenceAtom.d.ts.map +1 -0
- package/dist/qualityIntelligence/evidenceAtom.js +29 -0
- package/dist/qualityIntelligence/exportBundle.d.ts +28 -0
- package/dist/qualityIntelligence/exportBundle.d.ts.map +1 -0
- package/dist/qualityIntelligence/exportBundle.js +46 -0
- package/dist/qualityIntelligence/handoffEnvelope.d.ts +23 -0
- package/dist/qualityIntelligence/handoffEnvelope.d.ts.map +1 -0
- package/dist/qualityIntelligence/handoffEnvelope.js +8 -0
- package/dist/qualityIntelligence/ids.d.ts +58 -0
- package/dist/qualityIntelligence/ids.d.ts.map +1 -0
- package/dist/qualityIntelligence/ids.js +93 -0
- package/dist/qualityIntelligence/index.d.ts +29 -0
- package/dist/qualityIntelligence/index.d.ts.map +1 -0
- package/dist/qualityIntelligence/index.js +20 -0
- package/dist/qualityIntelligence/reviewRecord.d.ts +19 -0
- package/dist/qualityIntelligence/reviewRecord.d.ts.map +1 -0
- package/dist/qualityIntelligence/reviewRecord.js +20 -0
- package/dist/qualityIntelligence/runPlanAndEvents.d.ts +84 -0
- package/dist/qualityIntelligence/runPlanAndEvents.d.ts.map +1 -0
- package/dist/qualityIntelligence/runPlanAndEvents.js +51 -0
- package/dist/qualityIntelligence/sourceEnvelope.d.ts +77 -0
- package/dist/qualityIntelligence/sourceEnvelope.d.ts.map +1 -0
- package/dist/qualityIntelligence/sourceEnvelope.js +118 -0
- package/dist/qualityIntelligence/testCaseCandidate.d.ts +21 -0
- package/dist/qualityIntelligence/testCaseCandidate.d.ts.map +1 -0
- package/dist/qualityIntelligence/testCaseCandidate.js +21 -0
- package/dist/qualityIntelligence/testQualityRubric.d.ts +17 -0
- package/dist/qualityIntelligence/testQualityRubric.d.ts.map +1 -0
- package/dist/qualityIntelligence/testQualityRubric.js +32 -0
- package/dist/qualityIntelligence/validationFinding.d.ts +48 -0
- package/dist/qualityIntelligence/validationFinding.d.ts.map +1 -0
- package/dist/qualityIntelligence/validationFinding.js +36 -0
- package/dist/relationships-validation.d.ts +13 -0
- package/dist/relationships-validation.d.ts.map +1 -0
- package/dist/relationships-validation.js +422 -0
- package/dist/relationships.d.ts +79 -0
- package/dist/relationships.d.ts.map +1 -0
- package/dist/relationships.js +307 -0
- package/dist/text-safety.d.ts +7 -0
- package/dist/text-safety.d.ts.map +1 -0
- package/dist/text-safety.js +58 -0
- package/dist/tools.d.ts +153 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +118 -0
- package/dist/unit-test-events.d.ts +87 -0
- package/dist/unit-test-events.d.ts.map +1 -0
- package/dist/unit-test-events.js +14 -0
- package/dist/verification-summary.d.ts +38 -0
- package/dist/verification-summary.d.ts.map +1 -0
- package/dist/verification-summary.js +5 -0
- package/dist/verification.d.ts +64 -0
- package/dist/verification.d.ts.map +1 -0
- package/dist/verification.js +13 -0
- package/dist/workflow-descriptor.d.ts +21 -0
- package/dist/workflow-descriptor.d.ts.map +1 -0
- package/dist/workflow-descriptor.js +8 -0
- package/dist/workflow-handoff.d.ts +69 -0
- package/dist/workflow-handoff.d.ts.map +1 -0
- package/dist/workflow-handoff.js +381 -0
- package/dist/workspace-descriptors.d.ts +21 -0
- package/dist/workspace-descriptors.d.ts.map +1 -0
- package/dist/workspace-descriptors.js +180 -0
- package/dist/workspace-ui.d.ts +119 -0
- package/dist/workspace-ui.d.ts.map +1 -0
- package/dist/workspace-ui.js +105 -0
- package/dist/workspace.d.ts +104 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +27 -0
- package/package.json +71 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
export interface WorkspaceUiRect {
|
|
2
|
+
readonly x: number;
|
|
3
|
+
readonly y: number;
|
|
4
|
+
readonly w: number;
|
|
5
|
+
readonly h: number;
|
|
6
|
+
}
|
|
7
|
+
export interface WorkspaceUiView {
|
|
8
|
+
readonly zoom: number;
|
|
9
|
+
readonly x: number;
|
|
10
|
+
readonly y: number;
|
|
11
|
+
}
|
|
12
|
+
export interface WorkspaceUiSelectionState {
|
|
13
|
+
readonly focusedWindowId: string | null;
|
|
14
|
+
readonly selectedWindowIds: readonly string[];
|
|
15
|
+
}
|
|
16
|
+
export type WorkspaceCommandAuthority = "user" | "user-confirm" | "agent-proposal" | "tool" | "model";
|
|
17
|
+
export type WorkspaceCommandCategory = "workspace" | "window" | "selection" | "navigation" | "review" | "verification" | "evidence" | "model";
|
|
18
|
+
export type WorkspaceKeyChordModifier = "cmd" | "ctrl" | "alt" | "shift";
|
|
19
|
+
export interface WorkspaceKeyChord {
|
|
20
|
+
readonly key: string;
|
|
21
|
+
readonly mod: readonly WorkspaceKeyChordModifier[];
|
|
22
|
+
}
|
|
23
|
+
export interface WorkspaceCommandContext {
|
|
24
|
+
readonly userConfirmed: boolean;
|
|
25
|
+
readonly sourceObjectId?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface WorkspaceCommand {
|
|
28
|
+
readonly id: string;
|
|
29
|
+
readonly label: string;
|
|
30
|
+
readonly category: WorkspaceCommandCategory;
|
|
31
|
+
readonly authority: WorkspaceCommandAuthority;
|
|
32
|
+
readonly shortcut?: WorkspaceKeyChord;
|
|
33
|
+
readonly disabled?: () => string | null;
|
|
34
|
+
readonly run: (ctx: WorkspaceCommandContext) => Promise<void> | void;
|
|
35
|
+
}
|
|
36
|
+
export interface WorkspaceUiWindowSnapshot {
|
|
37
|
+
readonly id: string;
|
|
38
|
+
readonly type: string;
|
|
39
|
+
readonly rect: WorkspaceUiRect;
|
|
40
|
+
readonly z: number;
|
|
41
|
+
}
|
|
42
|
+
export type WorkspaceUiAction = {
|
|
43
|
+
readonly kind: "ui.window.move";
|
|
44
|
+
readonly windowId: string;
|
|
45
|
+
readonly before: WorkspaceUiRect;
|
|
46
|
+
readonly after: WorkspaceUiRect;
|
|
47
|
+
} | {
|
|
48
|
+
readonly kind: "ui.window.resize";
|
|
49
|
+
readonly windowId: string;
|
|
50
|
+
readonly before: WorkspaceUiRect;
|
|
51
|
+
readonly after: WorkspaceUiRect;
|
|
52
|
+
} | {
|
|
53
|
+
readonly kind: "ui.window.zorder";
|
|
54
|
+
readonly windowId: string;
|
|
55
|
+
readonly before: number;
|
|
56
|
+
readonly after: number;
|
|
57
|
+
} | {
|
|
58
|
+
readonly kind: "ui.window.close";
|
|
59
|
+
readonly windowId: string;
|
|
60
|
+
readonly windowSnapshot: WorkspaceUiWindowSnapshot;
|
|
61
|
+
} | {
|
|
62
|
+
readonly kind: "ui.window.open";
|
|
63
|
+
readonly windowId: string;
|
|
64
|
+
readonly windowSnapshot: WorkspaceUiWindowSnapshot;
|
|
65
|
+
} | {
|
|
66
|
+
readonly kind: "ui.workspace.pan";
|
|
67
|
+
readonly before: WorkspaceUiView;
|
|
68
|
+
readonly after: WorkspaceUiView;
|
|
69
|
+
} | {
|
|
70
|
+
readonly kind: "ui.workspace.zoom";
|
|
71
|
+
readonly before: WorkspaceUiView;
|
|
72
|
+
readonly after: WorkspaceUiView;
|
|
73
|
+
} | {
|
|
74
|
+
readonly kind: "ui.workspace.fit";
|
|
75
|
+
readonly before: WorkspaceUiView;
|
|
76
|
+
readonly after: WorkspaceUiView;
|
|
77
|
+
} | {
|
|
78
|
+
readonly kind: "ui.panel.toggle";
|
|
79
|
+
readonly panel: string;
|
|
80
|
+
readonly before: boolean;
|
|
81
|
+
readonly after: boolean;
|
|
82
|
+
} | {
|
|
83
|
+
readonly kind: "ui.selection.change";
|
|
84
|
+
readonly before: WorkspaceUiSelectionState;
|
|
85
|
+
readonly after: WorkspaceUiSelectionState;
|
|
86
|
+
} | {
|
|
87
|
+
readonly kind: "ui.tab.switch";
|
|
88
|
+
readonly before: string;
|
|
89
|
+
readonly after: string;
|
|
90
|
+
};
|
|
91
|
+
export type WorkspaceUiActionKind = WorkspaceUiAction["kind"];
|
|
92
|
+
type AssertUiPrefixed<K extends `ui.${string}`> = K;
|
|
93
|
+
export type WorkspaceUiActionKindChecked = AssertUiPrefixed<WorkspaceUiActionKind>;
|
|
94
|
+
export interface WorkspaceUndoStackApi {
|
|
95
|
+
readonly canUndo: boolean;
|
|
96
|
+
readonly canRedo: boolean;
|
|
97
|
+
readonly undoLabel: string | null;
|
|
98
|
+
readonly redoLabel: string | null;
|
|
99
|
+
push(action: WorkspaceUiAction): void;
|
|
100
|
+
undo(): void;
|
|
101
|
+
redo(): void;
|
|
102
|
+
clear(): void;
|
|
103
|
+
}
|
|
104
|
+
export interface WorkspaceKeyboardShortcutBinding {
|
|
105
|
+
readonly commandId: string;
|
|
106
|
+
readonly chord: WorkspaceKeyChord;
|
|
107
|
+
}
|
|
108
|
+
export interface WorkspaceKeyboardShortcutConflict {
|
|
109
|
+
readonly chord: WorkspaceKeyChord;
|
|
110
|
+
readonly commandIds: readonly string[];
|
|
111
|
+
}
|
|
112
|
+
export declare const WORKSPACE_RESERVED_CHORDS: readonly WorkspaceKeyChord[];
|
|
113
|
+
export declare function workspaceActionLabel(action: WorkspaceUiAction): string;
|
|
114
|
+
export declare function workspaceChordKey(chord: WorkspaceKeyChord): string;
|
|
115
|
+
export declare function workspaceChordsEqual(a: WorkspaceKeyChord, b: WorkspaceKeyChord): boolean;
|
|
116
|
+
export declare function isWorkspaceReservedChord(chord: WorkspaceKeyChord): boolean;
|
|
117
|
+
export declare function workspaceInverseAction(action: WorkspaceUiAction): WorkspaceUiAction;
|
|
118
|
+
export {};
|
|
119
|
+
//# sourceMappingURL=workspace-ui.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-ui.d.ts","sourceRoot":"","sources":["../src/workspace-ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
// Epic #518 / Issue #527 — Workspace UI interaction substrate contracts.
|
|
2
|
+
//
|
|
3
|
+
// These types are consumed by the workspace UI (`@oscharko-dev/keiko-ui`)
|
|
4
|
+
// and by the registration-time descriptor validator that #528 lands. They
|
|
5
|
+
// have no runtime cost; they are the typed contract that makes the
|
|
6
|
+
// workspace's command + undo + keyboard substrate reviewable.
|
|
7
|
+
//
|
|
8
|
+
// The Action union is the load-bearing guarantee for ADR-0028. It declares
|
|
9
|
+
// constructors only for UI-state mutations. There is no Action variant for
|
|
10
|
+
// evidence creation, applied patches, verification records, model calls,
|
|
11
|
+
// tool execution, memory writes, workspace FS writes, or durable config
|
|
12
|
+
// writes — so the undo stack cannot record or reverse those classes. The
|
|
13
|
+
// refusal is compile-time, not runtime.
|
|
14
|
+
//
|
|
15
|
+
// File name `workspace-ui.ts` avoids a collision with the existing
|
|
16
|
+
// `workspace.ts` that owns the `@oscharko-dev/keiko-workspace` package
|
|
17
|
+
// types.
|
|
18
|
+
export const WORKSPACE_RESERVED_CHORDS = [
|
|
19
|
+
{ key: "t", mod: ["cmd"] },
|
|
20
|
+
{ key: "t", mod: ["ctrl"] },
|
|
21
|
+
{ key: "r", mod: ["cmd"] },
|
|
22
|
+
{ key: "r", mod: ["ctrl"] },
|
|
23
|
+
{ key: "n", mod: ["cmd", "shift"] },
|
|
24
|
+
{ key: "n", mod: ["ctrl", "shift"] },
|
|
25
|
+
{ key: "w", mod: ["cmd"] },
|
|
26
|
+
{ key: "w", mod: ["ctrl"] },
|
|
27
|
+
];
|
|
28
|
+
// ─── Pure helpers ─────────────────────────────────────────────────────────
|
|
29
|
+
// Exhaustive discriminated-union dispatch; one branch per WorkspaceUiAction kind
|
|
30
|
+
// is the pattern the type system requires.
|
|
31
|
+
// eslint-disable-next-line complexity
|
|
32
|
+
export function workspaceActionLabel(action) {
|
|
33
|
+
switch (action.kind) {
|
|
34
|
+
case "ui.window.move":
|
|
35
|
+
return "Move window";
|
|
36
|
+
case "ui.window.resize":
|
|
37
|
+
return "Resize window";
|
|
38
|
+
case "ui.window.zorder":
|
|
39
|
+
return "Reorder window";
|
|
40
|
+
case "ui.window.close":
|
|
41
|
+
return "Close window";
|
|
42
|
+
case "ui.window.open":
|
|
43
|
+
return "Open window";
|
|
44
|
+
case "ui.workspace.pan":
|
|
45
|
+
return "Pan workspace";
|
|
46
|
+
case "ui.workspace.zoom":
|
|
47
|
+
return "Zoom workspace";
|
|
48
|
+
case "ui.workspace.fit":
|
|
49
|
+
return "Fit workspace to view";
|
|
50
|
+
case "ui.panel.toggle":
|
|
51
|
+
return `Toggle ${action.panel} panel`;
|
|
52
|
+
case "ui.selection.change":
|
|
53
|
+
return "Change selection";
|
|
54
|
+
case "ui.tab.switch":
|
|
55
|
+
return "Switch tab";
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export function workspaceChordKey(chord) {
|
|
59
|
+
const sorted = [...chord.mod].sort();
|
|
60
|
+
return `${sorted.join("+")}|${chord.key.toLowerCase()}`;
|
|
61
|
+
}
|
|
62
|
+
export function workspaceChordsEqual(a, b) {
|
|
63
|
+
return workspaceChordKey(a) === workspaceChordKey(b);
|
|
64
|
+
}
|
|
65
|
+
export function isWorkspaceReservedChord(chord) {
|
|
66
|
+
for (const reserved of WORKSPACE_RESERVED_CHORDS) {
|
|
67
|
+
if (workspaceChordsEqual(chord, reserved))
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
// ─── Inverse-action helper for the undo stack ─────────────────────────────
|
|
73
|
+
//
|
|
74
|
+
// Pure function that computes the inverse of any ui.* action by swapping
|
|
75
|
+
// before/after. Lives next to the contracts so consumers and tests share
|
|
76
|
+
// the canonical inverse implementation.
|
|
77
|
+
// Exhaustive discriminated-union dispatch; one branch per WorkspaceUiAction kind
|
|
78
|
+
// is the pattern the type system requires.
|
|
79
|
+
// eslint-disable-next-line complexity
|
|
80
|
+
export function workspaceInverseAction(action) {
|
|
81
|
+
switch (action.kind) {
|
|
82
|
+
case "ui.window.move":
|
|
83
|
+
return { ...action, before: action.after, after: action.before };
|
|
84
|
+
case "ui.window.resize":
|
|
85
|
+
return { ...action, before: action.after, after: action.before };
|
|
86
|
+
case "ui.window.zorder":
|
|
87
|
+
return { ...action, before: action.after, after: action.before };
|
|
88
|
+
case "ui.window.close":
|
|
89
|
+
return { ...action, kind: "ui.window.open" };
|
|
90
|
+
case "ui.window.open":
|
|
91
|
+
return { ...action, kind: "ui.window.close" };
|
|
92
|
+
case "ui.workspace.pan":
|
|
93
|
+
return { ...action, before: action.after, after: action.before };
|
|
94
|
+
case "ui.workspace.zoom":
|
|
95
|
+
return { ...action, before: action.after, after: action.before };
|
|
96
|
+
case "ui.workspace.fit":
|
|
97
|
+
return { ...action, before: action.after, after: action.before };
|
|
98
|
+
case "ui.panel.toggle":
|
|
99
|
+
return { ...action, before: action.after, after: action.before };
|
|
100
|
+
case "ui.selection.change":
|
|
101
|
+
return { ...action, before: action.after, after: action.before };
|
|
102
|
+
case "ui.tab.switch":
|
|
103
|
+
return { ...action, before: action.after, after: action.before };
|
|
104
|
+
}
|
|
105
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
export type WorkspaceLanguage = "typescript" | "javascript";
|
|
2
|
+
export type TestFramework = "vitest" | "jest" | "mocha" | "unknown";
|
|
3
|
+
export interface WorkspaceInfo {
|
|
4
|
+
readonly root: string;
|
|
5
|
+
readonly name: string | undefined;
|
|
6
|
+
readonly version: string | undefined;
|
|
7
|
+
readonly testFramework: TestFramework;
|
|
8
|
+
readonly sourceDirs: readonly string[];
|
|
9
|
+
readonly testDirs: readonly string[];
|
|
10
|
+
readonly languages: readonly WorkspaceLanguage[];
|
|
11
|
+
readonly ignoreLines: readonly string[];
|
|
12
|
+
}
|
|
13
|
+
export interface DiscoveredFile {
|
|
14
|
+
readonly relativePath: string;
|
|
15
|
+
readonly sizeBytes: number;
|
|
16
|
+
}
|
|
17
|
+
export interface DiscoveryOptions {
|
|
18
|
+
readonly maxDepth: number;
|
|
19
|
+
readonly maxFiles: number;
|
|
20
|
+
readonly applyGitignore: boolean;
|
|
21
|
+
}
|
|
22
|
+
export declare const DEFAULT_DISCOVERY_OPTIONS: DiscoveryOptions;
|
|
23
|
+
export interface DiscoveryStats {
|
|
24
|
+
readonly discovered: number;
|
|
25
|
+
readonly denied: number;
|
|
26
|
+
readonly ignored: number;
|
|
27
|
+
}
|
|
28
|
+
export interface ReadOptions {
|
|
29
|
+
readonly maxBytes: number;
|
|
30
|
+
}
|
|
31
|
+
export declare const DEFAULT_READ_OPTIONS: ReadOptions;
|
|
32
|
+
export interface FileContent {
|
|
33
|
+
readonly relativePath: string;
|
|
34
|
+
readonly sizeBytes: number;
|
|
35
|
+
readonly text: string;
|
|
36
|
+
readonly truncated: boolean;
|
|
37
|
+
}
|
|
38
|
+
export type SelectionReason = "entrypoint" | "manifest" | "documentation" | "config" | "source" | "test";
|
|
39
|
+
export declare const SELECTION_REASON_PRIORITY: readonly SelectionReason[];
|
|
40
|
+
export interface ContextRequest {
|
|
41
|
+
readonly task: string | undefined;
|
|
42
|
+
readonly budgetBytes: number;
|
|
43
|
+
readonly maxBytesPerFile: number;
|
|
44
|
+
readonly discovery: DiscoveryOptions;
|
|
45
|
+
}
|
|
46
|
+
export declare const DEFAULT_CONTEXT_REQUEST: ContextRequest;
|
|
47
|
+
export interface ContextEntry {
|
|
48
|
+
readonly path: string;
|
|
49
|
+
readonly sizeBytes: number;
|
|
50
|
+
readonly excerptBytes: number;
|
|
51
|
+
readonly selectionReason: SelectionReason;
|
|
52
|
+
readonly truncated: boolean;
|
|
53
|
+
readonly excerpt: string;
|
|
54
|
+
}
|
|
55
|
+
export interface ContextPack {
|
|
56
|
+
readonly workspaceRoot: string;
|
|
57
|
+
readonly totalCandidates: number;
|
|
58
|
+
readonly selected: readonly ContextEntry[];
|
|
59
|
+
readonly usedBytes: number;
|
|
60
|
+
readonly budgetBytes: number;
|
|
61
|
+
readonly droppedForBudget: number;
|
|
62
|
+
}
|
|
63
|
+
export interface ContextEntrySummary {
|
|
64
|
+
readonly path: string;
|
|
65
|
+
readonly sizeBytes: number;
|
|
66
|
+
readonly excerptBytes: number;
|
|
67
|
+
readonly selectionReason: SelectionReason;
|
|
68
|
+
readonly truncated: boolean;
|
|
69
|
+
readonly excerpt: string;
|
|
70
|
+
}
|
|
71
|
+
export interface ContextPackSummary {
|
|
72
|
+
readonly totalCandidates: number;
|
|
73
|
+
readonly usedBytes: number;
|
|
74
|
+
readonly budgetBytes: number;
|
|
75
|
+
readonly droppedForBudget: number;
|
|
76
|
+
readonly entries: readonly ContextEntrySummary[];
|
|
77
|
+
}
|
|
78
|
+
export interface WorkspaceSummary {
|
|
79
|
+
readonly root: string;
|
|
80
|
+
readonly name: string | undefined;
|
|
81
|
+
readonly version: string | undefined;
|
|
82
|
+
readonly testFramework: TestFramework;
|
|
83
|
+
readonly sourceDirs: readonly string[];
|
|
84
|
+
readonly testDirs: readonly string[];
|
|
85
|
+
readonly languages: readonly WorkspaceLanguage[];
|
|
86
|
+
readonly counts: DiscoveryStats;
|
|
87
|
+
readonly context: ContextPackSummary | undefined;
|
|
88
|
+
}
|
|
89
|
+
export interface AuditEntry {
|
|
90
|
+
readonly path: string;
|
|
91
|
+
readonly sizeBytes: number;
|
|
92
|
+
readonly excerptBytes: number;
|
|
93
|
+
readonly selectionReason: SelectionReason;
|
|
94
|
+
readonly truncated: boolean;
|
|
95
|
+
}
|
|
96
|
+
export interface AuditSummary {
|
|
97
|
+
readonly workspaceRoot: string;
|
|
98
|
+
readonly totalCandidates: number;
|
|
99
|
+
readonly usedBytes: number;
|
|
100
|
+
readonly budgetBytes: number;
|
|
101
|
+
readonly droppedForBudget: number;
|
|
102
|
+
readonly entries: readonly AuditEntry[];
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=workspace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// All workspace-layer interfaces and the frozen default tables. No runtime logic lives
|
|
2
|
+
// here beyond the frozen constant tables the type layer must expose as values, mirroring
|
|
3
|
+
// the ADR-0003/ADR-0004 `types.ts` precedent. `readonly` everywhere; optional props are
|
|
4
|
+
// `| undefined` because exactOptionalPropertyTypes is on.
|
|
5
|
+
export const DEFAULT_DISCOVERY_OPTIONS = {
|
|
6
|
+
maxDepth: 12,
|
|
7
|
+
maxFiles: 5_000,
|
|
8
|
+
applyGitignore: true,
|
|
9
|
+
};
|
|
10
|
+
export const DEFAULT_READ_OPTIONS = {
|
|
11
|
+
maxBytes: 262_144,
|
|
12
|
+
};
|
|
13
|
+
// Priority order used to rank candidates: lower index wins. Ties break on lexical path.
|
|
14
|
+
export const SELECTION_REASON_PRIORITY = [
|
|
15
|
+
"entrypoint",
|
|
16
|
+
"manifest",
|
|
17
|
+
"documentation",
|
|
18
|
+
"config",
|
|
19
|
+
"source",
|
|
20
|
+
"test",
|
|
21
|
+
];
|
|
22
|
+
export const DEFAULT_CONTEXT_REQUEST = {
|
|
23
|
+
task: undefined,
|
|
24
|
+
budgetBytes: 65_536,
|
|
25
|
+
maxBytesPerFile: 8_192,
|
|
26
|
+
discovery: DEFAULT_DISCOVERY_OPTIONS,
|
|
27
|
+
};
|
package/package.json
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@oscharko-dev/keiko-contracts",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"license": "Apache-2.0",
|
|
6
|
+
"description": "Internal workspace package: shared Keiko contracts. Not published independently.",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"import": "./dist/index.js"
|
|
13
|
+
},
|
|
14
|
+
"./unit-test-events": {
|
|
15
|
+
"types": "./dist/unit-test-events.d.ts",
|
|
16
|
+
"import": "./dist/unit-test-events.js"
|
|
17
|
+
},
|
|
18
|
+
"./bug-investigation-events": {
|
|
19
|
+
"types": "./dist/bug-investigation-events.d.ts",
|
|
20
|
+
"import": "./dist/bug-investigation-events.js"
|
|
21
|
+
},
|
|
22
|
+
"./connected-context": {
|
|
23
|
+
"types": "./dist/connected-context.d.ts",
|
|
24
|
+
"import": "./dist/connected-context.js"
|
|
25
|
+
},
|
|
26
|
+
"./text-safety": {
|
|
27
|
+
"types": "./dist/text-safety.d.ts",
|
|
28
|
+
"import": "./dist/text-safety.js"
|
|
29
|
+
},
|
|
30
|
+
"./verification-summary": {
|
|
31
|
+
"types": "./dist/verification-summary.d.ts",
|
|
32
|
+
"import": "./dist/verification-summary.js"
|
|
33
|
+
},
|
|
34
|
+
"./workflow-handoff": {
|
|
35
|
+
"types": "./dist/workflow-handoff.d.ts",
|
|
36
|
+
"import": "./dist/workflow-handoff.js"
|
|
37
|
+
},
|
|
38
|
+
"./evidence": {
|
|
39
|
+
"types": "./dist/evidence.d.ts",
|
|
40
|
+
"import": "./dist/evidence.js"
|
|
41
|
+
},
|
|
42
|
+
"./bff-wire": {
|
|
43
|
+
"types": "./dist/bff-wire.d.ts",
|
|
44
|
+
"import": "./dist/bff-wire.js"
|
|
45
|
+
},
|
|
46
|
+
"./memory": {
|
|
47
|
+
"types": "./dist/memory-barrel.d.ts",
|
|
48
|
+
"import": "./dist/memory-barrel.js"
|
|
49
|
+
},
|
|
50
|
+
"./memory-workflow-port": {
|
|
51
|
+
"types": "./dist/memory-workflow-port.d.ts",
|
|
52
|
+
"import": "./dist/memory-workflow-port.js"
|
|
53
|
+
},
|
|
54
|
+
"./memory-audit-events": {
|
|
55
|
+
"types": "./dist/memory-audit-events.d.ts",
|
|
56
|
+
"import": "./dist/memory-audit-events.js"
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
"scripts": {
|
|
60
|
+
"build": "tsc -b tsconfig.json",
|
|
61
|
+
"typecheck": "tsc -b tsconfig.json",
|
|
62
|
+
"test": "vitest run"
|
|
63
|
+
},
|
|
64
|
+
"files": [
|
|
65
|
+
"dist"
|
|
66
|
+
],
|
|
67
|
+
"sideEffects": false,
|
|
68
|
+
"engines": {
|
|
69
|
+
"node": ">=22"
|
|
70
|
+
}
|
|
71
|
+
}
|