mirror of
https://github.com/whyour/qinglong.git
synced 2026-09-22 10:32:40 +08:00
feat(ql3): establish 3.0 incubation baseline
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
import type { RuntimeRolloutPolicy } from '../domain/runtimeRollout';
|
||||
import type { RuntimeRolloutManifest } from '../domain/runtimeRolloutManifest';
|
||||
|
||||
export type RuntimeRolloutLoadStatus =
|
||||
| 'missing'
|
||||
| 'disabled'
|
||||
| 'accepted'
|
||||
| 'rejected';
|
||||
|
||||
export interface RuntimeRolloutLoadAudit {
|
||||
event: 'runtime.rollout_config_evaluated';
|
||||
evaluatedAtMs: number;
|
||||
sourcePath: string;
|
||||
status: RuntimeRolloutLoadStatus;
|
||||
sourceSha256?: string;
|
||||
revision?: string;
|
||||
reasonCode?:
|
||||
| 'FILE_MISSING'
|
||||
| 'FILE_READ_FAILED'
|
||||
| 'FILE_TOO_LARGE'
|
||||
| 'INVALID_JSON'
|
||||
| 'INVALID_MANIFEST';
|
||||
}
|
||||
|
||||
export interface RuntimeRolloutLoadResult {
|
||||
status: RuntimeRolloutLoadStatus;
|
||||
policy: RuntimeRolloutPolicy;
|
||||
audit: RuntimeRolloutLoadAudit;
|
||||
manifest?: RuntimeRolloutManifest;
|
||||
}
|
||||
|
||||
export interface RuntimeRolloutLoader {
|
||||
load(): Promise<RuntimeRolloutLoadResult>;
|
||||
}
|
||||
Reference in New Issue
Block a user