feat(web): add s49 owner response work order

This commit is contained in:
Your Name
2026-05-24 11:59:55 +08:00
parent b168d43dad
commit d6120f77cc
8 changed files with 422 additions and 1 deletions

View File

@@ -349,6 +349,7 @@ def validate(root: Path) -> None:
"s2_98_iwooos_owner_response_formal_record_owner_assignment_decision_preparation_board",
"s2_99_iwooos_owner_response_formal_record_owner_assignment_decision_checklist_board",
"s2_100_iwooos_headline_movement_acceptance_gate_board",
"s2_101_iwooos_s49_owner_response_work_order_board",
]
assert_equal(
"progress_delta_ledger.delta_ids",
@@ -7472,6 +7473,86 @@ def validate(root: Path) -> None:
list(web_messages_en["iwooos"]["headlineMovementAcceptanceGate"]["items"].keys()),
key,
)
assert_text_contains(
"iwooos_page.s49_owner_response_work_order_items",
iwooos_projection_page,
"s49OwnerResponseWorkOrderItems",
)
assert_text_contains(
"iwooos_page.s49_owner_response_work_order_testid",
iwooos_projection_page,
'data-testid="iwooos-s49-owner-response-work-order-board"',
)
assert_text_contains(
"iwooos_page.s49_owner_response_work_order_component",
iwooos_projection_page,
"S49OwnerResponseWorkOrderBoard",
)
for text in [
"s4_9_owner_response_work_order_item_count=5",
"s4_9_owner_response_required_field_count=6",
"s4_9_owner_response_received_count=0",
"s4_9_owner_response_accepted_count=0",
"s4_9_owner_response_rejected_count=0",
"s4_9_owner_response_request_sent=false",
"s4_9_owner_response_intake_open=false",
"owner_response_acceptance_gate_open=false",
"audit_events_emitted=0",
"progress_review_authorized=false",
"runtime_execution_authorized=false",
"active_runtime_gate_count=0",
"action_buttons_allowed=false",
"not_authorization=true",
"secret_value_collection_allowed=false",
"repo_creation_authorized=false",
"refs_sync_authorized=false",
"workflow_modification_authorized=false",
"github_primary_switch_authorized=false",
"gitea_disablement_authorized=false",
]:
assert_text_contains(
"iwooos_page.s49_owner_response_work_order_boundary",
iwooos_projection_page,
text,
)
assert_contains(
"web_messages.zh-TW.iwooos.s49OwnerResponseWorkOrder",
list(web_messages_zh["iwooos"].keys()),
"s49OwnerResponseWorkOrder",
)
assert_contains(
"web_messages.en.iwooos.s49OwnerResponseWorkOrder",
list(web_messages_en["iwooos"].keys()),
"s49OwnerResponseWorkOrder",
)
for key in ["title", "subtitle", "summary", "items", "boundaryTitle"]:
assert_contains(
"web_messages.zh-TW.iwooos.s49OwnerResponseWorkOrder.keys",
list(web_messages_zh["iwooos"]["s49OwnerResponseWorkOrder"].keys()),
key,
)
assert_contains(
"web_messages.en.iwooos.s49OwnerResponseWorkOrder.keys",
list(web_messages_en["iwooos"]["s49OwnerResponseWorkOrder"].keys()),
key,
)
for key in [
"scopeGapResponse",
"endpointIdentityResponse",
"adjacentSourceResponse",
"canonicalOwnerResponse",
"legacyDispositionResponse",
]:
assert_contains(
"web_messages.zh-TW.iwooos.s49OwnerResponseWorkOrder.items",
list(web_messages_zh["iwooos"]["s49OwnerResponseWorkOrder"]["items"].keys()),
key,
)
assert_contains(
"web_messages.en.iwooos.s49OwnerResponseWorkOrder.items",
list(web_messages_en["iwooos"]["s49OwnerResponseWorkOrder"]["items"].keys()),
key,
)
for key in [
"title",
"subtitle",