- Documentation
- /
- Warranty
- /
- 03 — Integration
03 — Integration
Warranty & Recovery is a member of the Work & Supply network (message protocol v1). Its
contract is schema/warranty.integration.dsl (authoring spec v1.5), generated with
python -m codegen.cli integration warranty --network work_supply; the handlers are in
integration/handlers.py. The whole network is in networks/work_supply/NETWORK_MAP.md.
What it owns
| Network entity | Model | Business reference |
|---|---|---|
warranty.entitlement |
WarrantyEntitlement | entitlement_number (WE-{sequence:05}) |
warranty.candidate |
WarrantyCandidate | candidate_number (WC-{sequence:05}) |
warranty.claim |
WarrantyClaim | claim_number (CLM-{sequence:05}) |
warranty.recovery |
WarrantyRecovery | recovery_number (WR-{sequence:05}) |
warranty.repair_cycle |
RepairCycle | — |
Messages (all implemented)
| Kind | Message | What |
|---|---|---|
| publishes | warranty.candidate_detected |
a candidate raised (Work flags the work order) |
| publishes | warranty.candidate_eligible |
found eligible, with the entitlement and the usage used |
| publishes | warranty.claim_submitted / claim_decided |
claim sent / supplier decision |
| publishes | warranty.recovery_approved / recovery_received |
recovery approved / posted by Finance |
| consumes | asset.component_installed |
new: start a new unit's entitlement |
| consumes | asset.component_removed |
raise and evaluate a candidate (warranty review or failure) |
| consumes | lifecycle.exposure_revised |
a meter correction: re-evaluate the open candidates it can reach, and flag submitted claims whose component's exposure changed (the claim's own snapshot is never changed) |
| consumes | work.work_closed |
add the closed work order to the claims as evidence |
| consumes | finance.supplier_credit_memo_posted |
the recovery is posted; the claim recovered |
| accepts | warranty.evaluate_candidate |
raise / re-evaluate a candidate by hand or from Work |
| accepts | warranty.create_claim |
for an eligible candidate, once |
| accepts | warranty.record_claim_decision |
the supplier's decision |
| answers | warranty.entitlement_status, candidate_status, claim_status |
read-only |
Warranty reads a unit's hours at failure from Asset Lifecycle with lifecycle.component_exposure
— a direct read-only query, like the pickers — so eligibility uses authoritative usage.
Who refers to it
Work Management stores the candidate on the work order (warranty_candidate_cid/_ref, from
warranty.candidate_detected). SAP AP's credit memos carry warranty_recovery_cid/_ref.
Differences from the pack
Requests name ids <entity>_cid; recovery_received also fires for posted; the new
asset.component_installed consumer creates entitlements (the pack left their creation open).
See the contract's header for the full list.