@quantiya/codevibe-claude-plugin 2.0.17 → 2.0.19
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/.claude-plugin/plugin.json +1 -1
- package/dist/server.js +18 -18
- package/node_modules/@quantiya/codevibe-core/dist/__tests__/mobile-prompt-input.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/appsync/__tests__/group-operation-result.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/appsync/appsync-client.d.ts +155 -0
- package/node_modules/@quantiya/codevibe-core/dist/appsync/queries.d.ts +14 -0
- package/node_modules/@quantiya/codevibe-core/dist/crypto/__tests__/crypto-service.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/crypto/crypto-service.d.ts +7 -0
- package/node_modules/@quantiya/codevibe-core/dist/index.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/index.js +525 -304
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/local-executor-impl.d.ts +34 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/snapshot-merge.d.ts +6 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/types.d.ts +6 -0
- package/node_modules/@quantiya/codevibe-core/dist/mobile-prompt-input.d.ts +13 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/decision-attempt-live-handoff.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/decision-attempt-recovery.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/decision-attempt-session-serialization.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/decision-attempt.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/decision-effect.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/gate-resolution-event.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/supervision-catch-up.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/workspace-outcome.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/workspace-terminal-coordinator.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cli.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cli.js +5621 -1758
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/components/ConversationPane.d.ts +2 -1
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/components/GatePromptEntry.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/decision-attempt-recovery.d.ts +70 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/decision-attempt.d.ts +211 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/decision-effect.d.ts +39 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/emit-shell-event.d.ts +20 -2
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/gate-decision-submit.d.ts +20 -2
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/gate-prompts.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/gate-resolution-event.d.ts +10 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/index.d.ts +6 -2
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/quorum-loop.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/supervision-catch-up.d.ts +7 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/types.d.ts +57 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/workspace-outcome.d.ts +20 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/workspace-terminal-coordinator.d.ts +114 -0
- package/node_modules/@quantiya/codevibe-core/dist/types/events.d.ts +7 -0
- package/node_modules/@quantiya/codevibe-core/dist/types/session.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/package.json +1 -1
- package/node_modules/fs-ext/build/Makefile +1 -1
- package/node_modules/fs-ext/build/Release/fs_ext.node +0 -0
- package/node_modules/fs-ext/build/config.gypi +0 -2
- package/package.json +2 -2
|
@@ -115,6 +115,16 @@ export type SubstrateEngager = (input: {
|
|
|
115
115
|
}) => Promise<SubstrateEngageResult>;
|
|
116
116
|
/** Backend lease is 15 minutes; three renewal opportunities fit inside it. */
|
|
117
117
|
export declare const TEAM_TRACK_HEARTBEAT_INTERVAL_MS: number;
|
|
118
|
+
export interface SnapshotGroupPromotionAuthority {
|
|
119
|
+
taskGroupId: string;
|
|
120
|
+
groupGeneration: number;
|
|
121
|
+
anchorId: string;
|
|
122
|
+
anchorTimestamp: string;
|
|
123
|
+
manifestHash: string;
|
|
124
|
+
memberCount: number;
|
|
125
|
+
operationHash: string;
|
|
126
|
+
operationToken: string;
|
|
127
|
+
}
|
|
118
128
|
export interface LocalExecutorImplDeps {
|
|
119
129
|
sessionId: string;
|
|
120
130
|
initialScope?: AuthorityScope;
|
|
@@ -310,6 +320,21 @@ export interface LocalExecutorImplDeps {
|
|
|
310
320
|
readSnapshotPromotion?: (taskGroupId: string) => Promise<SnapshotPromotionJournalV1 | null>;
|
|
311
321
|
prepareSnapshotPromotion?: (taskGroupId: string, operationHash: string, files: readonly ReviewedShadowDiffFile[], workspaceRootAuthority: WorkspaceRootAuthority) => Promise<void>;
|
|
312
322
|
markSnapshotPromotionApplied?: (taskGroupId: string, operationHash: string) => Promise<void>;
|
|
323
|
+
/** Prove a prepared v2 promotion never mutated the tree, then retire it. */
|
|
324
|
+
rejectSnapshotPromotionNoChange?: (taskGroupId: string, operationHash: string) => Promise<void>;
|
|
325
|
+
/** Reserve + begin the backend group PROMOTE before the first user-tree write. */
|
|
326
|
+
authorizeSnapshotPromotion?: (input: {
|
|
327
|
+
taskGroupId: string;
|
|
328
|
+
groupGeneration: number;
|
|
329
|
+
localOperationHash: string;
|
|
330
|
+
}) => Promise<SnapshotGroupPromotionAuthority>;
|
|
331
|
+
/** Commit the backend promotion, then release the prepared outcome to its outbox. */
|
|
332
|
+
completeSnapshotPromotion?: (input: {
|
|
333
|
+
authority: SnapshotGroupPromotionAuthority;
|
|
334
|
+
localOperationHash: string;
|
|
335
|
+
completionKind: 'FRESH_APPLIED' | 'RECONCILED_APPLIED' | 'ROLLED_BACK_NO_CHANGE';
|
|
336
|
+
filesApplied: number;
|
|
337
|
+
}) => Promise<void>;
|
|
313
338
|
/** Optional shadow lifecycle hooks shared with implementor workspaces. */
|
|
314
339
|
snapshotShadowEnv?: ShadowEnv;
|
|
315
340
|
/** Mark a successfully accepted group terminal and reclaim its bundle state. */
|
|
@@ -671,6 +696,15 @@ export declare class LocalExecutorImpl implements LocalExecutor {
|
|
|
671
696
|
* A thrown exit never returns → the wrapper's boolean stays `false` → freeze.
|
|
672
697
|
*/
|
|
673
698
|
private runMergeGateInner;
|
|
699
|
+
/**
|
|
700
|
+
* Submit one signed local MergeGate classification and return only an
|
|
701
|
+
* authoritative hosted outcome. `null` means the same-key submit/replay did
|
|
702
|
+
* not converge; callers must retain local recovery authority and withhold UI
|
|
703
|
+
* convergence. For protocol v2 PASS this runs before the first user-tree
|
|
704
|
+
* mutation, because the server can derive a policy failure that outranks the
|
|
705
|
+
* desktop's local PASS.
|
|
706
|
+
*/
|
|
707
|
+
private submitHostedMergeGateVerdict;
|
|
674
708
|
private submitMergeGateVerdictWithDeadline;
|
|
675
709
|
/**
|
|
676
710
|
* PHASE-589+469 W1 (§5.A / §5.C / #TC-2 / #TC-3) — drive the desktop CLI
|
|
@@ -70,6 +70,12 @@ export interface RunSnapshotMergeGateArgs {
|
|
|
70
70
|
persistPreImages: (entries: PromoteManifestInput[]) => Promise<void>;
|
|
71
71
|
readPromotion: () => Promise<SnapshotPromotionJournalV1 | null>;
|
|
72
72
|
preparePromotion: (operationHash: string, files: readonly ReviewedShadowDiffFile[], workspaceRootAuthority: WorkspaceRootAuthority) => Promise<void>;
|
|
73
|
+
/**
|
|
74
|
+
* Backend + local terminal authority barrier. Called only after the local
|
|
75
|
+
* PREPARED journal is durable and before the first user-tree write, including
|
|
76
|
+
* journal replay after a crash.
|
|
77
|
+
*/
|
|
78
|
+
beforePromotionMutation?: (operationHash: string, files: readonly ReviewedShadowDiffFile[], workspaceRootAuthority: WorkspaceRootAuthority) => Promise<void>;
|
|
73
79
|
markPromotionApplied: (operationHash: string) => Promise<void>;
|
|
74
80
|
timeoutMs?: number;
|
|
75
81
|
/** @internal deterministic merge-planning aggregate-work ceiling for tests. */
|
|
@@ -179,6 +179,10 @@ export interface TrackAssignedPayload {
|
|
|
179
179
|
*/
|
|
180
180
|
export interface MergeGateDispatchPayload {
|
|
181
181
|
task_group_id: string;
|
|
182
|
+
/** Immutable group decision protocol; absent legacy packets are v1. */
|
|
183
|
+
decision_protocol_version?: 1 | 2;
|
|
184
|
+
/** Immutable terminal generation; required on v2, legacy v1 defaults to 1. */
|
|
185
|
+
group_generation?: number;
|
|
182
186
|
merge_gate_id: string;
|
|
183
187
|
/**
|
|
184
188
|
* §12 Q1 — names CP-3 verification-runner wrapper(s). On the wire this is the
|
|
@@ -201,6 +205,8 @@ export interface MergeGateDispatchPayload {
|
|
|
201
205
|
*/
|
|
202
206
|
export interface TaskGroupHaltedPayload {
|
|
203
207
|
task_group_id: string;
|
|
208
|
+
/** Immutable server stamp; only v1 groups use a desktop-synthesized prompt. */
|
|
209
|
+
decision_protocol_version?: 1 | 2;
|
|
204
210
|
halt_reason: string;
|
|
205
211
|
per_track_status: {
|
|
206
212
|
track_index: number;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type MobilePromptInputIntent = {
|
|
2
|
+
kind: 'option';
|
|
3
|
+
option: string;
|
|
4
|
+
followUpText?: string;
|
|
5
|
+
} | {
|
|
6
|
+
kind: 'continue_conversation';
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Separate explicit numbered prompt answers from normal conversation input.
|
|
10
|
+
* Only numbers advertised by the current prompt are option answers; every
|
|
11
|
+
* other value continues the conversation and therefore supersedes that prompt.
|
|
12
|
+
*/
|
|
13
|
+
export declare function classifyMobilePromptInput(content: string, validOptionNumbers: readonly string[]): MobilePromptInputIntent;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -9,6 +9,7 @@ import type { PlannerAdapter, PlannerInput, PlannerDecision, PlannerProbeResult
|
|
|
9
9
|
import { type LocalExecutor, type AuthorityScope, type EmitShellEventFn as LEEmitShellEventFn } from '../local-executor';
|
|
10
10
|
import { type EngineGroupState } from '../local-executor';
|
|
11
11
|
import type { TeamTapEvent } from './index';
|
|
12
|
+
import type { WorkspaceOutcomeSinkTap } from './workspace-terminal-coordinator';
|
|
12
13
|
import type { GroupDecisionSubmitDeps } from './gate-decision-submit';
|
|
13
14
|
import { QuorumLoop } from './quorum-loop';
|
|
14
15
|
import type { TaskProgressEvent } from './task-progress';
|
|
@@ -237,6 +238,8 @@ export declare function buildProductionPlannerStack(appsyncClient: AppSyncClient
|
|
|
237
238
|
};
|
|
238
239
|
export interface BuildTeamLocalExecutorResult {
|
|
239
240
|
localExecutor: LocalExecutor;
|
|
241
|
+
/** Shell-installed writer-outcome coordinator used by v2 team promotion. */
|
|
242
|
+
workspaceOutcomeTap: WorkspaceOutcomeSinkTap;
|
|
240
243
|
teamShellEventTap: {
|
|
241
244
|
fn: (args: TeamTapEvent) => void;
|
|
242
245
|
};
|