domain tier

domain-work-order-feed

The contract for asking another service what work has been performed on one

The contract for asking another service what work has been performed on one item: the work-order record shape, and the parse rules that return a three-state observation so an unreachable feed reads as undetermined and never as an item with no work orders.

Tierdomain
Rolecapability
Pathcrates/domain/work-order-feed

(Written by hand at sprint 4.88. Every other crate README in this repository is rendered by `tools-corpus corpus readme --write`, which could not run at this commit — `tools-corpus` does not build while `operations-control-plane` is mid-edit in another session. Re-render this file when it builds; the generator is the source of truth for the shape of this page.)

What it is for

A repair shop, a refurbishment bench and a cobbler all answer the same question about an item they were handed: what was wrong with it, what was done, and the state it was left in. That record is a work order (EN 13306). This crate is the contract for fetching one item's work orders across a service boundary — the record shape, the request, and the parse rules.

What is not here

follows domain-domain-survey::rdap: the false readings come from the parse rules, and the parse rules are worth testing without a network.

encounterdomain-encounters, which Gate 0.5 names among the types never to reinvent. One encounter may carry several items, and one item may be worked on across several encounters.

domain-research-intel::observed, reused.

The distinction this crate exists for

An unreachable feed and an item that was never repaired are different answers.

Ok(Some(orders))  the feed answered, and named these work orders
Ok(None)          the feed answered, and this item has no work orders
Err(Unknown)      the feed did not answer; nothing is known about the item

Ok(None) is reachable only through an EmptySuccess witness, which a failure cannot mint. A stopped endpoint therefore cannot be written down as a clean repair history — by construction, not by convention.

Tests

Seventeen, each named for the defect it prevents. The acceptance criterion the crate was built for (sprint 4.88, AC 4.88.2) is tests/unavailable_is_not_empty.rs.

All domain · Manual