cordisx 0.1.0-beta.4 → 0.1.0-beta.5
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/cli/renderer-channel-composition.d.ts +20 -0
- package/dist/src/cli/renderer-channel-composition.d.ts.map +1 -0
- package/dist/src/cli/renderer-channel-composition.js +52 -0
- package/dist/src/cli/renderer-channel-composition.js.map +1 -0
- package/dist/src/cli/renderer-composition.d.ts +136 -0
- package/dist/src/cli/renderer-composition.d.ts.map +1 -0
- package/dist/src/cli/renderer-composition.js +305 -0
- package/dist/src/cli/renderer-composition.js.map +1 -0
- package/dist/src/cli/run-command.d.ts.map +1 -1
- package/dist/src/cli/run-command.js +51 -166
- package/dist/src/cli/run-command.js.map +1 -1
- package/dist/src/cli/run-support.d.ts +8 -79
- package/dist/src/cli/run-support.d.ts.map +1 -1
- package/dist/src/cli/run-support.js +6 -152
- package/dist/src/cli/run-support.js.map +1 -1
- package/dist/src/cli/supervisor-command.d.ts +2 -0
- package/dist/src/cli/supervisor-command.d.ts.map +1 -1
- package/dist/src/cli/supervisor-command.js +112 -27
- package/dist/src/cli/supervisor-command.js.map +1 -1
- package/dist/src/cli/supervisor-runtime.d.ts +1 -0
- package/dist/src/cli/supervisor-runtime.d.ts.map +1 -1
- package/dist/src/cli/supervisor-runtime.js +16 -0
- package/dist/src/cli/supervisor-runtime.js.map +1 -1
- package/dist/src/cli/supervisor-state.d.ts +8 -1
- package/dist/src/cli/supervisor-state.d.ts.map +1 -1
- package/dist/src/cli/supervisor-state.js +11 -4
- package/dist/src/cli/supervisor-state.js.map +1 -1
- package/dist/src/current-user-native-account.js +1 -1
- package/dist/src/current-user-native-account.js.map +1 -1
- package/dist/src/current-user-native-pins.d.ts +6 -0
- package/dist/src/current-user-native-pins.d.ts.map +1 -1
- package/dist/src/current-user-native-pins.js +7 -0
- package/dist/src/current-user-native-pins.js.map +1 -1
- package/dist/src/launcher/bundle.d.ts +6 -0
- package/dist/src/launcher/bundle.d.ts.map +1 -1
- package/dist/src/launcher/bundle.js +35 -3
- package/dist/src/launcher/bundle.js.map +1 -1
- package/dist/src/launcher/cdp-installation-support.d.ts +2 -0
- package/dist/src/launcher/cdp-installation-support.d.ts.map +1 -1
- package/dist/src/launcher/cdp-installation-support.js +7 -0
- package/dist/src/launcher/cdp-installation-support.js.map +1 -1
- package/dist/src/launcher/cdp-installation.d.ts.map +1 -1
- package/dist/src/launcher/cdp-installation.js +18 -1
- package/dist/src/launcher/cdp-installation.js.map +1 -1
- package/dist/src/launcher/host-generation-graph.d.ts +34 -0
- package/dist/src/launcher/host-generation-graph.d.ts.map +1 -0
- package/dist/src/launcher/host-generation-graph.js +237 -0
- package/dist/src/launcher/host-generation-graph.js.map +1 -0
- package/dist/src/launcher/marketplace-artifact-cdp.d.ts +15 -0
- package/dist/src/launcher/marketplace-artifact-cdp.d.ts.map +1 -0
- package/dist/src/launcher/marketplace-artifact-cdp.js +66 -0
- package/dist/src/launcher/marketplace-artifact-cdp.js.map +1 -0
- package/dist/src/launcher/marketplace-artifact.d.ts +18 -0
- package/dist/src/launcher/marketplace-artifact.d.ts.map +1 -0
- package/dist/src/launcher/marketplace-artifact.js +279 -0
- package/dist/src/launcher/marketplace-artifact.js.map +1 -0
- package/dist/src/launcher/vite-development-server-adapter.d.ts +30 -0
- package/dist/src/launcher/vite-development-server-adapter.d.ts.map +1 -0
- package/dist/src/launcher/vite-development-server-adapter.js +174 -0
- package/dist/src/launcher/vite-development-server-adapter.js.map +1 -0
- package/dist/src/launcher/vite-development.d.ts +1 -1
- package/dist/src/launcher/vite-development.d.ts.map +1 -1
- package/dist/src/launcher/vite-development.js +18 -162
- package/dist/src/launcher/vite-development.js.map +1 -1
- package/dist/src/playground/server.d.ts.map +1 -1
- package/dist/src/playground/server.js +16 -4
- package/dist/src/playground/server.js.map +1 -1
- package/dist/src/renderer/current-user/native.d.ts +2 -2
- package/dist/src/renderer/current-user/native.d.ts.map +1 -1
- package/dist/src/renderer/current-user/native.js +3 -3
- package/dist/src/renderer/current-user/native.js.map +1 -1
- package/dist/src/renderer/host-ui/IconButton.d.ts.map +1 -1
- package/dist/src/renderer/host-ui/IconButton.js +2 -1
- package/dist/src/renderer/host-ui/IconButton.js.map +1 -1
- package/dist/src/renderer/manager/ManagerApp.js +1 -1
- package/dist/src/renderer/manager/ManagerApp.js.map +1 -1
- package/dist/src/renderer/manager/model/use-marketplace-installer.d.ts +14 -0
- package/dist/src/renderer/manager/model/use-marketplace-installer.d.ts.map +1 -0
- package/dist/src/renderer/manager/model/use-marketplace-installer.js +102 -0
- package/dist/src/renderer/manager/model/use-marketplace-installer.js.map +1 -0
- package/dist/src/renderer/manager/pages/MarketplacePage.d.ts.map +1 -1
- package/dist/src/renderer/manager/pages/MarketplacePage.js +49 -4
- package/dist/src/renderer/manager/pages/MarketplacePage.js.map +1 -1
- package/dist/src/renderer/manager/pages/MarketplacePluginPage.d.ts +3 -2
- package/dist/src/renderer/manager/pages/MarketplacePluginPage.d.ts.map +1 -1
- package/dist/src/renderer/manager/pages/MarketplacePluginPage.js +86 -9
- package/dist/src/renderer/manager/pages/MarketplacePluginPage.js.map +1 -1
- package/dist/src/renderer/manager.d.ts +5 -0
- package/dist/src/renderer/manager.d.ts.map +1 -1
- package/dist/src/renderer/marketplace-artifact-binding.d.ts +15 -0
- package/dist/src/renderer/marketplace-artifact-binding.d.ts.map +1 -0
- package/dist/src/renderer/marketplace-artifact-binding.js +95 -0
- package/dist/src/renderer/marketplace-artifact-binding.js.map +1 -0
- package/dist/src/renderer/marketplace-trust.d.ts.map +1 -1
- package/dist/src/renderer/marketplace-trust.js +14 -1
- package/dist/src/renderer/marketplace-trust.js.map +1 -1
- package/dist/src/renderer/marketplace-types.d.ts +2 -2
- package/dist/src/renderer/marketplace-types.d.ts.map +1 -1
- package/dist/src/renderer/marketplace.d.ts.map +1 -1
- package/dist/src/renderer/marketplace.js +23 -3
- package/dist/src/renderer/marketplace.js.map +1 -1
- package/dist/src/renderer/runtime-lifecycle-handle.d.ts.map +1 -1
- package/dist/src/renderer/runtime-lifecycle-handle.js +7 -0
- package/dist/src/renderer/runtime-lifecycle-handle.js.map +1 -1
- package/node_modules/@cordisx/schemastery-ui/package.json +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type LocalChannelService } from '../launcher/channel-service.js';
|
|
2
|
+
import type { CordisXConfig, CordisXConfigPlugin } from '../launcher/config.js';
|
|
3
|
+
import type { ChannelManagerBundleProjection } from './renderer-composition.js';
|
|
4
|
+
export interface RendererChannelComposition {
|
|
5
|
+
readonly plugin?: CordisXConfigPlugin;
|
|
6
|
+
readonly service?: LocalChannelService;
|
|
7
|
+
readonly manager?: ChannelManagerBundleProjection;
|
|
8
|
+
readonly credentialBridgeToken?: string;
|
|
9
|
+
readonly actionsBridgeToken?: string;
|
|
10
|
+
readonly loadManagerProjection: () => Promise<ChannelManagerBundleProjection | undefined>;
|
|
11
|
+
}
|
|
12
|
+
/** Start the configured Channel service and project its exact state into renderer composition metadata. */
|
|
13
|
+
export declare function createRendererChannelComposition(input: {
|
|
14
|
+
readonly composition: CordisXConfig;
|
|
15
|
+
readonly profileId: string;
|
|
16
|
+
readonly configPath: string;
|
|
17
|
+
readonly homeDir: string;
|
|
18
|
+
readonly environment: NodeJS.ProcessEnv;
|
|
19
|
+
}): Promise<RendererChannelComposition>;
|
|
20
|
+
//# sourceMappingURL=renderer-channel-composition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer-channel-composition.d.ts","sourceRoot":"","sources":["../../../src/cli/renderer-channel-composition.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,mBAAmB,EAEzB,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC/E,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAA;AAE/E,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAA;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAA;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,8BAA8B,CAAA;IACjD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;IACvC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IACpC,QAAQ,CAAC,qBAAqB,EAAE,MAAM,OAAO,CAAC,8BAA8B,GAAG,SAAS,CAAC,CAAA;CAC1F;AAED,2GAA2G;AAC3G,wBAAsB,gCAAgC,CAAC,KAAK,EAAE;IAC5D,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAA;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,CAAA;CACxC,GAAG,OAAO,CAAC,0BAA0B,CAAC,CA8CtC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { randomBytes } from 'node:crypto';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { pathToFileURL } from 'node:url';
|
|
4
|
+
import { readServiceConfigState } from '../config/service-config.js';
|
|
5
|
+
import { CHANNEL_SERVICE_CONFIG_INITIAL, createLocalChannelService, projectLocalChannelManager, } from '../launcher/channel-service.js';
|
|
6
|
+
/** Start the configured Channel service and project its exact state into renderer composition metadata. */
|
|
7
|
+
export async function createRendererChannelComposition(input) {
|
|
8
|
+
const plugin = input.composition.plugins.find(plugin => plugin.enabled && plugin.id === 'channel');
|
|
9
|
+
let service;
|
|
10
|
+
const loadManagerProjection = async () => {
|
|
11
|
+
if (plugin === undefined || service === undefined)
|
|
12
|
+
return undefined;
|
|
13
|
+
const state = await readServiceConfigState({
|
|
14
|
+
profileId: input.profileId,
|
|
15
|
+
pluginId: 'channel',
|
|
16
|
+
serviceId: 'runtime',
|
|
17
|
+
initialConfig: CHANNEL_SERVICE_CONFIG_INITIAL,
|
|
18
|
+
}, input.configPath);
|
|
19
|
+
return projectLocalChannelManager({
|
|
20
|
+
configuration: state.config,
|
|
21
|
+
revision: state.revision,
|
|
22
|
+
lastGoodRevision: state.lastGoodRevision,
|
|
23
|
+
writable: true,
|
|
24
|
+
...(service.snapshot() === undefined ? {} : { runtime: service.snapshot() }),
|
|
25
|
+
audit: service.auditSnapshot(),
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
if (plugin === undefined)
|
|
29
|
+
return { loadManagerProjection };
|
|
30
|
+
const state = await readServiceConfigState({
|
|
31
|
+
profileId: input.profileId,
|
|
32
|
+
pluginId: 'channel',
|
|
33
|
+
serviceId: 'runtime',
|
|
34
|
+
initialConfig: CHANNEL_SERVICE_CONFIG_INITIAL,
|
|
35
|
+
}, input.configPath);
|
|
36
|
+
service = createLocalChannelService({
|
|
37
|
+
artifactDirectory: path.dirname(plugin.entry),
|
|
38
|
+
dataDir: path.join(input.homeDir, 'cache', 'channel-runtime'),
|
|
39
|
+
source: plugin.source ?? pathToFileURL(plugin.entry).href,
|
|
40
|
+
environment: input.environment,
|
|
41
|
+
});
|
|
42
|
+
await service.start(state.config);
|
|
43
|
+
return {
|
|
44
|
+
plugin,
|
|
45
|
+
service,
|
|
46
|
+
manager: await loadManagerProjection(),
|
|
47
|
+
credentialBridgeToken: randomBytes(32).toString('hex'),
|
|
48
|
+
actionsBridgeToken: randomBytes(32).toString('hex'),
|
|
49
|
+
loadManagerProjection,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=renderer-channel-composition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer-channel-composition.js","sourceRoot":"","sources":["../../../src/cli/renderer-channel-composition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EAEzB,0BAA0B,GAC3B,MAAM,gCAAgC,CAAA;AAavC,2GAA2G;AAC3G,MAAM,CAAC,KAAK,UAAU,gCAAgC,CAAC,KAMtD;IACC,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,EAAE,KAAK,SAAS,CAAC,CAAA;IAClG,IAAI,OAAwC,CAAA;IAC5C,MAAM,qBAAqB,GAAG,KAAK,IAAyD,EAAE;QAC5F,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QACnE,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC;YACzC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,SAAS;YACnB,SAAS,EAAE,SAAS;YACpB,aAAa,EAAE,8BAEM;SACtB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;QACpB,OAAO,0BAA0B,CAAC;YAChC,aAAa,EAAE,KAAK,CAAC,MAAM;YAC3B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,QAAQ,EAAE,IAAI;YACd,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAG,EAAE,CAAC;YAC7E,KAAK,EAAE,OAAO,CAAC,aAAa,EAAE;SAC/B,CAAC,CAAA;IACJ,CAAC,CAAA;IACD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,qBAAqB,EAAE,CAAA;IAC1D,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC;QACzC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,SAAS;QACnB,SAAS,EAAE,SAAS;QACpB,aAAa,EAAE,8BAEM;KACtB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;IACpB,OAAO,GAAG,yBAAyB,CAAC;QAClC,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QAC7C,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,iBAAiB,CAAC;QAC7D,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI;QACzD,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC,CAAA;IACF,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACjC,OAAO;QACL,MAAM;QACN,OAAO;QACP,OAAO,EAAE,MAAM,qBAAqB,EAAE;QACtC,qBAAqB,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtD,kBAAkB,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACnD,qBAAqB;KACtB,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import type { HomeConfigIconThemePreference } from '../config/home-config.js';
|
|
2
|
+
import { buildRendererBundle } from '../launcher/bundle.js';
|
|
3
|
+
import type { CdpPluginLifecycleRuntime, WatchInjectionOptions } from '../launcher/cdp.js';
|
|
4
|
+
import { type CordisXConfig } from '../launcher/config.js';
|
|
5
|
+
import { type PluginActivationStore } from '../launcher/plugin-activation.js';
|
|
6
|
+
import { PluginBundleCoordinator } from '../launcher/plugin-bundle.js';
|
|
7
|
+
import type { PluginGenerationArtifactServer } from '../launcher/plugin-generation-loader.js';
|
|
8
|
+
import type { PluginLifecycleCoordinator } from '../launcher/plugin-lifecycle.js';
|
|
9
|
+
import type { ManagedServicePluginLifecycleRuntime } from '../launcher/managed-service-plugin-lifecycle.js';
|
|
10
|
+
import type { CordisXPersistedPermissionPolicyRecord } from '../permission-persistence.js';
|
|
11
|
+
import type { CordisXPluginBundleManagerSnapshotV1 } from '../plugin-bundle-contracts.js';
|
|
12
|
+
import type { CordisXPluginActivationRecordV1 } from '../plugin-lifecycle-contracts.js';
|
|
13
|
+
export type ChannelManagerBundleProjection = NonNullable<Parameters<typeof buildRendererBundle>[1]>['channelManager'];
|
|
14
|
+
export interface RendererComposition {
|
|
15
|
+
readonly source: string;
|
|
16
|
+
/** Exact production graph source used only by repository authority integration probes. */
|
|
17
|
+
readonly authoritySource: () => string;
|
|
18
|
+
readonly newDocumentSource?: string;
|
|
19
|
+
readonly hasLoopbackGraph: boolean;
|
|
20
|
+
readonly providerBridgeToken?: string;
|
|
21
|
+
readonly agentHistoryBridgeToken: string;
|
|
22
|
+
readonly configBridgeToken?: string;
|
|
23
|
+
readonly ownerDocumentSecret: string;
|
|
24
|
+
readonly serviceConfigBridgeToken?: string;
|
|
25
|
+
readonly generation: string;
|
|
26
|
+
readonly permissionBridgeToken?: string;
|
|
27
|
+
readonly iconThemePreferenceBridgeToken?: string;
|
|
28
|
+
readonly pluginLifecycleBridgeToken?: string;
|
|
29
|
+
readonly managedServiceUICapabilities?: readonly {
|
|
30
|
+
readonly pluginId: string;
|
|
31
|
+
readonly pluginGeneration: string;
|
|
32
|
+
readonly token: string;
|
|
33
|
+
}[];
|
|
34
|
+
readonly rebuild: (config: CordisXConfig, pluginActivation: CordisXPluginActivationRecordV1, initialRegistryEpoch: number, current?: Readonly<{
|
|
35
|
+
permissionPolicies: readonly CordisXPersistedPermissionPolicyRecord[];
|
|
36
|
+
pluginBundles: CordisXPluginBundleManagerSnapshotV1;
|
|
37
|
+
channelManager?: ChannelManagerBundleProjection;
|
|
38
|
+
managedServiceUICapabilities?: readonly {
|
|
39
|
+
readonly pluginId: string;
|
|
40
|
+
readonly pluginGeneration: string;
|
|
41
|
+
readonly token: string;
|
|
42
|
+
}[];
|
|
43
|
+
}>) => Promise<Readonly<{
|
|
44
|
+
source: string;
|
|
45
|
+
newDocumentSource?: string;
|
|
46
|
+
}>>;
|
|
47
|
+
/** Releases every launch-scoped Host graph after the launcher drains CDP. */
|
|
48
|
+
close(): Promise<void>;
|
|
49
|
+
}
|
|
50
|
+
export interface BuildRendererCompositionOptions {
|
|
51
|
+
readonly profileId?: string;
|
|
52
|
+
readonly appId?: string;
|
|
53
|
+
readonly iconThemePreference?: HomeConfigIconThemePreference;
|
|
54
|
+
readonly writable?: boolean;
|
|
55
|
+
readonly serviceConfigWritable?: boolean;
|
|
56
|
+
readonly permission?: {
|
|
57
|
+
readonly profileId: string;
|
|
58
|
+
readonly policies: readonly CordisXPersistedPermissionPolicyRecord[];
|
|
59
|
+
readonly persistent: boolean;
|
|
60
|
+
};
|
|
61
|
+
readonly generation?: string;
|
|
62
|
+
readonly pluginLifecycle?: {
|
|
63
|
+
readonly token: string;
|
|
64
|
+
readonly activation: CordisXPluginActivationRecordV1;
|
|
65
|
+
readonly registryEpoch?: number;
|
|
66
|
+
};
|
|
67
|
+
readonly pluginBundles?: CordisXPluginBundleManagerSnapshotV1;
|
|
68
|
+
readonly certifiedPermissionChannelToken?: string;
|
|
69
|
+
readonly pluginActivation?: CordisXPluginActivationRecordV1;
|
|
70
|
+
readonly initialRegistryEpoch?: number;
|
|
71
|
+
readonly channelManager?: ChannelManagerBundleProjection;
|
|
72
|
+
/** Transient, launcher-created tokens. They are published only in the injected runtime metadata. */
|
|
73
|
+
readonly channelCredentialBridgeToken?: string;
|
|
74
|
+
readonly channelActionsBridgeToken?: string;
|
|
75
|
+
readonly managedServiceUICapabilities?: readonly {
|
|
76
|
+
readonly pluginId: string;
|
|
77
|
+
readonly pluginGeneration: string;
|
|
78
|
+
readonly token: string;
|
|
79
|
+
}[];
|
|
80
|
+
readonly internalBuildRendererBundle?: typeof buildRendererBundle;
|
|
81
|
+
/** Launcher-owned native production uses the immutable Host graph. */
|
|
82
|
+
readonly productionGraph?: boolean;
|
|
83
|
+
/** Opt-in development transport; normal launches keep immutable package delivery. */
|
|
84
|
+
readonly developmentBuild?: typeof buildRendererBundle;
|
|
85
|
+
}
|
|
86
|
+
/** Build the exact renderer composition that the launcher will inject through CDP. */
|
|
87
|
+
export declare function buildRendererComposition(config: CordisXConfig, stdout: (line: string) => void, options?: BuildRendererCompositionOptions): Promise<RendererComposition>;
|
|
88
|
+
export declare function assertProductionGraphBootstrapSnapshot(expectedActive: CordisXPluginActivationRecordV1, expectedRegistryEpoch: number, current: Readonly<{
|
|
89
|
+
active: CordisXPluginActivationRecordV1;
|
|
90
|
+
registryEpoch: number;
|
|
91
|
+
}>): void;
|
|
92
|
+
export declare function attachActiveBrowserGraphs(input: {
|
|
93
|
+
readonly plugins: CordisXConfig['plugins'];
|
|
94
|
+
readonly homeDir: string;
|
|
95
|
+
readonly artifactServer: PluginGenerationArtifactServer;
|
|
96
|
+
readonly lifecycleRuntime: CdpPluginLifecycleRuntime;
|
|
97
|
+
}): Promise<CordisXConfig['plugins']>;
|
|
98
|
+
/** Bind plugin-bundle claims and managed-service projections to one renderer lifecycle generation. */
|
|
99
|
+
export declare function createRendererLifecycleProjection(input: {
|
|
100
|
+
readonly homeDir: string;
|
|
101
|
+
readonly profileId: string;
|
|
102
|
+
readonly generation: string;
|
|
103
|
+
readonly pluginLifecycleCoordinator: PluginLifecycleCoordinator;
|
|
104
|
+
readonly lifecycleRuntime: CdpPluginLifecycleRuntime;
|
|
105
|
+
readonly managedServiceLifecycleRuntime: ManagedServicePluginLifecycleRuntime;
|
|
106
|
+
}): {
|
|
107
|
+
token: string;
|
|
108
|
+
pluginBundleCoordinator: PluginBundleCoordinator;
|
|
109
|
+
pluginLifecycle: {
|
|
110
|
+
handler: {
|
|
111
|
+
token: string;
|
|
112
|
+
profileId: string;
|
|
113
|
+
generation: string;
|
|
114
|
+
coordinator: PluginLifecycleCoordinator;
|
|
115
|
+
bundleCoordinator: PluginBundleCoordinator;
|
|
116
|
+
};
|
|
117
|
+
runtime: CdpPluginLifecycleRuntime;
|
|
118
|
+
};
|
|
119
|
+
managedServiceActivation: Pick<import("../launcher/managed-service-node-host.js").ManagedServiceNodeActivation, "prepareNativeConnection" | "nativeProviderIds">;
|
|
120
|
+
managedServiceUICapabilities: readonly import("../launcher/plugin-lifecycle-model.js").ManagedServiceUICapabilityMutation[];
|
|
121
|
+
managedServiceUI: {
|
|
122
|
+
handleBindingValue: (value: string) => Promise<Record<string, unknown>>;
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
export declare function createProductionGraphBootstrap(input: {
|
|
126
|
+
readonly rendererComposition: RendererComposition;
|
|
127
|
+
readonly configuredComposition: CordisXConfig;
|
|
128
|
+
readonly configPath: string;
|
|
129
|
+
readonly profileId: string;
|
|
130
|
+
readonly lifecycleStore: PluginActivationStore;
|
|
131
|
+
readonly lifecycleRuntime: CdpPluginLifecycleRuntime;
|
|
132
|
+
readonly pluginBundleCoordinator: PluginBundleCoordinator;
|
|
133
|
+
readonly managedServiceLifecycleRuntime: ManagedServicePluginLifecycleRuntime;
|
|
134
|
+
readonly loadChannelManagerProjection: () => Promise<ChannelManagerBundleProjection | undefined>;
|
|
135
|
+
}): NonNullable<WatchInjectionOptions['productionGraphBootstrap']>;
|
|
136
|
+
//# sourceMappingURL=renderer-composition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer-composition.d.ts","sourceRoot":"","sources":["../../../src/cli/renderer-composition.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
import { randomBytes } from 'node:crypto';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { loadHomeConfig } from '../config/home-config.js';
|
|
4
|
+
import { buildRendererBundle } from '../launcher/bundle.js';
|
|
5
|
+
import { loadConfig } from '../launcher/config.js';
|
|
6
|
+
import { HostGenerationGraphOwner } from '../launcher/host-generation-graph.js';
|
|
7
|
+
import { equivalentPluginActivation } from '../launcher/plugin-activation.js';
|
|
8
|
+
import { PluginBundleCoordinator } from '../launcher/plugin-bundle.js';
|
|
9
|
+
import { loadPluginComposition } from '../launcher/plugin-composition.js';
|
|
10
|
+
import { loadStagedPluginPackage, stagedPluginBrowserArtifactDirectory } from '../launcher/plugin-package.js';
|
|
11
|
+
/** Build the exact renderer composition that the launcher will inject through CDP. */
|
|
12
|
+
export async function buildRendererComposition(config, stdout, options = {}) {
|
|
13
|
+
const providerBridgeToken = (config.codex.agentLoopBackend === 'local-cli'
|
|
14
|
+
|| config.providers.some(provider => provider.enabled)
|
|
15
|
+
|| config.plugins.some(plugin => plugin.enabled && plugin.id === 'cli-proxy-api'))
|
|
16
|
+
? randomBytes(32).toString('hex')
|
|
17
|
+
: undefined;
|
|
18
|
+
const agentHistoryBridgeToken = randomBytes(32).toString('hex');
|
|
19
|
+
const configBridgeToken = options.writable === true ? randomBytes(32).toString('hex') : undefined;
|
|
20
|
+
const ownerDocumentSecret = randomBytes(32).toString('hex');
|
|
21
|
+
const serviceConfigBridgeToken = (options.serviceConfigWritable ?? options.writable) === true
|
|
22
|
+
? randomBytes(32).toString('hex')
|
|
23
|
+
: undefined;
|
|
24
|
+
const permissionBridgeToken = options.permission?.persistent === true ? randomBytes(32).toString('hex') : undefined;
|
|
25
|
+
const iconThemePreferenceBridgeToken = options.writable === true && options.appId !== undefined
|
|
26
|
+
? randomBytes(32).toString('hex')
|
|
27
|
+
: undefined;
|
|
28
|
+
const generation = options.generation ?? randomBytes(16).toString('hex');
|
|
29
|
+
const profileId = options.permission?.profileId ?? options.profileId ?? 'development';
|
|
30
|
+
const bundleOptions = {
|
|
31
|
+
...(providerBridgeToken === undefined ? {} : { providerBridgeToken }),
|
|
32
|
+
agentHistoryBridgeToken,
|
|
33
|
+
...(configBridgeToken === undefined ? {} : { configBridgeToken }),
|
|
34
|
+
ownerDocumentAuthority: { secret: ownerDocumentSecret, profileId, generation },
|
|
35
|
+
...(serviceConfigBridgeToken === undefined ? {} : { serviceConfigBridgeToken }),
|
|
36
|
+
...(options.appId === undefined ? {} : { appId: options.appId }),
|
|
37
|
+
...(options.iconThemePreference === undefined ? {} : { iconThemePreference: options.iconThemePreference }),
|
|
38
|
+
...(iconThemePreferenceBridgeToken === undefined ? {} : { iconThemePreferenceBridgeToken }),
|
|
39
|
+
...(options.channelCredentialBridgeToken === undefined
|
|
40
|
+
? {}
|
|
41
|
+
: { channelCredentialBridgeToken: options.channelCredentialBridgeToken }),
|
|
42
|
+
...(options.channelActionsBridgeToken === undefined
|
|
43
|
+
? {}
|
|
44
|
+
: { channelActionsBridgeToken: options.channelActionsBridgeToken }),
|
|
45
|
+
...(options.managedServiceUICapabilities === undefined
|
|
46
|
+
? {}
|
|
47
|
+
: { managedServiceUICapabilities: options.managedServiceUICapabilities }),
|
|
48
|
+
...(options.permission === undefined
|
|
49
|
+
? (options.profileId === undefined ? {} : { profileId: options.profileId })
|
|
50
|
+
: {
|
|
51
|
+
profileId: options.permission.profileId,
|
|
52
|
+
permission: {
|
|
53
|
+
profileId: options.permission.profileId,
|
|
54
|
+
policies: options.permission.policies,
|
|
55
|
+
...(permissionBridgeToken === undefined ? {} : { bridgeToken: permissionBridgeToken }),
|
|
56
|
+
},
|
|
57
|
+
}),
|
|
58
|
+
generation,
|
|
59
|
+
...(options.pluginLifecycle === undefined ? {} : { pluginLifecycleBridgeToken: options.pluginLifecycle.token }),
|
|
60
|
+
...(options.pluginBundles === undefined ? {} : { pluginBundleSnapshot: options.pluginBundles }),
|
|
61
|
+
...((options.pluginActivation ?? options.pluginLifecycle?.activation) === undefined
|
|
62
|
+
? {}
|
|
63
|
+
: { pluginActivation: options.pluginActivation ?? options.pluginLifecycle.activation }),
|
|
64
|
+
...((options.initialRegistryEpoch ?? options.pluginLifecycle?.registryEpoch) === undefined
|
|
65
|
+
? {}
|
|
66
|
+
: { initialRegistryEpoch: options.initialRegistryEpoch ?? options.pluginLifecycle.registryEpoch }),
|
|
67
|
+
...(options.channelManager === undefined ? {} : { channelManager: options.channelManager }),
|
|
68
|
+
};
|
|
69
|
+
const buildBundle = options.developmentBuild ?? options.internalBuildRendererBundle ?? buildRendererBundle;
|
|
70
|
+
const hostGraphs = new HostGenerationGraphOwner();
|
|
71
|
+
const buildProductionSource = async (nextConfig, nextOptions) => {
|
|
72
|
+
if (options.productionGraph !== true || options.developmentBuild !== undefined
|
|
73
|
+
|| options.internalBuildRendererBundle !== undefined) {
|
|
74
|
+
const source = await buildBundle(nextConfig, nextOptions);
|
|
75
|
+
return { source, authoritySource: () => source };
|
|
76
|
+
}
|
|
77
|
+
return await hostGraphs.build(nextConfig, nextOptions);
|
|
78
|
+
};
|
|
79
|
+
const { built, newDocumentBuild } = await hostGraphs.transaction(async () => {
|
|
80
|
+
const built = await buildProductionSource(config, bundleOptions);
|
|
81
|
+
const newDocumentBuild = options.certifiedPermissionChannelToken === undefined
|
|
82
|
+
? undefined
|
|
83
|
+
: await buildProductionSource(config, {
|
|
84
|
+
...bundleOptions,
|
|
85
|
+
certifiedPermissionChannelToken: options.certifiedPermissionChannelToken,
|
|
86
|
+
});
|
|
87
|
+
return { built, newDocumentBuild };
|
|
88
|
+
});
|
|
89
|
+
const source = built.source;
|
|
90
|
+
const newDocumentSource = newDocumentBuild?.source;
|
|
91
|
+
const enabled = config.plugins.filter(plugin => plugin.enabled).map(plugin => plugin.id);
|
|
92
|
+
const hasLoopbackGraph = options.productionGraph === true && options.developmentBuild === undefined
|
|
93
|
+
&& options.internalBuildRendererBundle === undefined
|
|
94
|
+
|| config.plugins.some(plugin => plugin.enabled && plugin.runtimeGraph !== undefined);
|
|
95
|
+
stdout(`[cordisx] ${options.developmentBuild === undefined ? 'bundle' : 'Vite entry'} ready: ${source.length} bytes, plugins: ${enabled.join(', ') || '(none)'}`);
|
|
96
|
+
return {
|
|
97
|
+
source,
|
|
98
|
+
authoritySource: built.authoritySource,
|
|
99
|
+
...(newDocumentSource === undefined ? {} : { newDocumentSource }),
|
|
100
|
+
hasLoopbackGraph,
|
|
101
|
+
...(providerBridgeToken === undefined ? {} : { providerBridgeToken }),
|
|
102
|
+
agentHistoryBridgeToken,
|
|
103
|
+
...(configBridgeToken === undefined ? {} : { configBridgeToken }),
|
|
104
|
+
ownerDocumentSecret,
|
|
105
|
+
...(serviceConfigBridgeToken === undefined ? {} : { serviceConfigBridgeToken }),
|
|
106
|
+
generation,
|
|
107
|
+
...(permissionBridgeToken === undefined ? {} : { permissionBridgeToken }),
|
|
108
|
+
...(iconThemePreferenceBridgeToken === undefined ? {} : { iconThemePreferenceBridgeToken }),
|
|
109
|
+
...(options.pluginLifecycle === undefined ? {} : { pluginLifecycleBridgeToken: options.pluginLifecycle.token }),
|
|
110
|
+
...(options.managedServiceUICapabilities === undefined
|
|
111
|
+
? {}
|
|
112
|
+
: { managedServiceUICapabilities: options.managedServiceUICapabilities }),
|
|
113
|
+
rebuild: async (nextConfig, pluginActivation, initialRegistryEpoch, current) => {
|
|
114
|
+
const currentBundleOptions = current === undefined
|
|
115
|
+
? bundleOptions
|
|
116
|
+
: (() => {
|
|
117
|
+
const { channelManager: _channelManager, managedServiceUICapabilities: _managedServiceUICapabilities, pluginBundleSnapshot: _pluginBundleSnapshot, ...stable } = bundleOptions;
|
|
118
|
+
void _channelManager;
|
|
119
|
+
void _managedServiceUICapabilities;
|
|
120
|
+
void _pluginBundleSnapshot;
|
|
121
|
+
return {
|
|
122
|
+
...stable,
|
|
123
|
+
pluginBundleSnapshot: current.pluginBundles,
|
|
124
|
+
...(current.channelManager === undefined ? {} : { channelManager: current.channelManager }),
|
|
125
|
+
...(current.managedServiceUICapabilities === undefined
|
|
126
|
+
? {}
|
|
127
|
+
: { managedServiceUICapabilities: current.managedServiceUICapabilities }),
|
|
128
|
+
};
|
|
129
|
+
})();
|
|
130
|
+
const rebuildOptions = {
|
|
131
|
+
...currentBundleOptions,
|
|
132
|
+
...(current === undefined || bundleOptions.permission === undefined
|
|
133
|
+
? {}
|
|
134
|
+
: { permission: { ...bundleOptions.permission, policies: current.permissionPolicies } }),
|
|
135
|
+
ownerDocumentAuthority: { secret: ownerDocumentSecret, profileId, generation },
|
|
136
|
+
pluginActivation,
|
|
137
|
+
initialRegistryEpoch,
|
|
138
|
+
};
|
|
139
|
+
const { rebuilt, rebuiltNewDocument } = await hostGraphs.transaction(async () => {
|
|
140
|
+
const rebuilt = await buildProductionSource(nextConfig, rebuildOptions);
|
|
141
|
+
const rebuiltNewDocument = options.certifiedPermissionChannelToken === undefined
|
|
142
|
+
? undefined
|
|
143
|
+
: await buildProductionSource(nextConfig, {
|
|
144
|
+
...rebuildOptions,
|
|
145
|
+
certifiedPermissionChannelToken: options.certifiedPermissionChannelToken,
|
|
146
|
+
});
|
|
147
|
+
return { rebuilt, rebuiltNewDocument };
|
|
148
|
+
});
|
|
149
|
+
return {
|
|
150
|
+
source: rebuilt.source,
|
|
151
|
+
...(rebuiltNewDocument === undefined ? {} : { newDocumentSource: rebuiltNewDocument.source }),
|
|
152
|
+
};
|
|
153
|
+
},
|
|
154
|
+
async close() {
|
|
155
|
+
await hostGraphs.close();
|
|
156
|
+
},
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
export function assertProductionGraphBootstrapSnapshot(expectedActive, expectedRegistryEpoch, current) {
|
|
160
|
+
if (!equivalentPluginActivation(current.active, expectedActive)
|
|
161
|
+
|| current.registryEpoch !== expectedRegistryEpoch)
|
|
162
|
+
throw new Error('browser graph admission activation snapshot is stale');
|
|
163
|
+
}
|
|
164
|
+
function configuredPluginTopology(config) {
|
|
165
|
+
return JSON.stringify(config.plugins.map(plugin => ({
|
|
166
|
+
id: plugin.id,
|
|
167
|
+
entry: plugin.entry,
|
|
168
|
+
source: plugin.source,
|
|
169
|
+
enabled: plugin.enabled,
|
|
170
|
+
})));
|
|
171
|
+
}
|
|
172
|
+
function usesIsolatedPackageWorker(plugin) {
|
|
173
|
+
const manifest = plugin.manifest;
|
|
174
|
+
return manifest?.schemaVersion === 7
|
|
175
|
+
|| ((manifest?.schemaVersion === 5 || manifest?.schemaVersion === 6)
|
|
176
|
+
&& manifest.capabilities.some(capability => (capability.name === 'ui.host-dom.read' || capability.name === 'ui.host-dom.modify')));
|
|
177
|
+
}
|
|
178
|
+
export async function attachActiveBrowserGraphs(input) {
|
|
179
|
+
return await Promise.all(input.plugins.map(async (plugin) => {
|
|
180
|
+
if (!plugin.enabled || plugin.package === undefined || usesIsolatedPackageWorker(plugin))
|
|
181
|
+
return plugin;
|
|
182
|
+
const staged = await loadStagedPluginPackage(input.homeDir, plugin.package.digest);
|
|
183
|
+
if (staged.browserArtifact === undefined)
|
|
184
|
+
return plugin;
|
|
185
|
+
const lease = await input.artifactServer.lease({
|
|
186
|
+
packageIdentity: {
|
|
187
|
+
pluginId: plugin.id,
|
|
188
|
+
version: plugin.package.version,
|
|
189
|
+
integrity: plugin.package.digest,
|
|
190
|
+
},
|
|
191
|
+
artifactDirectory: stagedPluginBrowserArtifactDirectory(input.homeDir, plugin.package.digest),
|
|
192
|
+
runtimeEntry: staged.browserArtifact.manifest.entry,
|
|
193
|
+
}, plugin.package.moduleGeneration, staged.browserArtifact.manifest);
|
|
194
|
+
input.lifecycleRuntime.registerActivePluginGenerationLease(lease);
|
|
195
|
+
return {
|
|
196
|
+
...plugin,
|
|
197
|
+
runtimeGraph: {
|
|
198
|
+
moduleGeneration: lease.moduleGeneration,
|
|
199
|
+
loadSource: lease.importSource,
|
|
200
|
+
publishSource: lease.publishSource,
|
|
201
|
+
retireSource: lease.retireSource,
|
|
202
|
+
},
|
|
203
|
+
};
|
|
204
|
+
}));
|
|
205
|
+
}
|
|
206
|
+
/** Bind plugin-bundle claims and managed-service projections to one renderer lifecycle generation. */
|
|
207
|
+
export function createRendererLifecycleProjection(input) {
|
|
208
|
+
const token = randomBytes(32).toString('hex');
|
|
209
|
+
const pluginBundleCoordinator = new PluginBundleCoordinator({
|
|
210
|
+
homeDir: input.homeDir,
|
|
211
|
+
profileId: input.profileId,
|
|
212
|
+
runtimeGeneration: input.generation,
|
|
213
|
+
pluginLifecycle: input.pluginLifecycleCoordinator,
|
|
214
|
+
});
|
|
215
|
+
input.pluginLifecycleCoordinator.setBundleClaimGuard(async (pluginId) => await pluginBundleCoordinator.bundleClaims(pluginId));
|
|
216
|
+
return {
|
|
217
|
+
token,
|
|
218
|
+
pluginBundleCoordinator,
|
|
219
|
+
pluginLifecycle: {
|
|
220
|
+
handler: {
|
|
221
|
+
token,
|
|
222
|
+
profileId: input.profileId,
|
|
223
|
+
generation: input.generation,
|
|
224
|
+
coordinator: input.pluginLifecycleCoordinator,
|
|
225
|
+
bundleCoordinator: pluginBundleCoordinator,
|
|
226
|
+
},
|
|
227
|
+
runtime: input.lifecycleRuntime,
|
|
228
|
+
},
|
|
229
|
+
managedServiceActivation: input.managedServiceLifecycleRuntime.nativeActivation(),
|
|
230
|
+
managedServiceUICapabilities: input.managedServiceLifecycleRuntime.capabilities(),
|
|
231
|
+
managedServiceUI: input.managedServiceLifecycleRuntime.managedServiceUI,
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
export function createProductionGraphBootstrap(input) {
|
|
235
|
+
const initialConfiguredTopology = configuredPluginTopology(input.configuredComposition);
|
|
236
|
+
const loadCurrentProjection = async () => {
|
|
237
|
+
const active = await input.lifecycleStore.loadActive();
|
|
238
|
+
const registryEpoch = input.lifecycleRuntime.currentRegistryEpoch();
|
|
239
|
+
const [freshConfigured, packagePlugins, freshHomeConfig, pluginBundles, channelManager] = await Promise.all([
|
|
240
|
+
loadConfig(input.configPath, { profileId: input.profileId, projectRoot: path.dirname(input.configPath) }),
|
|
241
|
+
loadPluginComposition(input.lifecycleStore, active),
|
|
242
|
+
loadHomeConfig(input.configPath),
|
|
243
|
+
input.pluginBundleCoordinator.snapshot(),
|
|
244
|
+
input.loadChannelManagerProjection(),
|
|
245
|
+
]);
|
|
246
|
+
if (configuredPluginTopology(freshConfigured) !== initialConfiguredTopology) {
|
|
247
|
+
throw new Error('launcher-configured plugin topology changed during browser graph admission');
|
|
248
|
+
}
|
|
249
|
+
if (pluginBundles.pluginRevision !== active.revision) {
|
|
250
|
+
throw new Error('plugin bundle projection does not match the active plugin revision');
|
|
251
|
+
}
|
|
252
|
+
const currentPackagePlugins = await Promise.all(packagePlugins.map(async (plugin) => {
|
|
253
|
+
if (!plugin.enabled || plugin.package === undefined || usesIsolatedPackageWorker(plugin))
|
|
254
|
+
return plugin;
|
|
255
|
+
const staged = await loadStagedPluginPackage(path.dirname(input.configPath), plugin.package.digest);
|
|
256
|
+
if (staged.browserArtifact === undefined)
|
|
257
|
+
return plugin;
|
|
258
|
+
const runtimeGraph = input.lifecycleRuntime.activeBrowserGraph(plugin.id, plugin.package.moduleGeneration);
|
|
259
|
+
if (runtimeGraph === undefined) {
|
|
260
|
+
throw new Error(`active browser graph lease is unavailable for plugin ${plugin.id}`);
|
|
261
|
+
}
|
|
262
|
+
return { ...plugin, runtimeGraph };
|
|
263
|
+
}));
|
|
264
|
+
const permissionPolicies = freshHomeConfig.permissions.filter(policy => policy.key.profileId === input.profileId);
|
|
265
|
+
const managedServiceUICapabilities = input.managedServiceLifecycleRuntime.capabilities();
|
|
266
|
+
const currentComposition = {
|
|
267
|
+
...freshConfigured,
|
|
268
|
+
plugins: [...freshConfigured.plugins, ...currentPackagePlugins],
|
|
269
|
+
};
|
|
270
|
+
return {
|
|
271
|
+
active,
|
|
272
|
+
registryEpoch,
|
|
273
|
+
currentComposition,
|
|
274
|
+
permissionPolicies,
|
|
275
|
+
pluginBundles,
|
|
276
|
+
channelManager,
|
|
277
|
+
managedServiceUICapabilities,
|
|
278
|
+
fingerprint: JSON.stringify({
|
|
279
|
+
active,
|
|
280
|
+
registryEpoch,
|
|
281
|
+
currentComposition,
|
|
282
|
+
permissionPolicies,
|
|
283
|
+
pluginBundles,
|
|
284
|
+
channelManager,
|
|
285
|
+
managedServiceUICapabilities,
|
|
286
|
+
}),
|
|
287
|
+
};
|
|
288
|
+
};
|
|
289
|
+
return async (expectedActive, expectedRegistryEpoch) => {
|
|
290
|
+
const before = await loadCurrentProjection();
|
|
291
|
+
assertProductionGraphBootstrapSnapshot(expectedActive, expectedRegistryEpoch, before);
|
|
292
|
+
const rebuilt = await input.rendererComposition.rebuild(before.currentComposition, before.active, expectedRegistryEpoch, {
|
|
293
|
+
permissionPolicies: before.permissionPolicies,
|
|
294
|
+
pluginBundles: before.pluginBundles,
|
|
295
|
+
managedServiceUICapabilities: before.managedServiceUICapabilities,
|
|
296
|
+
...(before.channelManager === undefined ? {} : { channelManager: before.channelManager }),
|
|
297
|
+
});
|
|
298
|
+
const after = await loadCurrentProjection();
|
|
299
|
+
if (after.fingerprint !== before.fingerprint) {
|
|
300
|
+
throw new Error('browser graph admission projection changed during source rebuild');
|
|
301
|
+
}
|
|
302
|
+
return rebuilt;
|
|
303
|
+
};
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=renderer-composition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderer-composition.js","sourceRoot":"","sources":["../../../src/cli/renderer-composition.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-command.d.ts","sourceRoot":"","sources":["../../../src/cli/run-command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run-command.d.ts","sourceRoot":"","sources":["../../../src/cli/run-command.ts"],"names":[],"mappings":"AAwHA,OAAO,EAKL,KAAK,iBAAiB,EAYvB,MAAM,kBAAkB,CAAA;AAYzB,wBAAsB,aAAa,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAksB3G"}
|