收敛客户端静态发布链路

This commit is contained in:
2026-08-10 17:04:29 +08:00
parent 2e737dee31
commit 4df047708b
37 changed files with 604 additions and 3071 deletions

View File

@@ -1,24 +0,0 @@
export const WORKS_CLOUD_DEPLOYMENT_FILE_NAME = 'works-cloud-deploy.json';
export const WORKS_CLOUD_DEPLOYMENT_SCHEMA_VERSION = 1 as const;
export type WorksCloudDeploymentStatus =
| 'armed'
| 'waiting_for_package'
| 'waiting_for_login'
| 'uploading'
| 'submitted'
| 'failed';
export type WorksCloudDeploymentRecord = {
schema_version: typeof WORKS_CLOUD_DEPLOYMENT_SCHEMA_VERSION;
project_id: string;
status: WorksCloudDeploymentStatus;
requested_at: string;
updated_at: string;
app_id?: string;
version_name?: string;
zip_sha256?: string;
version_id?: string;
review_status?: string;
error?: string;
};

View File

@@ -1,64 +0,0 @@
export const WORKS_DEPLOY_CHECK_FILE_NAME = 'works-deploy-check.json';
export const WORKS_DEPLOY_REPORT_FILE_NAME = '部署报告.md';
export const WORKS_DEPLOY_CHECK_SCHEMA_VERSION = 1 as const;
export const REQUIRED_DYNAMIC_WORKS_DEPLOY_CHECK_IDS = [
'compose_config',
'compose_build',
'compose_up',
'container_port',
'http_smoke',
'fresh_directory_smoke',
'sandbox_browser_smoke',
] as const;
export const GAME_CANVAS_DYNAMIC_WORKS_DEPLOY_CHECK_ID = 'game_canvas_smoke' as const;
export const CONDITIONAL_DYNAMIC_WORKS_DEPLOY_CHECK_IDS = [GAME_CANVAS_DYNAMIC_WORKS_DEPLOY_CHECK_ID] as const;
export type WorksCanvasMeasurement = {
width: number;
height: number;
};
export type WorksCanvasEvidence = {
logical_resolution: WorksCanvasMeasurement;
desktop_viewport: WorksCanvasMeasurement;
mobile_viewport: WorksCanvasMeasurement;
desktop_canvas: WorksCanvasMeasurement;
mobile_canvas: WorksCanvasMeasurement;
expected_max_canvas: {
desktop: WorksCanvasMeasurement;
mobile: WorksCanvasMeasurement;
};
resize_verified: boolean;
};
export type WorksDeployCheckStatus = 'PASS' | 'SKIPPED' | 'BLOCKED';
export type WorksDeployCheckExecution = 'executed' | 'unavailable';
export type WorksDeployCheckItem = {
status: WorksDeployCheckStatus;
detail: string;
command?: string;
checked_at?: string;
execution?: WorksDeployCheckExecution;
canvas_evidence?: WorksCanvasEvidence;
};
export type WorksDeployCheckReport = {
schema_version: typeof WORKS_DEPLOY_CHECK_SCHEMA_VERSION;
status: WorksDeployCheckStatus;
checked_at: string;
zip_file_path: string;
zip_sha256: string;
checks: Record<string, WorksDeployCheckItem>;
};
export type WorksDeployCheckResult = {
status: 'pass' | 'warning' | 'blocked' | 'missing' | 'invalid';
filePath: string;
report?: WorksDeployCheckReport;
checks?: Record<string, WorksDeployCheckItem>;
static_checks?: Record<string, WorksDeployCheckItem>;
error?: string;
zip_sha256?: string;
};

View File

@@ -0,0 +1,19 @@
export const WORKS_SUBMISSION_BINDING_FILE_NAME = 'works-cloud-deploy.json';
export const WORKS_SUBMISSION_BINDING_SCHEMA_VERSION = 2 as const;
export type WorksSubmissionBindingStatus = 'submitted' | 'legacy_retired';
export type WorksSubmissionBindingRecord = {
schema_version: typeof WORKS_SUBMISSION_BINDING_SCHEMA_VERSION;
project_id: string;
status: WorksSubmissionBindingStatus;
requested_at: string;
updated_at: string;
app_id?: string;
version_name?: string;
zip_sha256?: string;
version_id?: string;
review_status?: string;
error_code?: 'LEGACY_AUTO_DEPLOY_RETIRED';
message?: string;
};