agl 21.0.2 → 22.0.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/changelog.md +9 -0
- package/dist_serve/bundle.js +1 -1
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/classes.aglhome.d.ts +25 -0
- package/dist_ts/classes.aglhome.js +65 -0
- package/dist_ts/classes.authmodels.js +7 -12
- package/dist_ts/classes.authstore.js +2 -29
- package/dist_ts/classes.cli.js +93 -35
- package/dist_ts/classes.config.d.ts +2 -11
- package/dist_ts/classes.config.js +14 -80
- package/dist_ts/classes.controller.d.ts +4 -1
- package/dist_ts/classes.controller.js +64 -26
- package/dist_ts/classes.embeddeddb.js +6 -5
- package/dist_ts/classes.gitreversion.js +3 -2
- package/dist_ts/classes.upgradecoordinator.d.ts +6 -1
- package/dist_ts/classes.upgradecoordinator.js +588 -177
- package/dist_ts/classes.upgradetransaction.js +46 -12
- package/dist_ts/classes.uploadmanager.d.ts +12 -0
- package/dist_ts/classes.uploadmanager.js +204 -2
- package/dist_ts/constants.upgradeenvironment.d.ts +2 -0
- package/dist_ts/constants.upgradeenvironment.js +3 -0
- package/dist_ts/functions.controllerdataroot.d.ts +4 -5
- package/dist_ts/functions.controllerdataroot.js +4 -29
- package/dist_ts/functions.embeddeddb.d.ts +1 -1
- package/dist_ts/functions.embeddeddb.js +8 -3
- package/dist_ts/functions.runtimeenvironment.js +2 -1
- package/dist_ts/index.d.ts +1 -0
- package/dist_ts/index.js +2 -1
- package/dist_ts/interfaces.config.d.ts +5 -7
- package/dist_ts_migration/classes.documentmigrationrunner.js +3 -1
- package/dist_ts_migration/index.d.ts +2 -0
- package/dist_ts_migration/index.js +3 -1
- package/dist_ts_migration/v23_aglhome.d.ts +91 -0
- package/dist_ts_migration/v23_aglhome.js +1775 -0
- package/dist_ts_migration/v23_runtimeconfig.d.ts +11 -0
- package/dist_ts_migration/v23_runtimeconfig.js +87 -0
- package/dist_ts_migration/v2_controllerdataroot.d.ts +5 -0
- package/dist_ts_migration/v2_controllerdataroot.js +176 -15
- package/package.json +1 -1
- package/readme.md +116 -35
- package/readme.plan.md +24 -9
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.aglhome.ts +116 -0
- package/ts/classes.authmodels.ts +5 -13
- package/ts/classes.authstore.ts +1 -39
- package/ts/classes.cli.ts +92 -34
- package/ts/classes.config.ts +20 -117
- package/ts/classes.controller.ts +92 -26
- package/ts/classes.embeddeddb.ts +5 -4
- package/ts/classes.gitreversion.ts +3 -2
- package/ts/classes.upgradecoordinator.ts +668 -191
- package/ts/classes.upgradetransaction.ts +46 -11
- package/ts/classes.uploadmanager.ts +231 -1
- package/ts/constants.upgradeenvironment.ts +2 -0
- package/ts/functions.controllerdataroot.ts +11 -47
- package/ts/functions.embeddeddb.ts +13 -2
- package/ts/functions.runtimeenvironment.ts +1 -0
- package/ts/index.ts +1 -0
- package/ts/interfaces.config.ts +5 -7
- package/ts_migration/classes.documentmigrationrunner.ts +2 -0
- package/ts_migration/index.ts +2 -0
- package/ts_migration/v23_aglhome.ts +2101 -0
- package/ts_migration/v23_runtimeconfig.ts +112 -0
- package/ts_migration/v2_controllerdataroot.ts +174 -16
- package/ts_web/00_commitinfo_data.ts +1 -1
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import * as plugins from '../dist_ts/plugins.js';
|
|
2
|
+
import type { IAGLHomeOptions, IAGLHomePaths } from '../dist_ts/classes.aglhome.js';
|
|
3
|
+
import { type IControllerDataDirectoryOptions } from '../dist_ts/classes.config.js';
|
|
4
|
+
import type { IControllerDatabaseConfig } from '../dist_ts/interfaces.config.js';
|
|
5
|
+
import { type IControllerDataRootMigrationResult, type IControllerDataWriterProcessRecord } from './v2_controllerdataroot.js';
|
|
6
|
+
export declare const legacyEmbeddedDatabaseSocketPath: (dataDirectoryArg: string) => string;
|
|
7
|
+
export interface IAGLLegacyPaths {
|
|
8
|
+
development: boolean;
|
|
9
|
+
legacySourceEnabled: boolean;
|
|
10
|
+
activeDataRoot: string;
|
|
11
|
+
legacyConfigRoot?: string;
|
|
12
|
+
legacyStateRoot?: string;
|
|
13
|
+
v2JournalPath?: string;
|
|
14
|
+
v2LockPath?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const resolveAGLLegacyPaths: (optionsArg?: IAGLHomeOptions) => IAGLLegacyPaths;
|
|
17
|
+
export declare const readLegacyV2DatabaseConfig: (optionsArg?: IAGLHomeOptions) => IControllerDatabaseConfig;
|
|
18
|
+
export interface IAGLHomeMigrationOptions {
|
|
19
|
+
paths: IAGLHomePaths;
|
|
20
|
+
legacyPaths: IAGLLegacyPaths;
|
|
21
|
+
databaseConfig: IControllerDatabaseConfig;
|
|
22
|
+
invokerPid: number;
|
|
23
|
+
listDataWriterProcesses: () => Promise<readonly IControllerDataWriterProcessRecord[]>;
|
|
24
|
+
isSocketListening?: (socketPathArg: string) => Promise<boolean>;
|
|
25
|
+
relocateStoppedDatabaseRoot?: (inputArg: Readonly<plugins.smartdb.ILocalSmartDbStoppedStorageRootRelocationInput>, signalArg?: AbortSignal) => Promise<plugins.smartdb.ILocalSmartDbStoppedStorageRootRelocationReceipt>;
|
|
26
|
+
relocateCredentialStore?: (inputArg: {
|
|
27
|
+
controllerHash: string;
|
|
28
|
+
sourceDirectory: string;
|
|
29
|
+
destinationDirectory: string;
|
|
30
|
+
}, signalArg?: AbortSignal) => Promise<void>;
|
|
31
|
+
legacyUploadTempDirectory?: string;
|
|
32
|
+
signal?: AbortSignal;
|
|
33
|
+
}
|
|
34
|
+
export interface IAGLHomeMigrationPreflightOptions {
|
|
35
|
+
allowDataWriters?: boolean;
|
|
36
|
+
}
|
|
37
|
+
export interface IAGLHomeMigrationResult {
|
|
38
|
+
directoryPath: string;
|
|
39
|
+
databaseConfig: IControllerDatabaseConfig;
|
|
40
|
+
}
|
|
41
|
+
export declare class AGLHomeMigrationRunner {
|
|
42
|
+
private readonly options;
|
|
43
|
+
private readonly journalPath;
|
|
44
|
+
private readonly lockPath;
|
|
45
|
+
private readonly socketCheck;
|
|
46
|
+
private readonly relocateDatabase;
|
|
47
|
+
private readonly relocateCredentials;
|
|
48
|
+
private readonly legacyUploadTempDirectory;
|
|
49
|
+
constructor(options: IAGLHomeMigrationOptions);
|
|
50
|
+
isCommitted(): Promise<boolean>;
|
|
51
|
+
hasStarted(): Promise<boolean>;
|
|
52
|
+
/** Performs no writes and is safe to invoke before logs or admission state exist. */
|
|
53
|
+
preflight(optionsArg?: IAGLHomeMigrationPreflightOptions): Promise<void>;
|
|
54
|
+
run(): Promise<IAGLHomeMigrationResult>;
|
|
55
|
+
private usesDefaultEmbeddedDatabase;
|
|
56
|
+
private isConfiguredDatabaseSource;
|
|
57
|
+
private assertJournalBinding;
|
|
58
|
+
private assertJournalRootIdentity;
|
|
59
|
+
private inspectTargetInventory;
|
|
60
|
+
private inspectSourceInventories;
|
|
61
|
+
private listLegacyLogNames;
|
|
62
|
+
private assertNoConflictingWriters;
|
|
63
|
+
private assertGitStateRelocatable;
|
|
64
|
+
private runLocked;
|
|
65
|
+
private migrateDatabase;
|
|
66
|
+
private migrateCredentials;
|
|
67
|
+
private migrateLogs;
|
|
68
|
+
private moveLegacyMetadata;
|
|
69
|
+
private legacyUploadTombstonePath;
|
|
70
|
+
private scanLegacyUploadRoots;
|
|
71
|
+
private assertNoLegacyUploadRoots;
|
|
72
|
+
private processLegacyUploadRootBinding;
|
|
73
|
+
private cleanupLegacyUploadRoots;
|
|
74
|
+
private moveDirect;
|
|
75
|
+
private markOperation;
|
|
76
|
+
private cleanupLegacyRoots;
|
|
77
|
+
private removeEmptyDirectory;
|
|
78
|
+
private writeJournal;
|
|
79
|
+
private cleanupJournalTemporaryFiles;
|
|
80
|
+
private unlinkExactFile;
|
|
81
|
+
private cleanupStaleLockTemporaries;
|
|
82
|
+
private acquireLock;
|
|
83
|
+
private releaseLock;
|
|
84
|
+
}
|
|
85
|
+
export interface IAGLHomeDataRootMigrationOptions extends IControllerDataDirectoryOptions {
|
|
86
|
+
listDataWriterProcesses?: () => Promise<readonly IControllerDataWriterProcessRecord[]>;
|
|
87
|
+
legacyUploadTempDirectory?: string;
|
|
88
|
+
signal?: AbortSignal;
|
|
89
|
+
}
|
|
90
|
+
export declare const preflightAGLHomeDataRootMigration: (optionsArg?: IAGLHomeDataRootMigrationOptions) => Promise<void>;
|
|
91
|
+
export declare const ensureAGLHomeDataRoot: (optionsArg?: IAGLHomeDataRootMigrationOptions) => Promise<IControllerDataRootMigrationResult>;
|