Brick
__tests__/
domain/
host/
server/
testing/
Host adapter (not part of the brick)
| 1 | /** |
| 2 | * The pure entrypoint: types and logic with no React and no I/O. Importable |
| 3 | * from both server and client code. |
| 4 | */ |
| 5 | |
| 6 | export type { Complaint, ComplaintStatus, PrioritizeComplaintInput } from './types'; |
| 7 | export { InputCategorizerError, NotImplemented } from './errors'; |
| 8 | export type { InputCategorizerErrorCode } from './errors'; |
| 9 | export { initialComplaintStatus, canComplaint, transitionComplaint, availableComplaintEvents } from './lifecycle'; |
| 10 | export type { ComplaintEvent } from './lifecycle'; |
| 11 |
Requirements
- ✓
REQ-1Input must be a number from 1 to 10 inclusive
✓ [REQ-1] Input must be a number from 1 to 10 inclusive #1 · ✓ [REQ-1] Input must be a number from 1 to 10 inclusive #2 · ✓ [REQ-1] Input must be a number from 1 to 10 inclusive #3
- ✓
GATE-PORTABLESelf-contained: relative imports only, nothing escapes the brick (R1–R6)
brick-lint + builder harness
- ✓
GATE-CONTRACTVendored host contract is byte-identical (R8)
sha-256 comparison
- ✓
GATE-TYPESTypechecks under the strictest-superset tsconfig
in-process tsc
- ✓
GATE-TESTSShips its own tests and they pass (R12)
17 passing
- ✓
GATE-LIFECYCLE-COMPLAINTComplaint.status only changes through declared transitions
14 generated lifecycle tests
Built 10/10/2026, 14:09:01 by mohamed.hassan505021@gmail.com · 17 tests passing · operations by openrouter