@lesliechan721/aw 0.1.0-beta.13 → 0.1.0-beta.14
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/src/commands/catalog-dev-source.d.ts +31 -0
- package/dist/src/commands/catalog-dev-source.js +165 -5
- package/dist/src/commands/catalog-dev-source.js.map +1 -1
- package/dist/src/commands/catalog-generation.d.ts +5 -0
- package/dist/src/commands/catalog-generation.js.map +1 -1
- package/dist/src/commands/catalog-publication-journal.d.ts +12 -0
- package/dist/src/commands/catalog-publication-journal.js +77 -0
- package/dist/src/commands/catalog-publication-journal.js.map +1 -1
- package/dist/src/commands/catalog-store.d.ts +5 -0
- package/dist/src/commands/catalog-store.js +19 -1
- package/dist/src/commands/catalog-store.js.map +1 -1
- package/dist/src/commands/dependency-operation-plan.d.ts +7 -0
- package/dist/src/commands/dependency-operation-plan.js +63 -27
- package/dist/src/commands/dependency-operation-plan.js.map +1 -1
- package/dist/src/commands/rebuild-command.d.ts +22 -8
- package/dist/src/commands/rebuild-command.js +562 -250
- package/dist/src/commands/rebuild-command.js.map +1 -1
- package/dist/src/commands/reconcile-operation-plan.d.ts +11 -9
- package/dist/src/commands/reconcile-operation-plan.js +25 -6
- package/dist/src/commands/reconcile-operation-plan.js.map +1 -1
- package/dist/src/commands/write-commands.d.ts +2 -1
- package/dist/src/commands/write-commands.js +24 -1
- package/dist/src/commands/write-commands.js.map +1 -1
- package/dist/src/tui/catalog-management-screens.d.ts +45 -0
- package/dist/src/tui/catalog-management-screens.js +25 -0
- package/dist/src/tui/catalog-management-screens.js.map +1 -0
- package/dist/src/tui/catalog-management.d.ts +240 -0
- package/dist/src/tui/catalog-management.js +856 -0
- package/dist/src/tui/catalog-management.js.map +1 -0
- package/dist/src/tui/catalog-sources/session.d.ts +5 -0
- package/dist/src/tui/catalog-sources/session.js +49 -1
- package/dist/src/tui/catalog-sources/session.js.map +1 -1
- package/dist/src/tui/catalog-sources/types.d.ts +11 -0
- package/dist/src/tui/console-app-v4.d.ts +1 -1
- package/dist/src/tui/console-app-v4.js +2184 -564
- package/dist/src/tui/console-app-v4.js.map +1 -1
- package/dist/src/tui/controller-runtime.js +609 -13
- package/dist/src/tui/controller-runtime.js.map +1 -1
- package/dist/src/tui/controller.d.ts +121 -6
- package/dist/src/tui/controller.js +667 -17
- package/dist/src/tui/controller.js.map +1 -1
- package/dist/src/tui/dependency-graph.d.ts +67 -0
- package/dist/src/tui/dependency-graph.js +399 -0
- package/dist/src/tui/dependency-graph.js.map +1 -0
- package/dist/src/tui/lifecycle-action-view.js +4 -2
- package/dist/src/tui/lifecycle-action-view.js.map +1 -1
- package/dist/src/tui/model.d.ts +37 -0
- package/dist/src/tui/model.js +164 -7
- package/dist/src/tui/model.js.map +1 -1
- package/dist/src/tui/operation-review-planner.js +244 -8
- package/dist/src/tui/operation-review-planner.js.map +1 -1
- package/dist/src/tui/plugin-write-task.d.ts +66 -0
- package/dist/src/tui/plugin-write-task.js +265 -0
- package/dist/src/tui/plugin-write-task.js.map +1 -0
- package/dist/src/tui/router.d.ts +38 -2
- package/dist/src/tui/router.js.map +1 -1
- package/dist/src/tui/screen-registry.d.ts +105 -6
- package/dist/src/tui/screen-registry.js +31 -4
- package/dist/src/tui/screen-registry.js.map +1 -1
- package/dist/src/utils/catalog-generation-service.d.ts +4 -0
- package/dist/src/utils/catalog-generation-service.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type CatalogDevManagementViewModel, type CatalogManagementIntent, type CatalogManagementReviewEvidence, type CatalogManagementService, type CatalogPublicationManagementViewModel, type CatalogStoreManagementViewModel, type CatalogValidationViewModel, type CatalogWorkspaceManagementViewModel } from './catalog-management.js';
|
|
1
2
|
import type { CatalogActivationMode, CatalogSource, CatalogGenerationActiveV1, CatalogGenerationCandidateEvidence, CatalogGenerationSyncResult, CatalogSourceImpact, DependencyScopeOverride, PlatformName, Scope } from '../types.js';
|
|
2
3
|
import type { PortableReview } from '../portable/commands.js';
|
|
3
4
|
import type { CatalogSourceUpdate } from '../utils/catalog-sources.js';
|
|
@@ -15,9 +16,11 @@ import { type ConfigInvalidStoreEvidence, type PluginInstallFilter, type Portabl
|
|
|
15
16
|
import { type CatalogSourceGenerationViewModel } from './catalog-generation.js';
|
|
16
17
|
import type { CatalogSourceFreshnessViewModel } from './catalog-freshness.js';
|
|
17
18
|
import type { CatalogSessionReusableCandidate } from './catalog-sources/types.js';
|
|
18
|
-
type
|
|
19
|
+
import { type PluginWriteTaskBlockedTarget, type PluginWriteTaskCandidate, type PluginWriteTaskCause, type PluginWriteTaskGoal, type PluginWriteTaskIntent, type PluginWriteTaskTarget } from './plugin-write-task.js';
|
|
20
|
+
export type { PluginWriteTaskBlockReason, PluginWriteTaskCandidate, PluginWriteTaskExpectedUpdate, PluginWriteTaskGoal, PluginWriteTaskIntent, PluginWriteTaskMethod, PluginWriteTaskTarget, } from './plugin-write-task.js';
|
|
21
|
+
type CatalogActivationBlockReason = 'configDraft' | 'sourceDraft' | 'batchDraft' | 'catalogDraft' | 'portableDraft' | 'activeReview' | 'reviewPreparation' | 'writeProgress';
|
|
19
22
|
export interface ExternalDraftState {
|
|
20
|
-
kind: 'configDraft' | 'sourceDraft' | 'batchDraft';
|
|
23
|
+
kind: 'configDraft' | 'sourceDraft' | 'batchDraft' | 'catalogDraft';
|
|
21
24
|
owner: string;
|
|
22
25
|
flowId?: string;
|
|
23
26
|
revision: number;
|
|
@@ -72,6 +75,36 @@ export interface PluginWriteBatchExecutionResult extends RebuildCommandResult {
|
|
|
72
75
|
requestedPluginIds: string[];
|
|
73
76
|
groupResults: PluginWriteBatchGroupResult[];
|
|
74
77
|
}
|
|
78
|
+
export interface PluginWriteTaskSourceEvidence {
|
|
79
|
+
sourceId: string;
|
|
80
|
+
sourceIdentity: string;
|
|
81
|
+
requestedTargets: PluginWriteTaskTarget[];
|
|
82
|
+
causes: PluginWriteTaskCause[];
|
|
83
|
+
preview: RebuildCommandResult;
|
|
84
|
+
executable: boolean;
|
|
85
|
+
}
|
|
86
|
+
export interface PluginWriteTaskEvidence extends OperationEvidence {
|
|
87
|
+
taskPlan: {
|
|
88
|
+
goal: PluginWriteTaskGoal;
|
|
89
|
+
requestedTargets: PluginWriteTaskTarget[];
|
|
90
|
+
executableTargets: PluginWriteTaskTarget[];
|
|
91
|
+
causes: PluginWriteTaskCause[];
|
|
92
|
+
blockedTargets: PluginWriteTaskBlockedTarget[];
|
|
93
|
+
sources: PluginWriteTaskSourceEvidence[];
|
|
94
|
+
targetFingerprint: string;
|
|
95
|
+
planFingerprint: string;
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
export interface PluginWriteTaskSourceResult {
|
|
99
|
+
sourceId: string;
|
|
100
|
+
sourceIdentity: string;
|
|
101
|
+
requestedTargets: PluginWriteTaskTarget[];
|
|
102
|
+
result: RebuildCommandResult;
|
|
103
|
+
}
|
|
104
|
+
export interface PluginWriteTaskExecutionResult extends RebuildCommandResult {
|
|
105
|
+
taskPlan: PluginWriteTaskEvidence['taskPlan'];
|
|
106
|
+
sourceResults: PluginWriteTaskSourceResult[];
|
|
107
|
+
}
|
|
75
108
|
export type OperationKind = OperationIntent['kind'];
|
|
76
109
|
export interface IssueOrigin {
|
|
77
110
|
issueId: string;
|
|
@@ -94,11 +127,17 @@ export type OperationIntent = {
|
|
|
94
127
|
platform: PlatformName | 'both';
|
|
95
128
|
scope: Scope;
|
|
96
129
|
dependencyScopeOverrides?: DependencyScopeOverride[];
|
|
130
|
+
expectedUpdate?: {
|
|
131
|
+
installedVersion: string;
|
|
132
|
+
activeVersion: string;
|
|
133
|
+
sourceIdentity: string;
|
|
134
|
+
generationKey: string;
|
|
135
|
+
};
|
|
97
136
|
recoveryDescription?: string;
|
|
98
137
|
force?: boolean;
|
|
99
138
|
scriptTimeoutMs?: number;
|
|
100
139
|
originIssue?: IssueOrigin;
|
|
101
|
-
} | PluginWriteBatchIntent | {
|
|
140
|
+
} | PluginWriteBatchIntent | PluginWriteTaskIntent | {
|
|
102
141
|
kind: 'portableInstall';
|
|
103
142
|
pluginId: string;
|
|
104
143
|
scope: Scope;
|
|
@@ -170,7 +209,7 @@ export type OperationIntent = {
|
|
|
170
209
|
setPrimaryAfterActivation?: boolean;
|
|
171
210
|
} | {
|
|
172
211
|
kind: 'catalogSourcesRecovery';
|
|
173
|
-
};
|
|
212
|
+
} | CatalogManagementIntent;
|
|
174
213
|
export interface OperationEvidence {
|
|
175
214
|
catalog: {
|
|
176
215
|
configDigest: string;
|
|
@@ -261,6 +300,7 @@ export interface OperationEvidence {
|
|
|
261
300
|
}>['sourceMutation'];
|
|
262
301
|
setPrimaryAfterActivation?: boolean;
|
|
263
302
|
};
|
|
303
|
+
catalogManagement?: CatalogManagementReviewEvidence;
|
|
264
304
|
portable?: PortableReview;
|
|
265
305
|
}
|
|
266
306
|
export interface OperationReviewChange {
|
|
@@ -282,6 +322,7 @@ export interface OperationReviewModel {
|
|
|
282
322
|
kind: 'sourceMutation';
|
|
283
323
|
}>['action'];
|
|
284
324
|
pluginAction?: PluginWriteOperation;
|
|
325
|
+
taskGoal?: PluginWriteTaskGoal;
|
|
285
326
|
originIssue?: IssueOrigin;
|
|
286
327
|
title: string;
|
|
287
328
|
description: string;
|
|
@@ -311,6 +352,13 @@ export interface OperationReviewModel {
|
|
|
311
352
|
groupCount: number;
|
|
312
353
|
executableGroupCount: number;
|
|
313
354
|
};
|
|
355
|
+
task?: {
|
|
356
|
+
goal: PluginWriteTaskGoal;
|
|
357
|
+
requestedTargetCount: number;
|
|
358
|
+
executableTargetCount: number;
|
|
359
|
+
blockedTargetCount: number;
|
|
360
|
+
causeCount: number;
|
|
361
|
+
};
|
|
314
362
|
}
|
|
315
363
|
export type ReviewPreparationStageId = 'refresh' | 'validate' | 'status' | 'catalog' | 'inventory' | 'dependencyPlan' | 'config' | 'portable' | 'evidence';
|
|
316
364
|
export interface ReviewPreparationStage {
|
|
@@ -395,6 +443,24 @@ export interface OperationResultSummary {
|
|
|
395
443
|
catalogAction?: Extract<OperationIntent, {
|
|
396
444
|
kind: 'catalogGeneration';
|
|
397
445
|
}>['action'];
|
|
446
|
+
catalogManagement?: {
|
|
447
|
+
action: CatalogManagementIntent['action'];
|
|
448
|
+
state: 'succeeded' | 'partial';
|
|
449
|
+
catalogVersion?: string;
|
|
450
|
+
planDigest?: string;
|
|
451
|
+
store?: {
|
|
452
|
+
deletedEntries: number;
|
|
453
|
+
deletedBytes: number;
|
|
454
|
+
retainedEntries: number;
|
|
455
|
+
};
|
|
456
|
+
publication?: {
|
|
457
|
+
catalogVersion: string;
|
|
458
|
+
planDigest: string;
|
|
459
|
+
state: 'prepared' | 'uncertain' | 'published';
|
|
460
|
+
remote: string;
|
|
461
|
+
branch: string;
|
|
462
|
+
};
|
|
463
|
+
};
|
|
398
464
|
catalogGeneration?: Pick<CatalogGenerationSyncResult, 'activeChanged' | 'outcome'> & {
|
|
399
465
|
catalogVersion: string;
|
|
400
466
|
};
|
|
@@ -415,9 +481,17 @@ export interface OperationResultSummary {
|
|
|
415
481
|
batch?: {
|
|
416
482
|
requestedPluginIds: string[];
|
|
417
483
|
failedRequestedPluginIds: string[];
|
|
484
|
+
rootResults: PluginWriteBatchRootResult[];
|
|
418
485
|
retryTargets?: PluginWriteBatchTarget[];
|
|
419
486
|
groupCount: number;
|
|
420
487
|
};
|
|
488
|
+
task?: {
|
|
489
|
+
goal: PluginWriteTaskGoal;
|
|
490
|
+
requestedTargets: PluginWriteTaskTarget[];
|
|
491
|
+
rootResults: PluginWriteTaskRootResult[];
|
|
492
|
+
retryTargets?: PluginWriteTaskTarget[];
|
|
493
|
+
blockedTargets: PluginWriteTaskBlockedTarget[];
|
|
494
|
+
};
|
|
421
495
|
portable?: {
|
|
422
496
|
selectedSkills: string[];
|
|
423
497
|
agentMode: 'automatic' | 'explicit';
|
|
@@ -445,6 +519,31 @@ export interface OperationResultSummary {
|
|
|
445
519
|
effects?: OperationEffectFacts;
|
|
446
520
|
}>;
|
|
447
521
|
}
|
|
522
|
+
export interface PluginWriteTaskRootResult {
|
|
523
|
+
pluginId: string;
|
|
524
|
+
state: 'completed' | 'kept' | 'partial' | 'failed' | 'notStarted' | 'blocked';
|
|
525
|
+
causeKeys: string[];
|
|
526
|
+
targets: Array<{
|
|
527
|
+
pluginId?: string;
|
|
528
|
+
platform: PlatformName;
|
|
529
|
+
scope: Scope;
|
|
530
|
+
state: 'completed' | 'kept' | 'failed' | 'skipped';
|
|
531
|
+
relation?: 'requested' | 'direct' | 'transitive';
|
|
532
|
+
errorCode?: string;
|
|
533
|
+
}>;
|
|
534
|
+
}
|
|
535
|
+
export interface PluginWriteBatchRootResult {
|
|
536
|
+
pluginId: string;
|
|
537
|
+
state: 'completed' | 'kept' | 'partial' | 'failed' | 'notStarted';
|
|
538
|
+
targets: Array<{
|
|
539
|
+
pluginId: string;
|
|
540
|
+
platform: PlatformName;
|
|
541
|
+
scope: Scope;
|
|
542
|
+
state: 'completed' | 'kept' | 'failed' | 'skipped';
|
|
543
|
+
relation: 'requested';
|
|
544
|
+
errorCode?: string;
|
|
545
|
+
}>;
|
|
546
|
+
}
|
|
448
547
|
export interface PluginOperationProgressLine {
|
|
449
548
|
pluginId: string;
|
|
450
549
|
platform: PlatformName;
|
|
@@ -492,6 +591,7 @@ export interface SourceReferenceSummaryViewModel {
|
|
|
492
591
|
}>;
|
|
493
592
|
}
|
|
494
593
|
export interface TuiControllerDependencies {
|
|
594
|
+
catalogManagement?: CatalogManagementService;
|
|
495
595
|
beginCatalogSession?: (options?: {
|
|
496
596
|
reuseValidatedGenerations?: boolean;
|
|
497
597
|
}) => void;
|
|
@@ -579,6 +679,7 @@ export declare class TuiConfigInvalidStoreError extends Error {
|
|
|
579
679
|
}
|
|
580
680
|
export declare function pluginWriteBatchFailedRequestedTargets(execution: PluginWriteBatchExecutionResult): PluginWriteBatchTarget[];
|
|
581
681
|
export declare function pluginWriteBatchFailedRequestedPluginIds(execution: PluginWriteBatchExecutionResult): string[];
|
|
682
|
+
export declare function pluginWriteTaskFailedRequestedTargets(execution: PluginWriteTaskExecutionResult): PluginWriteTaskTarget[];
|
|
582
683
|
export declare function operationEvidenceFingerprint(evidence: OperationEvidence): string;
|
|
583
684
|
export declare function operationEvidenceMatches(expected: OperationEvidence, current: OperationEvidence): boolean;
|
|
584
685
|
export declare function userIssueKey(issue: Pick<UserIssueViewModel, 'category' | 'pluginId' | 'dependencyPluginId' | 'dependencyPlatform' | 'dependencyScope' | 'dependencyProject' | 'sourceId' | 'sourceIdentity' | 'platform' | 'scope'>): string;
|
|
@@ -657,6 +758,7 @@ export declare class TuiController {
|
|
|
657
758
|
}): PluginListItemViewModel[];
|
|
658
759
|
getPluginOverview(pluginId: string): PluginListItemViewModel | undefined;
|
|
659
760
|
getPluginDependencyOverview(pluginId: string): PluginDependencyOverviewViewModel | undefined;
|
|
761
|
+
listPluginDependencyOverviews(): PluginDependencyOverviewViewModel[];
|
|
660
762
|
getBlockingDependents(pluginId: string, platform: PlatformName, scope: Scope): PluginDependencyOverviewViewModel['dependents'];
|
|
661
763
|
getPlatformPlacement(pluginId: string, platform: PlatformName): PluginListItemViewModel['installedPlacements'][number] | undefined;
|
|
662
764
|
listInstallTargets(pluginId: string, scope: Scope): InstallTargetOption[];
|
|
@@ -676,9 +778,13 @@ export declare class TuiController {
|
|
|
676
778
|
setExternalDraftState(states?: ExternalDraftState[]): void;
|
|
677
779
|
beginPluginWriteBatch(): void;
|
|
678
780
|
startPluginWriteBatchReview(intent: PluginWriteBatchIntent): ReviewPreparationSnapshot;
|
|
781
|
+
startPluginWriteTaskReview(intent: PluginWriteTaskIntent, returnRoute?: TuiRoute): ReviewPreparationSnapshot;
|
|
679
782
|
retryFailedPluginWriteBatch(): ReviewPreparationSnapshot | undefined;
|
|
783
|
+
retryFailedPluginWriteTask(): ReviewPreparationSnapshot | undefined;
|
|
680
784
|
catalogActivationBlockReason(): CatalogActivationBlockReason | undefined;
|
|
681
|
-
catalogSourceRecoveryBlockReason(
|
|
785
|
+
catalogSourceRecoveryBlockReason(intent?: Extract<OperationIntent, {
|
|
786
|
+
kind: 'catalogGeneration';
|
|
787
|
+
}>): CatalogActivationBlockReason | undefined;
|
|
682
788
|
getSessionCatalogVersion(sourceId: string): string | undefined;
|
|
683
789
|
reloadCatalog(options: {
|
|
684
790
|
sourceId: string;
|
|
@@ -690,14 +796,23 @@ export declare class TuiController {
|
|
|
690
796
|
getConfigPage(pluginId: string, layer: {
|
|
691
797
|
scope: Scope | 'effective';
|
|
692
798
|
}, signal?: AbortSignal): Promise<ConfigPageViewModel>;
|
|
799
|
+
selectCatalogWorkspace(workspaceRoot?: string): Promise<CatalogWorkspaceManagementViewModel>;
|
|
800
|
+
getCatalogWorkspaceManagement(): Promise<CatalogWorkspaceManagementViewModel>;
|
|
801
|
+
validateCatalogWorkspace(): Promise<CatalogValidationViewModel>;
|
|
802
|
+
getCatalogDevManagement(): Promise<CatalogDevManagementViewModel>;
|
|
803
|
+
getCatalogStoreManagement(): Promise<CatalogStoreManagementViewModel>;
|
|
804
|
+
getCatalogPublicationManagement(): Promise<CatalogPublicationManagementViewModel>;
|
|
805
|
+
previewConfigSaveImpact(intent: Extract<OperationIntent, {
|
|
806
|
+
kind: 'configSave';
|
|
807
|
+
}>, signal?: AbortSignal): Promise<NonNullable<OperationEvidence['config']>>;
|
|
693
808
|
getConfigResetAvailability(pluginId: string, layer: {
|
|
694
809
|
scope: Scope;
|
|
695
810
|
}): Promise<ConfigResetAvailability>;
|
|
696
811
|
listUserIssues(): UserIssueViewModel[];
|
|
812
|
+
listPluginWriteTaskCandidates(goal: PluginWriteTaskGoal): PluginWriteTaskCandidate[];
|
|
697
813
|
buildOperationReview(intent: OperationIntent, returnRoute?: TuiRoute): Promise<OperationReviewModel>;
|
|
698
814
|
startReviewPreparation(intent: OperationIntent, returnRoute?: TuiRoute): ReviewPreparationSnapshot;
|
|
699
815
|
retryReviewPreparation(): ReviewPreparationSnapshot | undefined;
|
|
700
816
|
executeOperation(reviewToken: string): Promise<OperationExecuteResult>;
|
|
701
817
|
dispose(): void;
|
|
702
818
|
}
|
|
703
|
-
export {};
|