@msn-control/liftoff 0.9.9 → 0.10.1

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 (111) hide show
  1. package/DEVELOPER.md +142 -0
  2. package/README.md +26 -18
  3. package/assets/governance/single-maintainer-gitflow/policy.md +13 -11
  4. package/dist/args.js +23 -1
  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/catalogs.d.ts +2 -0
  10. package/dist/catalogs.js +13 -1
  11. package/dist/catalogs.js.map +1 -1
  12. package/dist/commands.js +365 -17
  13. package/dist/commands.js.map +1 -1
  14. package/dist/file-system.js +100 -13
  15. package/dist/file-system.js.map +1 -1
  16. package/dist/governance-activation/activation-state.d.ts +32 -0
  17. package/dist/governance-activation/activation-state.js +165 -0
  18. package/dist/governance-activation/activation-state.js.map +1 -0
  19. package/dist/governance-activation/approvals.d.ts +188 -0
  20. package/dist/governance-activation/approvals.js +508 -0
  21. package/dist/governance-activation/approvals.js.map +1 -0
  22. package/dist/governance-activation/canonical-json.d.ts +3 -0
  23. package/dist/governance-activation/canonical-json.js +36 -0
  24. package/dist/governance-activation/canonical-json.js.map +1 -0
  25. package/dist/governance-activation/commands.d.ts +10 -0
  26. package/dist/governance-activation/commands.js +1023 -0
  27. package/dist/governance-activation/commands.js.map +1 -0
  28. package/dist/governance-activation/compatibility.d.ts +68 -0
  29. package/dist/governance-activation/compatibility.js +447 -0
  30. package/dist/governance-activation/compatibility.js.map +1 -0
  31. package/dist/governance-activation/credentials.d.ts +160 -0
  32. package/dist/governance-activation/credentials.js +403 -0
  33. package/dist/governance-activation/credentials.js.map +1 -0
  34. package/dist/governance-activation/doctor.d.ts +10 -0
  35. package/dist/governance-activation/doctor.js +379 -0
  36. package/dist/governance-activation/doctor.js.map +1 -0
  37. package/dist/governance-activation/evidence.d.ts +49 -0
  38. package/dist/governance-activation/evidence.js +246 -0
  39. package/dist/governance-activation/evidence.js.map +1 -0
  40. package/dist/governance-activation/graph.d.ts +397 -0
  41. package/dist/governance-activation/graph.js +441 -0
  42. package/dist/governance-activation/graph.js.map +1 -0
  43. package/dist/governance-activation/identity.d.ts +35 -0
  44. package/dist/governance-activation/identity.js +89 -0
  45. package/dist/governance-activation/identity.js.map +1 -0
  46. package/dist/governance-activation/index.d.ts +18 -0
  47. package/dist/governance-activation/index.js +19 -0
  48. package/dist/governance-activation/index.js.map +1 -0
  49. package/dist/governance-activation/migration.d.ts +44 -0
  50. package/dist/governance-activation/migration.js +268 -0
  51. package/dist/governance-activation/migration.js.map +1 -0
  52. package/dist/governance-activation/readiness.d.ts +23 -0
  53. package/dist/governance-activation/readiness.js +158 -0
  54. package/dist/governance-activation/readiness.js.map +1 -0
  55. package/dist/governance-activation/reconciliation.d.ts +11 -0
  56. package/dist/governance-activation/reconciliation.js +58 -0
  57. package/dist/governance-activation/reconciliation.js.map +1 -0
  58. package/dist/governance-activation/release-integrity.d.ts +11 -0
  59. package/dist/governance-activation/release-integrity.js +49 -0
  60. package/dist/governance-activation/release-integrity.js.map +1 -0
  61. package/dist/governance-activation/seed-lifecycle.d.ts +116 -0
  62. package/dist/governance-activation/seed-lifecycle.js +609 -0
  63. package/dist/governance-activation/seed-lifecycle.js.map +1 -0
  64. package/dist/governance-activation/source-of-truth.d.ts +164 -0
  65. package/dist/governance-activation/source-of-truth.js +986 -0
  66. package/dist/governance-activation/source-of-truth.js.map +1 -0
  67. package/dist/governance-activation/task-projection.d.ts +21 -0
  68. package/dist/governance-activation/task-projection.js +75 -0
  69. package/dist/governance-activation/task-projection.js.map +1 -0
  70. package/dist/governance-activation/transitions.d.ts +163 -0
  71. package/dist/governance-activation/transitions.js +2128 -0
  72. package/dist/governance-activation/transitions.js.map +1 -0
  73. package/dist/governance-activation/type-contract.d.ts +1 -0
  74. package/dist/governance-activation/type-contract.js +27 -0
  75. package/dist/governance-activation/type-contract.js.map +1 -0
  76. package/dist/governance-activation/types.d.ts +390 -0
  77. package/dist/governance-activation/types.js +108 -0
  78. package/dist/governance-activation/types.js.map +1 -0
  79. package/dist/governance-activation/validators.d.ts +17 -0
  80. package/dist/governance-activation/validators.js +1305 -0
  81. package/dist/governance-activation/validators.js.map +1 -0
  82. package/dist/init-filesystem.js +5 -1
  83. package/dist/init-filesystem.js.map +1 -1
  84. package/dist/interactive.js +4 -3
  85. package/dist/interactive.js.map +1 -1
  86. package/dist/planner.js +5 -5
  87. package/dist/planner.js.map +1 -1
  88. package/dist/power-apps-templates.js +14 -1
  89. package/dist/power-apps-templates.js.map +1 -1
  90. package/dist/process-runner.d.ts +3 -0
  91. package/dist/process-runner.js +68 -10
  92. package/dist/process-runner.js.map +1 -1
  93. package/dist/repository-governance.d.ts +13 -3
  94. package/dist/repository-governance.js +357 -51
  95. package/dist/repository-governance.js.map +1 -1
  96. package/dist/telemetry/contract.d.ts +1 -1
  97. package/dist/telemetry/contract.js +6 -0
  98. package/dist/telemetry/contract.js.map +1 -1
  99. package/dist/templates.js +320 -25
  100. package/dist/templates.js.map +1 -1
  101. package/dist/types.d.ts +15 -7
  102. package/docs/cli-reference.md +61 -13
  103. package/docs/configuration-and-manifests.md +43 -16
  104. package/docs/existing-repositories.md +22 -11
  105. package/docs/getting-started.md +46 -10
  106. package/docs/project-structure.md +35 -6
  107. package/docs/repository-governance.md +200 -245
  108. package/docs/safety-and-consent.md +24 -2
  109. package/docs/troubleshooting.md +59 -4
  110. package/docs/workloads.md +1 -1
  111. package/package.json +2 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transitions.js","sourceRoot":"","sources":["../../src/governance-activation/transitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,27 @@
1
+ function compileTimeTypeContract() {
2
+ function acceptIdentity(_identity) { }
3
+ // @ts-expect-error phase identifiers are closed over the canonical graph.
4
+ const badPhaseId = 'remote-ready-before-import';
5
+ // @ts-expect-error phase states are closed over activation-state schema v1.
6
+ const badPhaseState = 'done';
7
+ acceptIdentity({
8
+ liftoffVersion: '0.10.0',
9
+ manifestArtifactVersion: 7,
10
+ policyVersion: '6',
11
+ activationContractVersion: 1,
12
+ phaseGraphSchemaVersion: 1,
13
+ phaseGraphHash: '0000000000000000000000000000000000000000000000000000000000000000',
14
+ activationStateSchemaVersion: 1,
15
+ evidenceHeaderSchemaVersion: 1,
16
+ approvalEnvelopeSchemaVersion: 1,
17
+ supersessionSchemaVersion: 1,
18
+ credentialPolicySchemaVersion: 1,
19
+ // @ts-expect-error activation identity does not carry a setup-skill version.
20
+ setupSkillVersion: '1'
21
+ });
22
+ void badPhaseId;
23
+ void badPhaseState;
24
+ }
25
+ void compileTimeTypeContract;
26
+ export {};
27
+ //# sourceMappingURL=type-contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-contract.js","sourceRoot":"","sources":["../../src/governance-activation/type-contract.ts"],"names":[],"mappings":"AAEA,SAAS,uBAAuB;IAC9B,SAAS,cAAc,CAAC,SAA6B,IAAS,CAAC;IAE/D,0EAA0E;IAC1E,MAAM,UAAU,GAAY,4BAA4B,CAAC;IACzD,4EAA4E;IAC5E,MAAM,aAAa,GAAe,MAAM,CAAC;IACzC,cAAc,CAAC;QACb,cAAc,EAAE,QAAQ;QACxB,uBAAuB,EAAE,CAAC;QAC1B,aAAa,EAAE,GAAG;QAClB,yBAAyB,EAAE,CAAC;QAC5B,uBAAuB,EAAE,CAAC;QAC1B,cAAc,EAAE,kEAAkE;QAClF,4BAA4B,EAAE,CAAC;QAC/B,2BAA2B,EAAE,CAAC;QAC9B,6BAA6B,EAAE,CAAC;QAChC,yBAAyB,EAAE,CAAC;QAC5B,6BAA6B,EAAE,CAAC;QAChC,6EAA6E;QAC7E,iBAAiB,EAAE,GAAG;KACvB,CAAC,CAAC;IACH,KAAK,UAAU,CAAC;IAChB,KAAK,aAAa,CAAC;AACrB,CAAC;AAED,KAAK,uBAAuB,CAAC"}
@@ -0,0 +1,390 @@
1
+ export declare const phaseIds: readonly ['seed-valid', 'seed-verified', 'seed-archived', 'committed', 'pushed', 'phase-0-complete', 'activation-approved', 'credential-ready', 'provider-ready', 'state-path-selected', 'existing-private-path', 'bootstrap-local', 'runner-ready', 'private-backend-proof', 'remote-import-verified', 'remote-ready', 'application-foundation', 'workflow-source-ready', 'dev-proof', 'staging-qualified', 'production-rehearsed', 'green-red-proof', 'enforcement-approved', 'rulesets-applied', 'live-readback', 'bootstrap-state-disposed'];
2
+ export type PhaseId = typeof phaseIds[number];
3
+ export declare const phaseStates: readonly ['pending', 'blocked', 'ready', 'approved', 'running', 'verified', 'failed', 'inapplicable', 'retained', 'disposed'];
4
+ export type PhaseState = typeof phaseStates[number];
5
+ export type TerminalPhaseState = Extract<PhaseState, 'approved' | 'verified' | 'failed' | 'inapplicable' | 'retained' | 'disposed'>;
6
+ export declare const mutationClasses: readonly ['none', 'read-worktree', 'write-activation-state', 'write-evidence', 'write-openspec-seed', 'write-openspec-governance', 'write-local-state', 'delete-local-state', 'write-workflows', 'write-ruleset-source', 'git-commit', 'git-push', 'github-read', 'github-write', 'github-secret-write', 'azure-read', 'azure-provider-register', 'azure-network-provision', 'azure-state-import', 'azure-resource-provision', 'github-ruleset-write'];
7
+ export type MutationClass = typeof mutationClasses[number];
8
+ export declare const approvalGateKinds: readonly ['none', 'repository-publish', 'activation-plan', 'credential-enrollment', 'infrastructure-cost', 'enforcement', 'destructive-disposal', 'external-blocker'];
9
+ export type ApprovalGateKind = typeof approvalGateKinds[number];
10
+ export declare const humanAuthorityQuestionKinds: readonly ['repository-creation-initial-commit-push', 'credential-enrollment', 'billed-infrastructure-policy-exception-cost-ceiling', 'final-enforcement', 'destructive-operation', 'external-blocker'];
11
+ export type HumanAuthorityQuestionKind = typeof humanAuthorityQuestionKinds[number];
12
+ export declare const invalidationInputKinds: readonly ['activation-identity', 'graph-hash', 'baseline-sha', 'project-files', 'policy', 'approval-envelope', 'credentials', 'provider-inventory', 'runner-inventory', 'remote-state', 'workflow-source', 'live-readback', 'security-evidence', 'ruleset-readback'];
13
+ export type InvalidationInputKind = typeof invalidationInputKinds[number];
14
+ export declare const rollbackKinds: readonly ['none', 'retain', 'reverse-to', 'dispose'];
15
+ export type RollbackKind = typeof rollbackKinds[number];
16
+ export interface ActivationIdentity {
17
+ liftoffVersion: string;
18
+ manifestArtifactVersion: number;
19
+ policyVersion: string;
20
+ activationContractVersion: number;
21
+ phaseGraphSchemaVersion: number;
22
+ phaseGraphHash: string;
23
+ activationStateSchemaVersion: number;
24
+ evidenceHeaderSchemaVersion: number;
25
+ approvalEnvelopeSchemaVersion: number;
26
+ supersessionSchemaVersion: number;
27
+ credentialPolicySchemaVersion: number;
28
+ }
29
+ export interface GraphVersionIdentity {
30
+ liftoffVersion: string;
31
+ policyVersion: string;
32
+ activationContractVersion: number;
33
+ phaseGraphSchemaVersion: number;
34
+ }
35
+ export interface PhaseDependency {
36
+ anyOf: readonly PhaseId[];
37
+ accepts: readonly TerminalPhaseState[];
38
+ description: string;
39
+ }
40
+ export type PhaseApplicability = {
41
+ kind: 'always';
42
+ } | {
43
+ kind: 'conditional';
44
+ discriminator: 'state-path' | 'private-staging-dast' | 'credential-required';
45
+ when: string;
46
+ inapplicableWhen: string;
47
+ exclusiveWith: readonly PhaseId[];
48
+ };
49
+ export interface ApprovalGate {
50
+ kind: ApprovalGateKind;
51
+ required: boolean;
52
+ envelopeSchemaVersion: number;
53
+ }
54
+ export interface AllowedMutations {
55
+ local: readonly MutationClass[];
56
+ remote: readonly MutationClass[];
57
+ }
58
+ export type LiveReadbackProvider = 'github' | 'azure';
59
+ export interface EvidenceRequirement {
60
+ schema: string;
61
+ required: boolean;
62
+ headerSchemaVersion: number;
63
+ liveReadbackProviders: readonly LiveReadbackProvider[];
64
+ }
65
+ export interface RollbackBehavior {
66
+ kind: RollbackKind;
67
+ target: PhaseId | null;
68
+ description: string;
69
+ }
70
+ export interface PhaseGraphNode {
71
+ id: PhaseId;
72
+ label: string;
73
+ dependencies: readonly PhaseDependency[];
74
+ applicability: PhaseApplicability;
75
+ allowedMutations: AllowedMutations;
76
+ evidence: EvidenceRequirement;
77
+ approvalGate: ApprovalGate;
78
+ invalidationInputs: readonly InvalidationInputKind[];
79
+ rollback: RollbackBehavior;
80
+ terminalStates: readonly TerminalPhaseState[];
81
+ }
82
+ export interface ManagedPhaseGraph {
83
+ schemaVersion: number;
84
+ versions: GraphVersionIdentity;
85
+ phases: readonly PhaseGraphNode[];
86
+ }
87
+ export interface EvidenceReference {
88
+ phaseId: PhaseId;
89
+ evidenceId: string;
90
+ headerDigest: string;
91
+ result: Extract<TerminalPhaseState, 'verified' | 'failed' | 'inapplicable' | 'retained' | 'disposed'>;
92
+ }
93
+ export interface EvidenceTransitionIdentity {
94
+ phaseId: PhaseId;
95
+ baselineSha: string;
96
+ inputDigest: string;
97
+ transitionDigest: string;
98
+ }
99
+ export interface PhaseExecutionState {
100
+ state: PhaseState;
101
+ updatedAt: string;
102
+ evidence: readonly EvidenceReference[];
103
+ approvals: readonly string[];
104
+ blockers: readonly string[];
105
+ }
106
+ export interface UserActivationState {
107
+ schemaVersion: number;
108
+ identity: ActivationIdentity;
109
+ repository: {
110
+ id: string;
111
+ name: string;
112
+ defaultBranch: string;
113
+ };
114
+ activeChange: {
115
+ id: string;
116
+ kind: 'openspec' | 'spec-kit';
117
+ } | null;
118
+ applicability: {
119
+ statePath: 'existing-private' | 'bootstrap-local' | 'none';
120
+ privateStagingDast: boolean;
121
+ credentialRequired: boolean;
122
+ };
123
+ bootstrapState?: BootstrapStateRetention;
124
+ phases: Record<PhaseId, PhaseExecutionState>;
125
+ createdAt: string;
126
+ updatedAt: string;
127
+ }
128
+ export interface EvidenceHeader {
129
+ schemaVersion: number;
130
+ repositoryId: string;
131
+ identity: ActivationIdentity;
132
+ phaseGraphHash: string;
133
+ phaseId: PhaseId;
134
+ phaseContractDigest: string;
135
+ inputDigest: string;
136
+ baselineSha: string;
137
+ transition: EvidenceTransitionIdentity;
138
+ producedAt: string;
139
+ producer: string;
140
+ result: Extract<TerminalPhaseState, 'verified' | 'failed' | 'inapplicable' | 'retained' | 'disposed'>;
141
+ }
142
+ export interface LiveReadbackProof {
143
+ schemaVersion: number;
144
+ repositoryId: string;
145
+ identity: ActivationIdentity;
146
+ phaseGraphHash: string;
147
+ phaseId: PhaseId;
148
+ baselineSha: string;
149
+ inputDigest: string;
150
+ transition: EvidenceTransitionIdentity;
151
+ observedAt: string;
152
+ provider: LiveReadbackProvider;
153
+ resourceType: string;
154
+ resourceId: string;
155
+ sourceDigest: string;
156
+ readbackDigest: string;
157
+ matches: boolean;
158
+ }
159
+ export interface PhaseEvidenceRecord {
160
+ evidenceId: string;
161
+ header: EvidenceHeader;
162
+ liveReadback?: readonly LiveReadbackProof[];
163
+ payload?: unknown;
164
+ }
165
+ export type TransitionAdapterId = 'local-evidence' | 'selected-spec-workflow' | 'git' | 'github' | 'azure-opentofu' | 'local-state';
166
+ export interface TransitionOperationDestination {
167
+ type: 'local' | 'repository' | 'subscription' | 'environment' | 'tenant' | 'external';
168
+ identity: string;
169
+ pathParts?: readonly string[];
170
+ repository?: string;
171
+ subscriptionId?: string;
172
+ ref?: string;
173
+ }
174
+ export interface TransitionOperation {
175
+ adapter: TransitionAdapterId;
176
+ actionId: string;
177
+ mutationClass: MutationClass;
178
+ phaseId: PhaseId;
179
+ inputs: Record<string, unknown>;
180
+ destination: TransitionOperationDestination;
181
+ remote: boolean;
182
+ destructive: boolean;
183
+ }
184
+ export interface RollbackOperation {
185
+ adapter: TransitionAdapterId;
186
+ actionId: string;
187
+ mutationClass: MutationClass;
188
+ phaseId: PhaseId;
189
+ inputs: Record<string, unknown>;
190
+ destination: TransitionOperationDestination;
191
+ remote: boolean;
192
+ destructive: boolean;
193
+ }
194
+ export interface TransitionRollbackPlan {
195
+ phaseId: PhaseId;
196
+ strategy: RollbackKind;
197
+ target: PhaseId | null;
198
+ operations: readonly RollbackOperation[];
199
+ retained: readonly string[];
200
+ cleanupWarnings: readonly string[];
201
+ }
202
+ export interface SavedTransitionPlan {
203
+ schemaVersion: 1;
204
+ phaseId: PhaseId;
205
+ createdAt: string;
206
+ expiresAt: string;
207
+ identity: ActivationIdentity;
208
+ graphHash: string;
209
+ stateHash: string | null;
210
+ baselineDigest: string;
211
+ inputDigest: string;
212
+ transitionDigest: string;
213
+ planDigest: string;
214
+ mutationClasses: AllowedMutations;
215
+ operations: readonly TransitionOperation[];
216
+ approval: {
217
+ gateKind: ApprovalGateKind;
218
+ required: boolean;
219
+ evaluation: ApprovalEvaluation;
220
+ envelopeId: string | null;
221
+ envelopeHash: string | null;
222
+ };
223
+ rollbackPlan: TransitionRollbackPlan;
224
+ noSecrets: true;
225
+ }
226
+ export interface BootstrapStateRetention {
227
+ status: 'retained' | 'disposed';
228
+ remoteImportEvidenceId: string;
229
+ remoteImportEvidenceDigest: string;
230
+ retainedAt: string;
231
+ disposeAfter: string;
232
+ encryptedStatePathParts: readonly (readonly string[])[];
233
+ encryptionKeyPathParts: readonly (readonly string[])[];
234
+ disposedAt?: string;
235
+ deletionEvidenceId?: string;
236
+ incompleteCleanup?: readonly string[];
237
+ }
238
+ export interface GraphReconciliationPhaseMapping {
239
+ phaseId: PhaseId;
240
+ fromContractDigest: string;
241
+ toContractDigest: string;
242
+ preserveEvidence: boolean;
243
+ }
244
+ export interface GraphReconciliationRecord {
245
+ schemaVersion: number;
246
+ fromGraphHash: string;
247
+ toGraphHash: string;
248
+ fromIdentity: ActivationIdentity;
249
+ toIdentity: ActivationIdentity;
250
+ phaseMappings: readonly GraphReconciliationPhaseMapping[];
251
+ reconciledAt: string;
252
+ producer: string;
253
+ }
254
+ export interface ApprovalResourceScope {
255
+ type: string;
256
+ identity: string;
257
+ }
258
+ export interface ApprovalDestinationScope {
259
+ type: 'repository' | 'subscription' | 'environment' | 'tenant' | 'local' | 'external';
260
+ identity: string;
261
+ repository: string | null;
262
+ subscriptionId: string | null;
263
+ }
264
+ export interface ApprovalCostCeiling {
265
+ currency: string;
266
+ fixedMonthlyCents: number;
267
+ usageMonthlyCents: number;
268
+ }
269
+ export interface ApprovalEnvelope {
270
+ schemaVersion: number;
271
+ id: string;
272
+ phaseId: PhaseId;
273
+ gateKind: ApprovalGateKind;
274
+ identity: ActivationIdentity;
275
+ baselineSha: string;
276
+ planDigest: string;
277
+ resources: readonly ApprovalResourceScope[];
278
+ destinations: readonly ApprovalDestinationScope[];
279
+ permissions: readonly string[];
280
+ costCeiling: ApprovalCostCeiling;
281
+ policyExceptions: readonly string[];
282
+ destructiveScope: readonly string[];
283
+ expiresAt: string;
284
+ /**
285
+ * Approval metadata is validated and persisted for audit display, but it is
286
+ * deliberately excluded from the canonical approval-envelope hash so retries
287
+ * inside the same reviewed scope remain hash-stable.
288
+ */
289
+ approvedAt: string;
290
+ approver: string;
291
+ }
292
+ export interface RequestedTransitionPlan {
293
+ phaseId: PhaseId;
294
+ gateKind: ApprovalGateKind;
295
+ identity: ActivationIdentity;
296
+ baselineSha: string;
297
+ planDigest: string;
298
+ resources: readonly ApprovalResourceScope[];
299
+ destinations: readonly ApprovalDestinationScope[];
300
+ permissions: readonly string[];
301
+ costCeiling: ApprovalCostCeiling;
302
+ policyExceptions: readonly string[];
303
+ destructiveScope: readonly string[];
304
+ }
305
+ export interface ApprovalEvaluation {
306
+ phaseId: PhaseId;
307
+ gateKind: ApprovalGateKind;
308
+ questionKind: HumanAuthorityQuestionKind | null;
309
+ approvalRequired: boolean;
310
+ status: 'not-required' | 'approval-required' | 'reused' | 'expired' | 'invalidated';
311
+ envelopeId: string | null;
312
+ envelopeHash: string | null;
313
+ reasons: readonly string[];
314
+ expansionReasons: readonly string[];
315
+ }
316
+ export interface SupersessionRecord {
317
+ schemaVersion: number;
318
+ identity: ActivationIdentity;
319
+ supersededChangeId: string;
320
+ supersedingChangeId: string;
321
+ reason: string;
322
+ approvedAt: string;
323
+ approver: string;
324
+ }
325
+ export declare const runnerPreflightDisplayNameTemplate: '<repo>-runner-preflight-read';
326
+ export declare const runnerPreflightSecretName: 'RUNNER_CONFIGURATION_READ_TOKEN';
327
+ export declare const runnerPreflightPatLifetimeDays: 30;
328
+ export declare const runnerPreflightRotationLeadDays: 7;
329
+ export declare const runnerPreflightRepositoryPermissions: readonly ['metadata:read'];
330
+ export declare const runnerPreflightOrganizationPermissions: readonly ['hosted-runners:read', 'network-configurations:read'];
331
+ export type CredentialAuthKind = 'github-app' | 'fine-grained-pat';
332
+ export type CredentialStatus = 'active' | 'expiring' | 'expired' | 'compromised';
333
+ export interface CredentialRepositoryIdentity {
334
+ id: string;
335
+ owner: string;
336
+ name: string;
337
+ fullName: string;
338
+ }
339
+ export interface CredentialPermissionSet {
340
+ repository: readonly string[];
341
+ organization: readonly string[];
342
+ }
343
+ export interface CredentialWorkflowAllowlistEntry {
344
+ path: string;
345
+ jobs: readonly string[];
346
+ }
347
+ export interface GitHubAppCredentialMetadata {
348
+ installationId: number;
349
+ appSlug: string;
350
+ selection: 'selected-repository';
351
+ repositoryFullName: string;
352
+ permissionsVerifiedAt: string;
353
+ token: {
354
+ strategy: 'installation-token';
355
+ ttlSeconds: number;
356
+ generatedBy: 'github-app';
357
+ };
358
+ }
359
+ export interface FineGrainedPatCredentialMetadata {
360
+ lifetimeDays: typeof runnerPreflightPatLifetimeDays;
361
+ selectedRepositoryOnly: true;
362
+ createdBy: 'manual-masked-entry';
363
+ }
364
+ export interface CredentialPolicyProofMetadata {
365
+ verifiedAt: string;
366
+ readbackDigest: string;
367
+ readbackProvider: 'github-api' | 'adapter-fixture';
368
+ payloadFree: true;
369
+ }
370
+ export interface CredentialPolicy {
371
+ schemaVersion: number;
372
+ identity: ActivationIdentity;
373
+ repository: CredentialRepositoryIdentity;
374
+ owner: string;
375
+ authKind: CredentialAuthKind;
376
+ displayNameTemplate: typeof runnerPreflightDisplayNameTemplate;
377
+ displayName: string;
378
+ secretName: typeof runnerPreflightSecretName;
379
+ createdAt: string;
380
+ expiresAt: string;
381
+ rotationLeadDays: typeof runnerPreflightRotationLeadDays;
382
+ rotationDueAt: string;
383
+ permissions: CredentialPermissionSet;
384
+ allowedWorkflows: readonly CredentialWorkflowAllowlistEntry[];
385
+ nonForwarding: true;
386
+ status: CredentialStatus;
387
+ proof: CredentialPolicyProofMetadata;
388
+ app: GitHubAppCredentialMetadata | null;
389
+ pat: FineGrainedPatCredentialMetadata | null;
390
+ }