feat(ql3): establish 3.0 incubation baseline

This commit is contained in:
whyour
2026-08-12 00:25:26 +08:00
parent 4bf92dcfeb
commit c699c32461
2817 changed files with 779642 additions and 653 deletions
@@ -0,0 +1,36 @@
import type {
PolicySubject,
ProjectRoleBindingRecord,
} from '../domain/projectPolicy';
import type { ProjectOwnerBootstrapChallengeRecord } from '../domain/projectOwnerBootstrap';
export interface IssueProjectOwnerBootstrapChallengeCommand {
projectId: string;
challengeId: string;
tokenDigest: string;
issuedAtMs: number;
expiresAtMs: number;
}
export interface ClaimProjectOwnerBootstrapChallengeCommand {
projectId: string;
challengeId: string;
tokenDigest: string;
subject: PolicySubject;
claimedAtMs: number;
}
export interface ClaimProjectOwnerBootstrapChallengeResult {
status: 'claimed' | 'existing';
binding: Readonly<ProjectRoleBindingRecord>;
}
export interface ProjectOwnerBootstrapRepository {
issue(
command: IssueProjectOwnerBootstrapChallengeCommand,
): Promise<Readonly<ProjectOwnerBootstrapChallengeRecord>>;
claim(
command: ClaimProjectOwnerBootstrapChallengeCommand,
): Promise<ClaimProjectOwnerBootstrapChallengeResult>;
}