fix(retirement): close projection and launch contract gaps
Assistant: codex Assistant-Model: gpt-5.6-sol Assistant-Session: 01a02b7c-1c49-76a0-955a-49e7b3ddfc0d
This commit is contained in:
parent
c43266f626
commit
b0e1af24f9
13 changed files with 1717 additions and 50 deletions
33
api/schemas/identifier_migration.py
Normal file
33
api/schemas/identifier_migration.py
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
from typing import Any
|
||||
|
||||
from pydantic import BaseModel, ConfigDict, Field
|
||||
|
||||
|
||||
class SealedProjectionRepairSubmit(BaseModel):
|
||||
plan: dict[str, Any]
|
||||
repo_slug: str = Field(pattern=r"^[a-z0-9][a-z0-9-]{0,99}$")
|
||||
unit: dict[str, Any]
|
||||
expected_plan_sha256: str = Field(pattern=r"^[0-9a-f]{64}$")
|
||||
source_revision: str = Field(pattern=r"^[0-9a-f]{40}$")
|
||||
source_fingerprint: str = Field(pattern=r"^[0-9a-f]{64}$")
|
||||
source_clean: bool
|
||||
source_synchronized: bool
|
||||
primary_confirmed: bool
|
||||
projection_identity: str = Field(min_length=1, max_length=200)
|
||||
|
||||
|
||||
class SealedProjectionRepairReceiptRead(BaseModel):
|
||||
model_config = ConfigDict(populate_by_name=True)
|
||||
|
||||
schema_version: str = Field(alias="schema")
|
||||
outcome: str
|
||||
repo_slug: str
|
||||
repository_id: str
|
||||
workplan_record_id: str
|
||||
workplan_old_id: str
|
||||
task_records: list[tuple[str, str]]
|
||||
plan_sha256: str
|
||||
source_revision: str
|
||||
source_fingerprint: str
|
||||
projection_identity: str
|
||||
observed_at: str
|
||||
Loading…
Add table
Add a link
Reference in a new issue