[series]
[active]
~/series/behavioral-contract/
behavioral / contract
Notes on what a behavioral contract is, why it lives between the test and the API, and what changes about your suite when you start writing one explicitly.
- 01 SHIPPED Why the test runner is not the contract
- 02 SHIPPED Promises, not assertions
- 03 SHIPPED The shape of a contract you can ship
- 04 SHIPPED What the contract owes the implementation
- 05 SHIPPED Versioning a contract that lives in code
- 06 NOW Refusing to accept silent regressions
6 PARTS · ./series/behavioral-contract/ · CLICK ANY TO NAVIGATE
$ ls series/behavioral-contract/ --order=part --include-empty SORT: PART # | VIEW: TABLE
| # | TITLE | STATUS | DATE | READ | → |
|---|---|---|---|---|---|
| 01 | Why the test runner is not the contract | ✓ SHIPPED | — | — | |
| 02 | Promises, not assertions | ✓ SHIPPED | — | — | |
| 03 | The shape of a contract you can ship | ✓ SHIPPED | — | — | |
| 04 | What the contract owes the implementation | ✓ SHIPPED | — | — | |
| 05 | Versioning a contract that lives in code | ✓ SHIPPED | — | — | |
| 06 | Refusing to accept silent regressions | ◐ NOW | — | — |
view full git log:
$ git log --oneline
- # no recorded revisions yet — git history fills in once this file has commits in main