@msn-control/liftoff 0.9.8 → 0.10.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.
Files changed (107) hide show
  1. package/DEVELOPER.md +142 -0
  2. package/README.md +26 -18
  3. package/assets/governance/single-maintainer-gitflow/policy.md +62 -13
  4. package/dist/args.js +21 -0
  5. package/dist/args.js.map +1 -1
  6. package/dist/artifact-lifecycle.d.ts +1 -1
  7. package/dist/artifact-lifecycle.js +5 -0
  8. package/dist/artifact-lifecycle.js.map +1 -1
  9. package/dist/commands.js +355 -13
  10. package/dist/commands.js.map +1 -1
  11. package/dist/file-system.js +100 -13
  12. package/dist/file-system.js.map +1 -1
  13. package/dist/governance-activation/activation-state.d.ts +32 -0
  14. package/dist/governance-activation/activation-state.js +165 -0
  15. package/dist/governance-activation/activation-state.js.map +1 -0
  16. package/dist/governance-activation/approvals.d.ts +188 -0
  17. package/dist/governance-activation/approvals.js +508 -0
  18. package/dist/governance-activation/approvals.js.map +1 -0
  19. package/dist/governance-activation/canonical-json.d.ts +3 -0
  20. package/dist/governance-activation/canonical-json.js +36 -0
  21. package/dist/governance-activation/canonical-json.js.map +1 -0
  22. package/dist/governance-activation/commands.d.ts +10 -0
  23. package/dist/governance-activation/commands.js +1023 -0
  24. package/dist/governance-activation/commands.js.map +1 -0
  25. package/dist/governance-activation/compatibility.d.ts +68 -0
  26. package/dist/governance-activation/compatibility.js +447 -0
  27. package/dist/governance-activation/compatibility.js.map +1 -0
  28. package/dist/governance-activation/credentials.d.ts +160 -0
  29. package/dist/governance-activation/credentials.js +403 -0
  30. package/dist/governance-activation/credentials.js.map +1 -0
  31. package/dist/governance-activation/doctor.d.ts +10 -0
  32. package/dist/governance-activation/doctor.js +379 -0
  33. package/dist/governance-activation/doctor.js.map +1 -0
  34. package/dist/governance-activation/evidence.d.ts +49 -0
  35. package/dist/governance-activation/evidence.js +246 -0
  36. package/dist/governance-activation/evidence.js.map +1 -0
  37. package/dist/governance-activation/graph.d.ts +397 -0
  38. package/dist/governance-activation/graph.js +441 -0
  39. package/dist/governance-activation/graph.js.map +1 -0
  40. package/dist/governance-activation/identity.d.ts +35 -0
  41. package/dist/governance-activation/identity.js +89 -0
  42. package/dist/governance-activation/identity.js.map +1 -0
  43. package/dist/governance-activation/index.d.ts +18 -0
  44. package/dist/governance-activation/index.js +19 -0
  45. package/dist/governance-activation/index.js.map +1 -0
  46. package/dist/governance-activation/migration.d.ts +44 -0
  47. package/dist/governance-activation/migration.js +268 -0
  48. package/dist/governance-activation/migration.js.map +1 -0
  49. package/dist/governance-activation/readiness.d.ts +23 -0
  50. package/dist/governance-activation/readiness.js +158 -0
  51. package/dist/governance-activation/readiness.js.map +1 -0
  52. package/dist/governance-activation/reconciliation.d.ts +11 -0
  53. package/dist/governance-activation/reconciliation.js +58 -0
  54. package/dist/governance-activation/reconciliation.js.map +1 -0
  55. package/dist/governance-activation/release-integrity.d.ts +11 -0
  56. package/dist/governance-activation/release-integrity.js +49 -0
  57. package/dist/governance-activation/release-integrity.js.map +1 -0
  58. package/dist/governance-activation/seed-lifecycle.d.ts +116 -0
  59. package/dist/governance-activation/seed-lifecycle.js +609 -0
  60. package/dist/governance-activation/seed-lifecycle.js.map +1 -0
  61. package/dist/governance-activation/source-of-truth.d.ts +164 -0
  62. package/dist/governance-activation/source-of-truth.js +986 -0
  63. package/dist/governance-activation/source-of-truth.js.map +1 -0
  64. package/dist/governance-activation/task-projection.d.ts +21 -0
  65. package/dist/governance-activation/task-projection.js +75 -0
  66. package/dist/governance-activation/task-projection.js.map +1 -0
  67. package/dist/governance-activation/transitions.d.ts +163 -0
  68. package/dist/governance-activation/transitions.js +2128 -0
  69. package/dist/governance-activation/transitions.js.map +1 -0
  70. package/dist/governance-activation/type-contract.d.ts +1 -0
  71. package/dist/governance-activation/type-contract.js +27 -0
  72. package/dist/governance-activation/type-contract.js.map +1 -0
  73. package/dist/governance-activation/types.d.ts +390 -0
  74. package/dist/governance-activation/types.js +108 -0
  75. package/dist/governance-activation/types.js.map +1 -0
  76. package/dist/governance-activation/validators.d.ts +17 -0
  77. package/dist/governance-activation/validators.js +1305 -0
  78. package/dist/governance-activation/validators.js.map +1 -0
  79. package/dist/init-filesystem.js +5 -1
  80. package/dist/init-filesystem.js.map +1 -1
  81. package/dist/planner.js +3 -3
  82. package/dist/planner.js.map +1 -1
  83. package/dist/power-apps-templates.js +14 -1
  84. package/dist/power-apps-templates.js.map +1 -1
  85. package/dist/process-runner.d.ts +3 -0
  86. package/dist/process-runner.js +68 -10
  87. package/dist/process-runner.js.map +1 -1
  88. package/dist/repository-governance.d.ts +13 -3
  89. package/dist/repository-governance.js +385 -52
  90. package/dist/repository-governance.js.map +1 -1
  91. package/dist/telemetry/contract.d.ts +1 -1
  92. package/dist/telemetry/contract.js +6 -0
  93. package/dist/telemetry/contract.js.map +1 -1
  94. package/dist/templates.js +320 -25
  95. package/dist/templates.js.map +1 -1
  96. package/dist/types.d.ts +14 -6
  97. package/docs/cli-reference.md +60 -12
  98. package/docs/configuration-and-manifests.md +40 -16
  99. package/docs/existing-repositories.md +22 -11
  100. package/docs/getting-started.md +46 -10
  101. package/docs/prerequisites.md +5 -0
  102. package/docs/project-structure.md +34 -5
  103. package/docs/repository-governance.md +200 -203
  104. package/docs/safety-and-consent.md +29 -2
  105. package/docs/troubleshooting.md +74 -4
  106. package/docs/workloads.md +1 -1
  107. package/package.json +2 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-of-truth.js","sourceRoot":"","sources":["../../src/governance-activation/source-of-truth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { PhaseId, PhaseState } from './types.js';
2
+ export interface PhaseTaskMapping {
3
+ phaseId: PhaseId;
4
+ taskId: string;
5
+ }
6
+ export type PhaseProjectionState = PhaseState | 'identity-incompatible';
7
+ export type PhaseProjectionInput = PhaseProjectionState | {
8
+ state: PhaseProjectionState;
9
+ };
10
+ export interface TaskProjectionChange {
11
+ phaseId: PhaseId;
12
+ taskId: string;
13
+ fromChecked: boolean;
14
+ toChecked: boolean;
15
+ state: PhaseProjectionState;
16
+ }
17
+ export interface TaskProjectionResult {
18
+ markdown: string;
19
+ changes: readonly TaskProjectionChange[];
20
+ }
21
+ export declare function projectOpenSpecTaskCheckboxes(markdown: string, mappings: readonly PhaseTaskMapping[], phaseStates: Partial<Record<PhaseId, PhaseProjectionInput>>): TaskProjectionResult;
@@ -0,0 +1,75 @@
1
+ const checkedStates = new Set([
2
+ 'approved',
3
+ 'verified',
4
+ 'inapplicable',
5
+ 'retained',
6
+ 'disposed'
7
+ ]);
8
+ function escapeRegex(value) {
9
+ return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
10
+ }
11
+ function projectedChecked(state) {
12
+ return checkedStates.has(state);
13
+ }
14
+ function projectionState(value) {
15
+ if (value === undefined) {
16
+ return undefined;
17
+ }
18
+ return typeof value === 'string' ? value : value.state;
19
+ }
20
+ function validateMappings(mappings) {
21
+ const phases = new Set();
22
+ const tasks = new Set();
23
+ for (const mapping of mappings) {
24
+ if (phases.has(mapping.phaseId)) {
25
+ throw new Error(`Task projection contains duplicate mapping for phase ${mapping.phaseId}.`);
26
+ }
27
+ if (tasks.has(mapping.taskId)) {
28
+ throw new Error(`Task projection contains duplicate mapping for task ${mapping.taskId}.`);
29
+ }
30
+ if (mapping.taskId.trim().length === 0) {
31
+ throw new Error(`Task projection task id for phase ${mapping.phaseId} must be non-empty.`);
32
+ }
33
+ phases.add(mapping.phaseId);
34
+ tasks.add(mapping.taskId);
35
+ }
36
+ }
37
+ export function projectOpenSpecTaskCheckboxes(markdown, mappings, phaseStates) {
38
+ validateMappings(mappings);
39
+ const lines = markdown.split('\n');
40
+ const changes = [];
41
+ for (const mapping of mappings) {
42
+ const state = projectionState(phaseStates[mapping.phaseId]);
43
+ if (!state) {
44
+ throw new Error(`Task projection is missing calculated phase state for ${mapping.phaseId}.`);
45
+ }
46
+ const pattern = new RegExp(`^(\\s*[-*]\\s+\\[)([ xX])(\\]\\s+${escapeRegex(mapping.taskId)}(?=\\s|$).*)$`);
47
+ const matches = lines
48
+ .map((line, index) => ({ line, index, match: line.match(pattern) }))
49
+ .filter((entry) => entry.match !== null);
50
+ if (matches.length === 0) {
51
+ throw new Error(`Task projection mapping for ${mapping.phaseId} cannot find task ${mapping.taskId}.`);
52
+ }
53
+ if (matches.length > 1) {
54
+ throw new Error(`Task projection mapping for ${mapping.phaseId} is ambiguous for task ${mapping.taskId}.`);
55
+ }
56
+ const [match] = matches;
57
+ const fromChecked = match.match[2].toLowerCase() === 'x';
58
+ const toChecked = projectedChecked(state);
59
+ if (fromChecked !== toChecked) {
60
+ lines[match.index] = `${match.match[1]}${toChecked ? 'x' : ' '}${match.match[3]}`;
61
+ changes.push({
62
+ phaseId: mapping.phaseId,
63
+ taskId: mapping.taskId,
64
+ fromChecked,
65
+ toChecked,
66
+ state
67
+ });
68
+ }
69
+ }
70
+ return {
71
+ markdown: lines.join('\n'),
72
+ changes
73
+ };
74
+ }
75
+ //# sourceMappingURL=task-projection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-projection.js","sourceRoot":"","sources":["../../src/governance-activation/task-projection.ts"],"names":[],"mappings":"AAuBA,MAAM,aAAa,GAAG,IAAI,GAAG,CAAuB;IAClD,UAAU;IACV,UAAU;IACV,cAAc;IACd,UAAU;IACV,UAAU;CACX,CAAC,CAAC;AAEH,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA2B;IACnD,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,eAAe,CAAC,KAAuC;IAC9D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;AACzD,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAqC;IAC7D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAW,CAAC;IAClC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,wDAAwD,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,uDAAuD,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAC,OAAO,qBAAqB,CAAC,CAAC;QAC7F,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5B,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,QAAgB,EAChB,QAAqC,EACrC,WAA2D;IAE3D,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,yDAAyD,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;QAC/F,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,oCAAoC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC3G,MAAM,OAAO,GAAG,KAAK;aAClB,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;aACnE,MAAM,CAAC,CAAC,KAAK,EAAqE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;QAC9G,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,OAAO,CAAC,OAAO,qBAAqB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACxG,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,OAAO,CAAC,OAAO,0BAA0B,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7G,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;QACxB,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC;QAC1D,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,OAAO,CAAC,IAAI,CAAC;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,WAAW;gBACX,SAAS;gBACT,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1B,OAAO;KACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,163 @@
1
+ import type { CommandRunner } from '../process-runner.js';
2
+ import type { LiftoffManifest } from '../types.js';
3
+ import { type ProjectFileMutation } from '../file-system.js';
4
+ import { type EvidenceFreshnessContext } from './evidence.js';
5
+ import { type GovernanceSourceOfTruthInspection } from './source-of-truth.js';
6
+ import type { ApprovalEnvelope, EvidenceHeader, LiveReadbackProof, ManagedPhaseGraph, MutationClass, PhaseEvidenceRecord, PhaseGraphNode, PhaseId, SavedTransitionPlan, TransitionOperation, TransitionRollbackPlan, UserActivationState } from './types.js';
7
+ import { type LoadedActivationState } from './activation-state.js';
8
+ export declare const governancePlanDirectoryPathParts: readonly ['governance', 'plans'];
9
+ export interface GovernanceTransitionInspection {
10
+ projectRoot: string;
11
+ manifest: LiftoffManifest;
12
+ graph: ManagedPhaseGraph;
13
+ graphHash: string;
14
+ loadedState?: LoadedActivationState;
15
+ state: UserActivationState;
16
+ approvals: readonly ApprovalEnvelope[];
17
+ evidence: readonly PhaseEvidenceRecord[];
18
+ contexts: Record<PhaseId, EvidenceFreshnessContext>;
19
+ readiness: {
20
+ nextReadyPhase: PhaseId | null;
21
+ phases: Record<PhaseId, {
22
+ state: string;
23
+ blockers: readonly string[];
24
+ }>;
25
+ };
26
+ sourceOfTruth: GovernanceSourceOfTruthInspection;
27
+ }
28
+ export interface GitRepositoryInspection {
29
+ insideWorkTree: boolean;
30
+ root: string | null;
31
+ branch: string | null;
32
+ head: string | null;
33
+ upstream: string | null;
34
+ status: readonly GitStatusEntry[];
35
+ remotes: readonly GitRemote[];
36
+ issues: readonly string[];
37
+ }
38
+ export interface GitStatusEntry {
39
+ index: string;
40
+ worktree: string;
41
+ path: string;
42
+ }
43
+ export interface GitRemote {
44
+ name: string;
45
+ url: string;
46
+ }
47
+ export interface Phase0DiscoveryFacts {
48
+ repositoryId: string;
49
+ repositoryName: string;
50
+ defaultBranch: string;
51
+ baselineDigest: string;
52
+ privateStagingDast: boolean;
53
+ credentialRequired: boolean;
54
+ statePath: UserActivationState['applicability']['statePath'];
55
+ approvedFacts: readonly {
56
+ id: string;
57
+ value: string | number | boolean | null;
58
+ }[];
59
+ }
60
+ export interface GitHubRulesetWriteResult {
61
+ resourceId: string;
62
+ sourceDigest: string;
63
+ readbackDigest: string;
64
+ }
65
+ export interface GitHubRulesetAdapter {
66
+ applyRuleset(input: {
67
+ repository: string;
68
+ sourceDigest: string;
69
+ approvalEnvelopeId: string;
70
+ }): Promise<GitHubRulesetWriteResult>;
71
+ readRuleset(input: {
72
+ repository: string;
73
+ sourceDigest: string;
74
+ }): Promise<GitHubRulesetWriteResult>;
75
+ }
76
+ export interface PhaseAdapterOutcome {
77
+ status: 'completed' | 'blocked';
78
+ resultState?: EvidenceHeader['result'] | 'approved';
79
+ blocker?: string;
80
+ evidencePayload?: unknown;
81
+ liveReadback?: readonly LiveReadbackProof[];
82
+ stateOverride?: UserActivationState;
83
+ fileMutations?: readonly ProjectFileMutation[];
84
+ completedOperations?: readonly TransitionOperation[];
85
+ cleanupWarnings?: readonly string[];
86
+ }
87
+ export interface GovernancePhaseAdapter {
88
+ phaseId: PhaseId;
89
+ execute(input: PhaseAdapterExecutionInput): Promise<PhaseAdapterOutcome>;
90
+ }
91
+ export interface PhaseAdapterExecutionInput {
92
+ inspection: GovernanceTransitionInspection;
93
+ plan: SavedTransitionPlan;
94
+ phase: PhaseGraphNode;
95
+ runner: CommandRunner;
96
+ adapters: GovernanceTransitionAdapters;
97
+ now: Date;
98
+ }
99
+ export interface GovernanceTransitionAdapters {
100
+ phases?: Partial<Record<PhaseId, GovernancePhaseAdapter>>;
101
+ githubRulesets?: GitHubRulesetAdapter;
102
+ }
103
+ export interface ApplyNextPreview {
104
+ schemaVersion: 1;
105
+ command: 'governance apply-next';
106
+ projectRoot: string;
107
+ execute: boolean;
108
+ applied: false;
109
+ authorized: boolean;
110
+ reason: string;
111
+ message: string;
112
+ nextReadyPhase: PhaseId | null;
113
+ approval: SavedTransitionPlan['approval'] | null;
114
+ proposedMutations: {
115
+ local: readonly MutationClass[];
116
+ remote: readonly MutationClass[];
117
+ operations: readonly TransitionOperation[];
118
+ };
119
+ savedPlan: null | {
120
+ pathParts: readonly string[];
121
+ digest: string;
122
+ };
123
+ noWrites: boolean;
124
+ blockers: readonly string[];
125
+ }
126
+ export interface ApplyNextExecutionResult extends Omit<ApplyNextPreview, 'applied' | 'savedPlan' | 'noWrites'> {
127
+ applied: boolean;
128
+ savedPlan: {
129
+ pathParts: readonly string[];
130
+ digest: string;
131
+ } | null;
132
+ noWrites: false;
133
+ executedOperations: readonly TransitionOperation[];
134
+ evidence: {
135
+ evidenceId: string;
136
+ pathParts: readonly string[];
137
+ headerDigest: string;
138
+ result: EvidenceHeader['result'];
139
+ } | null;
140
+ stateHash: string | null;
141
+ rollbackPlan: TransitionRollbackPlan;
142
+ cleanupWarnings: readonly string[];
143
+ }
144
+ export declare function transitionPlanPathParts(plan: SavedTransitionPlan): string[];
145
+ export declare function rollbackPlanFromCompletedOperations(phaseId: PhaseId, strategy: TransitionRollbackPlan['strategy'], target: PhaseId | null, completed: readonly TransitionOperation[]): TransitionRollbackPlan;
146
+ export declare function buildSavedTransitionPlan(input: {
147
+ inspection: GovernanceTransitionInspection;
148
+ runner?: CommandRunner;
149
+ now?: Date;
150
+ }): Promise<SavedTransitionPlan | null>;
151
+ export declare function previewApplyNext(input: {
152
+ inspection: GovernanceTransitionInspection;
153
+ runner?: CommandRunner;
154
+ now?: Date;
155
+ execute: boolean;
156
+ }): Promise<ApplyNextPreview>;
157
+ export declare function executeApplyNext(input: {
158
+ inspection: GovernanceTransitionInspection;
159
+ reinspect: () => Promise<GovernanceTransitionInspection>;
160
+ runner?: CommandRunner;
161
+ adapters?: GovernanceTransitionAdapters;
162
+ now?: Date;
163
+ }): Promise<ApplyNextExecutionResult>;