feat(ack): refine intake and validation workflow
This commit is contained in:
@@ -602,6 +602,32 @@ class ReceiptValidationTests(unittest.TestCase):
|
||||
)
|
||||
)
|
||||
|
||||
def test_receipt_accepts_project_and_board_bound_launch_fingerprint(self) -> None:
|
||||
routing = valid_orchestration()
|
||||
receipt = valid_receipt(routing)
|
||||
receipt["projectRoot"] = "/repo/demo"
|
||||
receipt["boardHash"] = worker_profiles.canonical_sha256({"tasks": []})
|
||||
receipt["launchFingerprint"] = worker_profiles.canonical_sha256({
|
||||
"protocolVersion": 1,
|
||||
"backend": "orca",
|
||||
"projectRoot": receipt["projectRoot"],
|
||||
"boardHash": receipt["boardHash"],
|
||||
"profileId": receipt["profileId"],
|
||||
"profileHash": receipt["profileHash"],
|
||||
"createdFor": receipt["createdFor"],
|
||||
"worktree": receipt["worktree"],
|
||||
"requested": receipt["requested"],
|
||||
"slot": receipt["slot"],
|
||||
})
|
||||
receipt["receiptHash"] = worker_profiles.receipt_hash(receipt)
|
||||
|
||||
self.assertEqual(
|
||||
worker_profiles.validate_worker_receipt(
|
||||
receipt, orchestration=routing, task_ids={"TASK-001"},
|
||||
),
|
||||
[],
|
||||
)
|
||||
|
||||
def test_receipt_slot_is_bounded_and_bound_into_launch_fingerprint(self) -> None:
|
||||
routing = valid_orchestration()
|
||||
invalid = valid_receipt(routing)
|
||||
|
||||
Reference in New Issue
Block a user