# Changelog

All notable changes to this project will be documented in this file.
Format: [Conventional Commits](https://www.conventionalcommits.org/).

## [1.1.1](https://github.com/szTheory/chimeway/compare/v1.1.0...v1.1.1) (2026-07-28)


### Bug Fixes

* **deps:** bump optional sigra dep to ~&gt; 1.0 to unblock Hex publish ([fa569b4](https://github.com/szTheory/chimeway/commit/fa569b4e1a9ed82e8e1c3d1048588651b3e1bfcc))
* **deps:** scope sigra override to the SIGRA_PATH branch only ([5ade68f](https://github.com/szTheory/chimeway/commit/5ade68f05701fb0694c0741a86a0ad9e84e1e3c4))
* **release:** publish in :dev (drop obsolete sigra override) so hex docs build ([20f4069](https://github.com/szTheory/chimeway/commit/20f4069f0185d6bdf1ff495e3a5a1fce2a95a330))
* **release:** run pre-publish docs build in :dev (ex_doc is dev-only) ([a96baa0](https://github.com/szTheory/chimeway/commit/a96baa07f65b56b4dc4873d0ffd9ea508c6c1dd0))
* **release:** skip Oban in pre-publish gate replay (no Postgres in publish job) ([7969d94](https://github.com/szTheory/chimeway/commit/7969d9486e5c904bc03506f93356d49df5d78499))
* **release:** skip partner TestRepo provisioning in DB-less pre-publish gate replay ([a2210fc](https://github.com/szTheory/chimeway/commit/a2210fc8236855d35b740b053e2703ed43d2e939))

## [1.1.0](https://github.com/szTheory/chimeway/compare/v1.0.0...v1.1.0) (2026-07-28)


### Features

* **69:** add admin console design system contracts ([09a2c7f](https://github.com/szTheory/chimeway/commit/09a2c7fab23c655653dd6aab76b9ec6dea5b0737))
* **70-01:** add tenant-scoped admin context ([a68a944](https://github.com/szTheory/chimeway/commit/a68a94413d123b019156f4911c6bb7255c787d94))
* **70-02:** harden recovery liveview submit ([09eeec9](https://github.com/szTheory/chimeway/commit/09eeec93d2c97961d58099f7c58684e9fa35f46c))
* **70-03:** persist allowlisted recovery evidence ([6634fb3](https://github.com/szTheory/chimeway/commit/6634fb36e50f23f8fe2dd7e990ca8c3c10c56229))
* **70-03:** prove recovery noop trace evidence ([882d158](https://github.com/szTheory/chimeway/commit/882d1583b27fb9cc0e6c19a70ac2342519bd158c))
* **71-02:** centralize admin lifecycle labels ([0280057](https://github.com/szTheory/chimeway/commit/0280057eedbdda1152ff6c6fc9478bc8f7eceea7))
* **73-01:** implement config error contract ([f0be00a](https://github.com/szTheory/chimeway/commit/f0be00a20963c9407545b3143965aaf4f00bb791))
* **73-01:** implement storage prefix helper ([ed6a8f5](https://github.com/szTheory/chimeway/commit/ed6a8f587ba84ec9bcbbe2039ed99481d3ef6c80))
* **73-02:** validate storage prefix before boot children ([1abc925](https://github.com/szTheory/chimeway/commit/1abc9254003bb244b8c4a6b396c3d55b6d7df9fc))
* **74-01:** implement migration generation prefix modes ([3ce9553](https://github.com/szTheory/chimeway/commit/3ce9553bdeb06c5e773d61e6619a155a3985c9f4))
* **74-02:** convert foundational migration templates ([840c4d6](https://github.com/szTheory/chimeway/commit/840c4d614e7a6be3e078620b1f38736e0a3629f1))
* **74-03:** convert migration templates 006-010 ([6f92068](https://github.com/szTheory/chimeway/commit/6f920686a1531e39ab3d587192a089ad12f431cc))
* **74-04:** convert digest migration templates ([a32901d](https://github.com/szTheory/chimeway/commit/a32901d6362db04e36a9991145abfbabc8f78668))
* **74-05:** convert digest resolution rendering templates ([c2bd688](https://github.com/szTheory/chimeway/commit/c2bd688ff01d4491f0a687b156b20f1eaae68ca6))
* **74-06:** convert workflow migration templates ([320ef65](https://github.com/szTheory/chimeway/commit/320ef65454dfe30255b42cc862084178f616979a))
* **74-07:** convert signal spine migration templates ([f0bea41](https://github.com/szTheory/chimeway/commit/f0bea41290f0945c4da994cf32484a0542be59b6))
* **74-08:** convert webhook ingress migration template ([f2ff03f](https://github.com/szTheory/chimeway/commit/f2ff03f61c400402ba21064185d3c9e7ad776a30))
* **74-10:** add install golden verification parity ([21bce82](https://github.com/szTheory/chimeway/commit/21bce82577881712be0743a47effde06c00c3198))
* **75-02:** add repo runtime prefix defaults ([9efadfd](https://github.com/szTheory/chimeway/commit/9efadfdf357352ed7bd0a5b19dff0bb5f06f9fde))
* **75-03:** align operator repo option filtering ([50f2373](https://github.com/szTheory/chimeway/commit/50f2373d16c44aebc471d6be0f688c61fe0b86aa))
* **75-07:** add focused runtime prefix verify alias ([8a5072f](https://github.com/szTheory/chimeway/commit/8a5072f46c73d3644ec0ad1101db32e2522a9424))
* **76.1-01:** add generated-prefixed runtime support ([e8fdb4d](https://github.com/szTheory/chimeway/commit/e8fdb4da943ba4268c9ca3beb4c74176296e739b))
* **78-01:** normalize root package source metadata and contract release identity ([f310c92](https://github.com/szTheory/chimeway/commit/f310c92d3e69fa29c98b9e84252aaf42f70d8eee))
* **79-01:** rewrite README as additive-superset decision page + delink Flows stubs + canonicalize golden-path URLs ([4445d2d](https://github.com/szTheory/chimeway/commit/4445d2dc68d1ce763421f74f1b6f5276e1e3782b))
* **80-01:** add pr-gate aggregate and event-guard heavy lanes off pull_request ([68bc275](https://github.com/szTheory/chimeway/commit/68bc275cafeed5be1d8d557fb77ae2f97eb4928b))
* **80-01:** harden ci-gate to push/dispatch-only aggregating 14 lanes ([87a4f48](https://github.com/szTheory/chimeway/commit/87a4f484b903d3b3fde46978b5f5c9470eb59aad))
* **80-02:** add per-lane demo-host mix caches across eight lanes ([8be3e15](https://github.com/szTheory/chimeway/commit/8be3e152bfa3777a850412a75c8b20fa17642e9c))
* **80-02:** cache npm, Playwright, and nested admin/inbox mix deps ([035a404](https://github.com/szTheory/chimeway/commit/035a404f0507885db6b3705ec59e268c59911d34))
* **80-03:** extract installer-detect + aggregate-gate to scripts/ci and wire ci.yml ([412d178](https://github.com/szTheory/chimeway/commit/412d178e428585b602d30c64a92bd7afd9b525c7))
* **80-03:** extract Sigra proof runner to scripts/ci/sigra-proof.sh ([47041b1](https://github.com/szTheory/chimeway/commit/47041b136c3062d8b4385e093284629c7a75745b))
* **81-01:** author light/dark/system theme override blocks ([e44ea80](https://github.com/szTheory/chimeway/commit/e44ea803169cde285215d7d68944b42a69f10789))
* **81-01:** author tokens.css base :root token block ([f6da724](https://github.com/szTheory/chimeway/commit/f6da7240db14919663715b2a519155c7b45bb4e7))
* **81-03:** author primitive + non-color scalar DTCG groups in tokens.json ([d96e42e](https://github.com/szTheory/chimeway/commit/d96e42e3c12f26f628dcec4e02e5dd46ff24906a))
* **81-03:** author semantic light/dark sibling groups in tokens.json ([a2f9077](https://github.com/szTheory/chimeway/commit/a2f9077563c51bddda2be207e81cf3cb67cdee09))
* **82-01:** add rejected candidates + note ephemeral gallery ([56305ae](https://github.com/szTheory/chimeway/commit/56305ae7d54082a2c8055d866ca079e043f6825e))
* **82-01:** add Wave 0 logo-guards.sh automated acceptance gate ([2fd7d77](https://github.com/szTheory/chimeway/commit/2fd7d7712b16cdbfa806f574aaf8c76d33a51873))
* **82-01:** author 5-direction logo shortlist with proof strips ([5056fc4](https://github.com/szTheory/chimeway/commit/5056fc48fee8fc4a5f3997e5ab7a951100356bb6))
* **82-01:** rework logo shortlist via broadened metaphor tournament ([d7d2c53](https://github.com/szTheory/chimeway/commit/d7d2c53279c341449bdaf474854a0aa182a56f77))
* **82-01:** select Keystone direction + final Optima keystone-i logotype ([382ec0d](https://github.com/szTheory/chimeway/commit/382ec0dad57bf09ab21f6e223e77fb736465592f))
* **83-01:** add --assets file-level gate + widen --scope allowlist ([22345a9](https://github.com/szTheory/chimeway/commit/22345a98c01dd805b299176893dbbf99149e8c57))
* **83-01:** add pinned SVGO config + Chrome-headless SVG-&gt;PNG render helper ([32a8b0f](https://github.com/szTheory/chimeway/commit/32a8b0fd6af86fae042030f49356756e1d84cca2))
* **83-02:** author primary chimeway logotype (Marcellus OFL re-cut, keystone-i) ([4b40341](https://github.com/szTheory/chimeway/commit/4b40341ec02ee9569eb1a1eb05357133588daf19))
* **83-02:** derive mono/inverse/stacked/mark/mark-mono lockup family ([969aeac](https://github.com/szTheory/chimeway/commit/969aeac92e3d011504413b365e5a0de879cd49ba))
* **83-03:** OG/social card + Logo Direction Ratification in decision-log ([4ac1611](https://github.com/szTheory/chimeway/commit/4ac1611e106bdb7bcf9d5cab86a1162416e848bd))
* **83-03:** simplified favicon.svg + favicon.ico (16/32/48) + apple-touch-icon.png ([7777db2](https://github.com/szTheory/chimeway/commit/7777db25c814e68e0d9ac56384d57b1710fd64b2))
* **84-01:** add brandbook-guards.sh four-family gate + D-05 parity ([525cabc](https://github.com/szTheory/chimeway/commit/525cabcb917a53891d64b8399c86962f02358737))
* **84-01:** add scoped brandbook.css (layers + nine states + skeleton) ([b70df5a](https://github.com/szTheory/chimeway/commit/b70df5a2b71db0bf332640de461ffc6206fa7998))
* **84-02:** color/token swatches, typography, and spacing sections ([87db5c2](https://github.com/szTheory/chimeway/commit/87db5c2a9244a3692660e430ec344b9f89be7286))
* **84-02:** document shell, head links, anchor nav, tri-state theme toggle ([9a33582](https://github.com/szTheory/chimeway/commit/9a33582266be57f5060d8ec0ab0c51d0f29a5358))
* **84-02:** logo-family section (two currentColor marks inline, rest via img) ([d66f0f4](https://github.com/szTheory/chimeway/commit/d66f0f4260adb06d5f27cd07a8ab209bf64963fd))
* **84-03:** live WCAG contrast matrix wired into the single inline script ([dc22afc](https://github.com/szTheory/chimeway/commit/dc22afc7dbff736acd253ad891b17ac8ef6138c7))
* **84-03:** nine-state component showcase (live control + frozen .is-* copy) ([ff6a72e](https://github.com/szTheory/chimeway/commit/ff6a72e4ff1acb341c7a88bfa588c1b5bd5120da))
* **84-03:** three do/don't visual pairs via CSS-only misuse (logo/color/spacing) ([b00691f](https://github.com/szTheory/chimeway/commit/b00691fbcc8bcadacd92d9e76639aff2c80db398))
* **84-04:** named error template (VOICE-02) + naming/CTA rules (VOICE-03) ([d608411](https://github.com/szTheory/chimeway/commit/d60841169d0e1b393491c6d8b388d4de900990e9))
* **84-04:** voice-by-context section with verbatim good/bad + vocabulary lists ([b45a320](https://github.com/szTheory/chimeway/commit/b45a3205662b4a7887cbd0d31450aae8f8c27c97))
* **84:** derive inverse stacked + mark lockup assets ([ff338a4](https://github.com/szTheory/chimeway/commit/ff338a48d22e2ee90834efd2defb6e1d3c5c031b))
* **85-01:** replace README text heading with theme-swapping brand lockup ([8a8374c](https://github.com/szTheory/chimeway/commit/8a8374c08532f790a65a1bbc3e8c6a6b3a12f835))
* **85-01:** wire ExDoc :logo and :favicon into mix.exs docs() ([6c16077](https://github.com/szTheory/chimeway/commit/6c16077deb006b795dee8f6b078d3b0cee0241ab))
* **86-01:** offline WCAG contrast calc over token SSOT ([e239707](https://github.com/szTheory/chimeway/commit/e23970728350e21599aae6d83054fba202e035c8))
* **86-04:** widen brandbook-guards --scope allowlist to milestone boundary ([966afee](https://github.com/szTheory/chimeway/commit/966afee27ab8a387a44d321ce9a12bf4f230fe4f))
* recover stranded admin console command center ([8f29bea](https://github.com/szTheory/chimeway/commit/8f29bea63cd1212ed387d4ab35f2431602205b98))


### Bug Fixes

* **67:** allow cold sigra ci compilation ([e2ecf9e](https://github.com/szTheory/chimeway/commit/e2ecf9e5ddd8ad6b21b934e6c9c9806a7c0cf8ec))
* **67:** avoid forced partner recompiles in verify aliases ([38eefb9](https://github.com/szTheory/chimeway/commit/38eefb99b3315ae5cec67dc0a5f266d4f12594b4))
* **67:** avoid sigra demo transitive dep cycle ([b4d39eb](https://github.com/szTheory/chimeway/commit/b4d39eb275d427dd593af2e68229dc75a044940d))
* **67:** bound sigra ci database setup ([e455e54](https://github.com/szTheory/chimeway/commit/e455e543dd2d416d2b1cac3833b3ebe98660c5d6))
* **67:** bypass mix app start in sigra ci proof ([6a88a26](https://github.com/szTheory/chimeway/commit/6a88a265b6778935983d3632622a9e6b91a741fd))
* **67:** compile sigra demo before proof test ([51dba65](https://github.com/szTheory/chimeway/commit/51dba6587294453ee279af70ba48749e54b983f0))
* **67:** fix verify.sigra and verify.threadline aliases to not skip deps ([588e8f3](https://github.com/szTheory/chimeway/commit/588e8f31a5442efd8b8c36981b5da4d9b75f3f0d))
* **67:** isolate ecosystem demo verify deps ([e219069](https://github.com/szTheory/chimeway/commit/e219069d856cbf55c7b8b77fabb75bdae7d98b4b))
* **67:** isolate root sigra ci proof deps ([939df0e](https://github.com/szTheory/chimeway/commit/939df0ecd04a19dae8d796608c23b8f1425adee3))
* **67:** narrow sigra ci proof to sigra files ([5676710](https://github.com/szTheory/chimeway/commit/5676710dd98687eccc44216b49fa181b2f0a7780))
* **67:** resolve ecosystem verify paths before demo lane ([2627d72](https://github.com/szTheory/chimeway/commit/2627d72dff1de372ab12cf472a8edcde11a05500))
* **67:** run root sigra proof without app autostart ([8fe67c6](https://github.com/szTheory/chimeway/commit/8fe67c66fe5a5e034df663064af9aeb5940a49e3))
* **67:** run sigra ci proof from checked runner ([a2d372c](https://github.com/szTheory/chimeway/commit/a2d372c83ddc157c7e920563e210f66033ba35fd))
* **67:** run sigra ci proof without recompiling ([c18d201](https://github.com/szTheory/chimeway/commit/c18d20123b53a649c3c9df198de9397fa1bb3d69))
* **67:** set sigra ci postgres user ([d5ccfbe](https://github.com/szTheory/chimeway/commit/d5ccfbee9201826eb93f607924b628391f5f9f6a))
* **67:** skip mailglass transitive dep in sigra demo proof ([4adfa4d](https://github.com/szTheory/chimeway/commit/4adfa4dd877e5943be4b3a139d0abe53bbf1b770))
* **67:** skip oban in root sigra ci proof ([a6a965a](https://github.com/szTheory/chimeway/commit/a6a965ac79edf2abddcf02d28ee66ebdb5cec68a))
* **67:** split sigra ci proof lanes ([2612fda](https://github.com/szTheory/chimeway/commit/2612fda2a9b854d33613f407ef545de9c170d509))
* **67:** use manual exunit root sigra proof ([47918d3](https://github.com/szTheory/chimeway/commit/47918d31c8fc10c9d21f55585aad7f750bd0bd59))
* **68-02:** own sandbox for admin LiveView tests ([d455ff7](https://github.com/szTheory/chimeway/commit/d455ff7eb8ac56773b537cc3e678938ef5e526db))
* **69:** revise plans based on checker feedback ([3d22d11](https://github.com/szTheory/chimeway/commit/3d22d11964f25bf088a7ab55abc82aed47cb5a08))
* **69:** revise plans based on checker feedback ([59a7345](https://github.com/szTheory/chimeway/commit/59a73451668e5596cc82505728391a6bef018dcc))
* **70:** avoid cross-tenant recovery noop leaks ([03ff7fd](https://github.com/szTheory/chimeway/commit/03ff7fdf9b68238409b05efb736e2ce11a413eb7))
* **70:** close recovery safety review findings ([8e0e5ec](https://github.com/szTheory/chimeway/commit/8e0e5ec21f100ab822dd49da1ec7550579b5b694))
* **71-02:** recognize signal delivery feedback ([32f133a](https://github.com/szTheory/chimeway/commit/32f133aba8f2e2cf33946547f4fd4bcb33e4783c))
* **75-02:** preserve duplicate idempotency under prefixed runtime ([5e385d6](https://github.com/szTheory/chimeway/commit/5e385d60516ae87c5356084d9b4ed1349cf4c46e))
* **75-04:** keep Oban job queries on Oban prefix ([3f86ca4](https://github.com/szTheory/chimeway/commit/3f86ca490b6b6eed60bfd1e471c4f4b356cb529f))
* **75:** revise dispatch worker prefix proof plans ([39c5b0f](https://github.com/szTheory/chimeway/commit/39c5b0fe512b4e14967050ff4e7ea0f07abb4d4b))
* **75:** revise runtime prefix planning artifacts ([c5c26c6](https://github.com/szTheory/chimeway/commit/c5c26c697c0344fd17104d6307b0748d5d46d789))
* **76-02:** stabilize example verification ([9cd74b0](https://github.com/szTheory/chimeway/commit/9cd74b01fd3327a18627ab2df9985a91b1782725))
* **76.1-01:** clean up generated runtime setup failures ([4f1ddeb](https://github.com/szTheory/chimeway/commit/4f1ddeb39b32402fa634e08d102475d3428a5bbf))
* **76.1:** revise plan checker blockers ([3fb1f36](https://github.com/szTheory/chimeway/commit/3fb1f3621de40690d892a93140a492c48d7e7ce3))
* **78-03:** scope Sigra override to non-prod so default Hex build succeeds ([b547ec1](https://github.com/szTheory/chimeway/commit/b547ec11e92fa538f4b0d2b62019e2dea7b7123d))
* **78:** resolve research open questions ([802953b](https://github.com/szTheory/chimeway/commit/802953b30c66106426095d2b134e568c71543dcd))
* **83-03:** favicon.svg reads on dark via prefers-color-scheme media query ([769fe63](https://github.com/szTheory/chimeway/commit/769fe63277607e30d257505b6429e03a6c6d24eb))
* **84:** frame the OG social preview as a bordered thumbnail ([24ec9c3](https://github.com/szTheory/chimeway/commit/24ec9c3b4ee457a6943355d08a026a00fa24f5d1))
* **84:** pin fixed-color logo lockups to their intended fields ([9bbdcb5](https://github.com/szTheory/chimeway/commit/9bbdcb5ba0e0cf852e816df862d21185314928b3))
* **84:** render fixed-color lockups theme-adaptively, not on tiles ([740a88f](https://github.com/szTheory/chimeway/commit/740a88f2e5032ed0a757b6deb6f53088281c09c3))
* **84:** resolve theme toggle so explicit light/dark outranks OS preference ([20020d6](https://github.com/szTheory/chimeway/commit/20020d6121bc93b293b4af2913002b2f8eaa6dfb))
* **84:** style nav, links, headings and panel rhythm in brandbook.css ([40ee112](https://github.com/szTheory/chimeway/commit/40ee112c3a5ddf845182a237a2714400e60bcbe9))
* **85:** harden Task 2 verify so mix compile failure is not masked ([6703f4d](https://github.com/szTheory/chimeway/commit/6703f4dfb3b06ff671c5fc5726a3dbbbdfd34619))
* **admin:** make operator console own the viewport (kill 8px host body frame) ([c30e890](https://github.com/szTheory/chimeway/commit/c30e890f2cd58507ce08e183424afceaa5e04e5a))
* **admin:** stop section-heading action links wrapping mid-word ([8892158](https://github.com/szTheory/chimeway/commit/8892158abd84c2e73c811b06bfb6c6d826ca38d3))
* **ci:** accrue demo-host path level + isolate journey pollution from example lane ([74c390a](https://github.com/szTheory/chimeway/commit/74c390af441b653212591e5af38bc0d016f9ba75))
* **ci:** align demo host to ecto 3.13 / decimal 2.x for accrue dep resolution ([17a26aa](https://github.com/szTheory/chimeway/commit/17a26aa7b25a1c614c01e5009dfb7400747877c1))
* **ci:** next layer of ci-gate lanes — accrue dep-tree compile + demo-host dev DB ([d97e15e](https://github.com/szTheory/chimeway/commit/d97e15eab3fb40e6a1abcbf5f5c6ee8b80a6d909))
* **ci:** repair chronic ci-gate red lanes (Accrue path + JOUR-05 dev cold-compile) ([5e26432](https://github.com/szTheory/chimeway/commit/5e264327cef31434090a043fda643eca30766c8b))
* **ci:** resolve accrue migration dup-column + JOUR-06 Oban enqueue (test isolation) ([4f15d4f](https://github.com/szTheory/chimeway/commit/4f15d4fdc12924fae52ca6129a0cf8a515c8ea0b))

## 1.0.0 (2026-05-08)


### Features

* **08-01:** merge dispatcher outcomes into trigger response ([c449ee4](https://github.com/szTheory/chimeway/commit/c449ee4454d64c33cb556a7a62024c351de4f945))
* **08-01:** seed trigger outcome defaults ([ea97e9c](https://github.com/szTheory/chimeway/commit/ea97e9ce7446d11d9c5be1e87d54ecbf64d9b1a4))
* **10-01:** enrich [:deliveries, :plan] span with correlation metadata ([7c8d68f](https://github.com/szTheory/chimeway/commit/7c8d68f3ad3eabf451ff2ad7bc78becb1c7915b2))
* **10-01:** forward correlation opts in DeliveryPlanning ([b1f27c6](https://github.com/szTheory/chimeway/commit/b1f27c62336012063f6690e1e2d04fe2a9be662d))
* **10-01:** persist correlation metadata in Delivery records ([e4271f9](https://github.com/szTheory/chimeway/commit/e4271f925d12cc4711a88eb747ce5bcda7be280c))
* **10-01:** thread notification_key in dispatch_opts in Trigger ([0284fb9](https://github.com/szTheory/chimeway/commit/0284fb983ad5f1ece226705c412d5723dd223c56))
* **10-02:** enrich Oban spans with correlation metadata ([664de32](https://github.com/szTheory/chimeway/commit/664de32e7d5a7fd860dabe97a20954ec51ab69eb))
* **10-02:** enrich Policy and Sync spans with correlation metadata ([82bce64](https://github.com/szTheory/chimeway/commit/82bce6420b288cb1d4cc8dc41a1a3e026513e41f))
* **12-01:** unify oban planning and enqueue transaction ([9b93ae2](https://github.com/szTheory/chimeway/commit/9b93ae265d3f8686f6bfade6ade11125b3745513))
* **14-02:** add attempt_number and error_class columns to delivery attempts ([957b92c](https://github.com/szTheory/chimeway/commit/957b92c5d61750cafdc52d692ba228a25b228fa5))
* **14-02:** extend DeliveryAttempt schema with attempt_number and error_class ([c9ad3a1](https://github.com/szTheory/chimeway/commit/c9ad3a174fada441c8209f9345694791349e02c6))
* **14-03:** add Deliveries.exhaust_delivery/1 named helper ([d94c1c1](https://github.com/szTheory/chimeway/commit/d94c1c108f7634bec5a5a7d7baafffb84286e248))
* **14-04:** extend record_attempt/2 with row lock + attempt_number + terminal convergence ([04a74a8](https://github.com/szTheory/chimeway/commit/04a74a8274412e7d0af0f8ae7f58a062615073c9))
* **14-04:** plumb error_class end-to-end via Executor.classify/1 3-tuple ([b5f5728](https://github.com/szTheory/chimeway/commit/b5f57285bfd7ac61ef57df6975438e78dcba7b44))
* **14-04:** promote DeliveryAttempt.attempt_number to required field ([38e0ca6](https://github.com/szTheory/chimeway/commit/38e0ca66116664f619e5198964d51a3bd1f2008c))
* **14-05:** surface attempt_number and error_class in Traces (D-07) ([53ff4b1](https://github.com/szTheory/chimeway/commit/53ff4b1f595fbf2cdb63c17ceb38a7db20186037))
* **14-05:** wire Oban retry contract in ObanWorker.perform/1 ([b044e29](https://github.com/szTheory/chimeway/commit/b044e29445ab9a7fe859dce307f73543bb0eccdb))
* **14-10:** add classify/1 fallback and rewrite map_outcome_to_oban_return/4 catch-all (BL-02) ([a90460e](https://github.com/szTheory/chimeway/commit/a90460e7902ce201449165e42c8909354ce08ca0))
* **16-01:** add __using__ macro to Notifier ([57a6409](https://github.com/szTheory/chimeway/commit/57a6409fbed18d798ff187d975ebee03734116eb))
* **17-01:** persist delivery orchestration contracts ([d6f48d9](https://github.com/szTheory/chimeway/commit/d6f48d92472c3b5f0173f7f1fa584d0a4fa69969))
* **17-02:** defer quiet-hours at planning time ([217d57c](https://github.com/szTheory/chimeway/commit/217d57cf175771840f4b22ca8265398ca9662958))
* **17-02:** persist notifier orchestration declarations ([b5a2634](https://github.com/szTheory/chimeway/commit/b5a26342685cf66ab5d34cdddda42cc69eff9b54))
* **17-03:** expose deferred delivery explanations ([eb2e5ee](https://github.com/szTheory/chimeway/commit/eb2e5ee4e6f5dc395c59462dcbc675b58b776225))
* **17-03:** gate dispatch on orchestration readiness ([b4eae59](https://github.com/szTheory/chimeway/commit/b4eae5944f5dbb69e0180804dac0c45ef95a17f2))
* **18-01:** implement deferred resume row transitions ([e546f77](https://github.com/szTheory/chimeway/commit/e546f77af2a903379b61ef925772afa4508cc10d))
* **18-02:** schedule deferred resumes through oban ([6fa8afe](https://github.com/szTheory/chimeway/commit/6fa8afeebec7216e40ea5e4774786d703ead2033))
* **18-03:** explain resumed deferred delivery history ([a663709](https://github.com/szTheory/chimeway/commit/a6637096ecb2b8ec5c08a9e4407c7dec5a0af5b4))
* **19-01:** implement durable digest rule and bucket storage ([eeec217](https://github.com/szTheory/chimeway/commit/eeec217fe2f0b6f78a135b25f5534011389fad65))
* **19-02:** implement digest accumulation transaction ([cc223c3](https://github.com/szTheory/chimeway/commit/cc223c30e03c33a7a619c7b1f497a7c8727dbaa8))
* **19-03:** wire planner-side digest accumulation ([64744c4](https://github.com/szTheory/chimeway/commit/64744c40f3131575f5a8af1926b8458328c55fd7))
* **21-01:** add durable rendering storage ([d0fe75f](https://github.com/szTheory/chimeway/commit/d0fe75f7baf0c3fe4012e7693f643e3659fea939))
* **21-01:** add notifier rendering normalization ([2b31b14](https://github.com/szTheory/chimeway/commit/2b31b142e5f777659256b83135ae7aab9f76df16))
* **21-02:** persist render identity during trigger and planning ([be55f85](https://github.com/szTheory/chimeway/commit/be55f8542ed51012bf41ab725fb354f534636d6f))
* **21-04:** persist rendered delivery payloads before dispatch ([203bb2d](https://github.com/szTheory/chimeway/commit/203bb2d3ae8571a672d4f0a1739b49db9c481327))
* **21-05:** add preview rendering mix task ([63b2864](https://github.com/szTheory/chimeway/commit/63b2864c1274384cde2694d1acb1fdf3cdba85e8))
* **21-05:** add pure rendering preview api ([629f196](https://github.com/szTheory/chimeway/commit/629f19697a0d5b98166dd8a749c9c1a441c38251))
* **21-template-versioning-rendering-contracts-03:** add validated channel render dispatch ([8e4211e](https://github.com/szTheory/chimeway/commit/8e4211e1da5e45960664aca67dc23b55d228a8e8))
* **21.1-01:** persist notification render channel declarations at trigger time ([e0f1049](https://github.com/szTheory/chimeway/commit/e0f1049dcf150d7d824817492deba760f3f24f50))
* **21.1-02:** normalize preview boundary failures for invalid and unloaded notifiers ([e07ec28](https://github.com/szTheory/chimeway/commit/e07ec28e5d6a0256d659e6f4b31617b074173887))
* **21.1-02:** replace executable preview CLI inputs with JSON and shallow flags ([295d495](https://github.com/szTheory/chimeway/commit/295d495505a616cca2c0606ad60dbacfa47661b3))
* **22-01:** add durable recovery row primitives ([b97d97c](https://github.com/szTheory/chimeway/commit/b97d97c0d277cb6abc1934f22d7df1c0e28c437d))
* **22-02:** wire recovery through canonical dispatch ([8bb160a](https://github.com/szTheory/chimeway/commit/8bb160a52143ef2fcd44d15aa84f65ea0444ce76))
* **22-03:** add recovery-aware trace analytics ([04f678d](https://github.com/szTheory/chimeway/commit/04f678d9c3b2f10a9ce977492af9ec28e6efe48d))
* **23-01:** schedule digest flushes from durable buckets ([52989c6](https://github.com/szTheory/chimeway/commit/52989c61d078edaaf32b441214524ce6d7b4d48a))
* **23-02:** persist orchestration for recovery replay ([84a2276](https://github.com/szTheory/chimeway/commit/84a2276f7729aa3756edfdec5045fe69a0ba360a))
* **23-03:** prove scheduled digest worker lifecycle ([09b412a](https://github.com/szTheory/chimeway/commit/09b412ae16357087b527217d3f2fea32dca13b91))
* **23-04:** handle perform-time delivery re-deferral ([f294eb5](https://github.com/szTheory/chimeway/commit/f294eb52cb102c6a1b7e01bbf748b97a74bed216))
* **24-workflow-contracts-state-spine-01:** add durable workflow contract storage ([3ca153d](https://github.com/szTheory/chimeway/commit/3ca153d418a88d25ab0160db645773059b5aadf1))
* **24-workflow-contracts-state-spine-02:** persist workflow runs at trigger time ([e7d0059](https://github.com/szTheory/chimeway/commit/e7d0059654f979f49bbd53afa259600175eb0025))
* **24-workflow-contracts-state-spine-03:** link deliveries to persisted workflow state ([c9d7aa0](https://github.com/szTheory/chimeway/commit/c9d7aa0920ad659b533af2dbbc18e2e257b59e0f))
* **25-01:** normalize step progress rules and curate workflow outcomes ([886ecdc](https://github.com/szTheory/chimeway/commit/886ecdc86e4d1c375998d446e188191cbd19a115))
* **25-02:** wire durable workflow progression engine into canonical convergence ([33b2a36](https://github.com/szTheory/chimeway/commit/33b2a369a17a28c8325def5c0760fe55f513023b))
* **25-03:** wire thin workflow progression worker and due-run scheduling ([74b341c](https://github.com/szTheory/chimeway/commit/74b341cf374e6b65ea23c0964c0a0467b7c3535f))
* **25-04:** implement advance_after_wait/5 to close CR-01 wait_until loop ([11455b2](https://github.com/szTheory/chimeway/commit/11455b2961b35c29e07cdd731a8e7f06c4151fc2))
* **26-01:** handle terminal workflow tuples in progression worker ([665a54a](https://github.com/szTheory/chimeway/commit/665a54a99043b9331a91f519b93e1b1f23fe369f))
* **27-01:** add barebones SignalRouterWorker ([739ffa9](https://github.com/szTheory/chimeway/commit/739ffa9a912fc2fdba4778273d5e4a46844564df))
* **27-01:** add Signal model and Chimeway.Signal.track/4 API ([4ab48f0](https://github.com/szTheory/chimeway/commit/4ab48f0c6fb756dc74c5044ca939b33f2dff02c4))
* **27-01:** add State Spine columns to WorkflowRun ([9b468aa](https://github.com/szTheory/chimeway/commit/9b468aa7a7a655691b537d068ac583733d4d67b4))
* **27-02:** complete SignalRouterWorker.perform/1 implementation ([6ab36b7](https://github.com/szTheory/chimeway/commit/6ab36b733332bf75e77c6168136600fbf878d435))
* **27-02:** implement Chimeway.Workflows.route_signal/1 ([b3a88d2](https://github.com/szTheory/chimeway/commit/b3a88d2a1e8db8a25c4cf66360eab813c9d37ff4))
* **27-03:** implement Workflows.explain/2 and list_traces/3 inspection API ([a87ce63](https://github.com/szTheory/chimeway/commit/a87ce636872d307a9b3733906d120ec216d0bbe1))
* **27-07:** route_signal filters by actor_id and clears suspended_until ([06e2a87](https://github.com/szTheory/chimeway/commit/06e2a876eac5fa4a3ffaa9e0e9741f2e0946d4c2))
* **29-01:** add Chimeway.Rendering.Channel behaviour module ([7b1f6fe](https://github.com/szTheory/chimeway/commit/7b1f6fe3cbb26abd0f4ec95b760658809996727d))
* **29-02:** add adapter_module column to chimeway_delivery_attempts ([05c6fbf](https://github.com/szTheory/chimeway/commit/05c6fbf2f090c5ec2f923a3b7d7fbed170febe8f))
* **29-02:** wire adapter_module field in DeliveryAttempt schema ([e75acdd](https://github.com/szTheory/chimeway/commit/e75acdd6fd3f49a88935d212c917ee39a0ed0115))
* **29-03:** implement Sms, Push, Chat channel render validators ([e125425](https://github.com/szTheory/chimeway/commit/e1254251743400cb25f2dc8504172b3f31acb952))
* **29-04:** boot validation for :channel_render_modules + adapter_module telemetry key ([d792992](https://github.com/szTheory/chimeway/commit/d792992e4180946ed95124741c69c9baddc871d2))
* **29-04:** three-layer channel_module/1 with registry + telemetry once-flag ([eb52ffa](https://github.com/szTheory/chimeway/commit/eb52ffa57db561f5137cf7a34b9873ca2409079b))
* **29-05:** add resolve_adapter/1 + persist adapter_module on attempt ([e22a04b](https://github.com/szTheory/chimeway/commit/e22a04b8c57885b104aa25e469aac25b7459fb1d))
* **29-05:** thread adapter_module into [:dispatch, :sync, :stop] stop metadata ([39146ec](https://github.com/szTheory/chimeway/commit/39146ec0d3545e42511931449189d36c694cd9df))
* **29-06:** expose adapter_module in explain_delivery output ([1e3fa6b](https://github.com/szTheory/chimeway/commit/1e3fa6b39ffa2ea10b87bbb045121333bba7dce9))
* **29-07:** channel-tag mailbox sends in Adapters.Test (D-23) ([ccebe15](https://github.com/szTheory/chimeway/commit/ccebe15de08fc0cdbb22936f8d85fa3f7ee2793c))
* **30-01:** add provider_message_id to delivery_attempts for feedback correlation ([fed5a52](https://github.com/szTheory/chimeway/commit/fed5a5274b3fceec7667e6839857e724bf453f67))
* **30-01:** define webhook ingestion contracts on Adapter behaviour ([488f3a4](https://github.com/szTheory/chimeway/commit/488f3a4a7686898931d103b620b49962057564e2))
* **30-01:** implement synchronous webhook boundary and async feedback worker ([d9e8bcc](https://github.com/szTheory/chimeway/commit/d9e8bcc93e52c1dc99d00bbe14f01519e88f796b))
* **31-01:** add tenant_id and actor_id to deliveries table ([67985ca](https://github.com/szTheory/chimeway/commit/67985cad07996ea19ceb2b959a7b2f05a3b67074))
* **31-02:** emit signal on feedback processing ([1251a88](https://github.com/szTheory/chimeway/commit/1251a884e6b0206bc86c0e7e4b6adc6518a7477d))
* **32-01:** populate WorkflowTransition.delivery_id from signal.payload in route_signal/1 ([d77e097](https://github.com/szTheory/chimeway/commit/d77e0979268abdc6b52c109299bc9ddc4d3ba8bb))
* **32-02:** extend Chimeway.Traces with webhook + workflow timeline projection ([fa976ad](https://github.com/szTheory/chimeway/commit/fa976ad8b46ebbcdca15aa33ed60528b79a9920c))
* **33-01:** create chimeway_webhook_ingress migration + GREEN tests ([6041acb](https://github.com/szTheory/chimeway/commit/6041acb51febe72711e67fc1e8c06544785a97fe))
* **33-01:** create Chimeway.Webhooks.Ingress Ecto schema ([2e904dc](https://github.com/szTheory/chimeway/commit/2e904dcd2cbc3fe53ac5c9578cca0ac6643a9ddc))
* **33-02:** add Deliveries.fetch_delivery/1 non-raising sibling ([2e65d7c](https://github.com/szTheory/chimeway/commit/2e65d7c2308549ee19a723c503cbf3044a10eb92))
* **33-02:** rewrite webhooks_test.exs for atomic-handoff contract ([5bf0c40](https://github.com/szTheory/chimeway/commit/5bf0c40e7c1d9bb6f2b2cdf55b66afa874063102))
* **33-02:** rewrite Webhooks.process/4 to atomic Multi+Oban handoff ([6587ee1](https://github.com/szTheory/chimeway/commit/6587ee110064255e62ccb2cbb1f29313dd2b5c85))
* **33-03:** rewrite ProcessFeedbackWorker for ingress-driven, safe-noop model ([4ca2258](https://github.com/szTheory/chimeway/commit/4ca22589d997c4d6e95a242d30327a063a3de51b))
* **33-03:** rewrite worker test for ingress-driven contract + preserve webhooks.ex compat ([77c92f4](https://github.com/szTheory/chimeway/commit/77c92f450f0cc06a337c7e2c028119759fafee0f))
* **33-04:** add CacheBodyReader plug and fixture adapters ([913424d](https://github.com/szTheory/chimeway/commit/913424d71960081805b9f76a513309cce4ce5c24))
* **33-04:** implement WebhooksController with raw-body flattening and status mapping ([4379663](https://github.com/szTheory/chimeway/commit/437966313bbb5ebf390ad5bfd7af44620a39e939))
* **33-04:** scaffold chimeway_demo_host sibling Mix project skeleton ([4fd490a](https://github.com/szTheory/chimeway/commit/4fd490ac4f901674224138064cc8195084796763))
* **33-04:** wire mix verify.example alias and fix E2E test compilation ([cc20a75](https://github.com/szTheory/chimeway/commit/cc20a7500435459a53752bf4db33eb43281b31d5))
* **33-05:** add dedup-convergence integration tests (T-33-DEDUP / D-05) ([08d8de6](https://github.com/szTheory/chimeway/commit/08d8de6e451ea4b967d64fd0e1102da26a547f7e))
* add digest emission and explainability ([570d47e](https://github.com/szTheory/chimeway/commit/570d47e8826275d72f1a3af96568ded2e3dc9150))


### Bug Fixes

* **11-01:** task 11-01-01 harden adapter config lookup ([2cb5afb](https://github.com/szTheory/chimeway/commit/2cb5afb0b2d1558decff81b8bfe008558274ac4a))
* **11-01:** task 11-01-02 keep explainability channels string-safe ([0f6577d](https://github.com/szTheory/chimeway/commit/0f6577d0fe59590195f680fa7abece0b8ae3bad6))
* **12-01:** guard oban dispatch base multi coercion ([5fb177a](https://github.com/szTheory/chimeway/commit/5fb177aa6490335dd098c705256678842cbab8e8))
* **13-01:** add category preference storage and lookup ([74caae3](https://github.com/szTheory/chimeway/commit/74caae3d82626497fd350b95ce5ab7a4fec6314b))
* **13-02:** add policy settings storage and evaluation helpers ([f931ca6](https://github.com/szTheory/chimeway/commit/f931ca63fb6f00b2674f4a56105a309e39a8b835))
* **13-03:** wire policy evaluation and dispatch suppression coverage ([0363df4](https://github.com/szTheory/chimeway/commit/0363df48b188626989605022c71f5663c5717d16))
* **14-10:** update error_classes/0 test to include unknown_classification (BL-02 deviation) ([c66c21a](https://github.com/szTheory/chimeway/commit/c66c21a5e54e12f88df2c60f75fcb0ae4238c4f9))
* **14-11:** WR-05/06/07 — order last_attempt by attempt_number, emit :cancelled timeline entry, update Explanation moduledoc ([a900dae](https://github.com/szTheory/chimeway/commit/a900dae80a4b8662e1a79bd981592cb538f3cb88))
* **14:** CR-01 fix Traces.last_attempt_summary/1 nil handling ([ce76ceb](https://github.com/szTheory/chimeway/commit/ce76ceb42ce2464fc21ad7983060a3684f8a9d23))
* **14:** IN-01 remove commented debug IO.inspect calls ([47c7293](https://github.com/szTheory/chimeway/commit/47c72931f0273014f56bb0d6d26543f2a2c94906))
* **14:** IN-02 correct comment about Ecto.Query import ([21364bc](https://github.com/szTheory/chimeway/commit/21364bcd55433deff1405ca38737a2566facf5f5))
* **14:** WR-01 use deterministic order for migration backfill ([fbeebb5](https://github.com/szTheory/chimeway/commit/fbeebb56b4beb01e21b8dab32220af4042f5523f))
* **14:** WR-02 avoid TOCTOU gap in Oban worker dispatch ([bffe56f](https://github.com/szTheory/chimeway/commit/bffe56f21634800f5d35e2449a3a3219f4d118b7))
* **14:** WR-03 normalize provider_response string key in record_attempt/2 ([14f9605](https://github.com/szTheory/chimeway/commit/14f9605df177539cf3d9b39c07d0ae5a5c9e4f94))
* **14:** WR-04 add timeline entry for manually-cancelled deliveries ([287b8a5](https://github.com/szTheory/chimeway/commit/287b8a54a0d27cd379e2d038cedd61583bed3fae))
* **17:** harden orchestration planning follow-ups ([40d05b9](https://github.com/szTheory/chimeway/commit/40d05b94287b48b3c8e69b70271e01df0df5541a))
* **18:** stamp deferred transition timestamps ([4ea8ec6](https://github.com/szTheory/chimeway/commit/4ea8ec6df531c64a79423c3d689fa15da84a3c52))
* **19:** tighten digest rule matching and accumulation edges ([5bd1b44](https://github.com/szTheory/chimeway/commit/5bd1b4400ac972af367d8ee4b833174345ae85e5))
* **21:** revise plans based on checker feedback ([54d917d](https://github.com/szTheory/chimeway/commit/54d917d2d3fd18706a68c5c053e8ef8eb77f4444))
* **22-04:** restore recovery-only planning fallback ([9fbf089](https://github.com/szTheory/chimeway/commit/9fbf089effca951cc0971db380fd98e3c93730fd))
* **23-05:** harden digest lookup identity boundaries ([fb5ae6d](https://github.com/szTheory/chimeway/commit/fb5ae6dd6c743491715353a741aa2a5478d70421))
* **27-04:** make phase 27 spine migration upgrade-safe ([0e4d2bc](https://github.com/szTheory/chimeway/commit/0e4d2bcbce4ce0113a5a117c002d45c87de62e8f))
* **27-04:** reject empty workflow run tenant ids ([bb2b903](https://github.com/szTheory/chimeway/commit/bb2b9036c5f5aa28cf7899c0c5123a4dbdfc0d2d))
* **27-05:** pass tenant ids through trigger workflow runs ([03f3e84](https://github.com/szTheory/chimeway/commit/03f3e84e67809839ab57530ed206bb7aa6d6f14d))
* **27-05:** thread tenant into initial workflow runs ([6014765](https://github.com/szTheory/chimeway/commit/60147658ec53c874cf60e29e3c30d3fe718eb362))
* **27-06:** declare the signal router queue everywhere ([3a0ffd0](https://github.com/szTheory/chimeway/commit/3a0ffd0e7243ac94ba00a23e92527d34502d06b9))
* **27-06:** hold workflow signal locks through commit ([9089f0d](https://github.com/szTheory/chimeway/commit/9089f0de28b27d06bc877dac80296606f2dc2741))
* **27-06:** honor trace limits in workflow inspection ([8c738f1](https://github.com/szTheory/chimeway/commit/8c738f1844f5a89c77b1baab8f34966daebb5dd7))
* **29:** correct Plan 07 wave to 5 (depends on Plan 06 at wave 4) ([fce7b9b](https://github.com/szTheory/chimeway/commit/fce7b9b7d693b3810a2bec3a8717e6b4afa306fe))
* **29:** revise plans based on checker feedback ([7860bfe](https://github.com/szTheory/chimeway/commit/7860bfea44983d66c7e013d36af66f912f7bca90))
* **31-01:** pass tenant_id and actor_id in test and emission logic ([7ec7594](https://github.com/szTheory/chimeway/commit/7ec75948d5471a679339b611b6c9bbbb7ef50361))
* **33-06:** handle :more branch in CacheBodyReader.read_body/2 (BL-01) ([bdaa3db](https://github.com/szTheory/chimeway/commit/bdaa3db8bdb3599027269e84aa5ac65d741ae1b3))
* **34-02:** align PII boundary fixture event_name to canonical chimeway.delivery.succeeded ([c5a1335](https://github.com/szTheory/chimeway/commit/c5a1335b2cbda71d6cedb23250d86b85d0576d17))
* **34-02:** align Scenario B fixture event_name to canonical chimeway.delivery.succeeded ([d918024](https://github.com/szTheory/chimeway/commit/d9180244d089f23fe74d6fedf6435d03f0afa761))
* **ci:** format code, fix doc links, relax credo checks for release ([7d0ed56](https://github.com/szTheory/chimeway/commit/7d0ed56ee70d9136b94c9f9794fe41d3f7c03405))
* **phase-24:** preserve persisted workflow step identity ([5a61459](https://github.com/szTheory/chimeway/commit/5a61459598eb01a87b9ba57148a477b39b2ce5a8))
* use DATABASE_URL for repo config ([4e90b94](https://github.com/szTheory/chimeway/commit/4e90b9434962003758c1a292dd3c598ff5960005))

## [Unreleased]

*(no entries yet)*
