Commit b11555e
docs(playbook): v1.1 — service-locator row + coupled-writes subsection
Two additions surfaced by the idaptik-user-settings design walk-through:
1. Service-locator-globals row added to the ReScript pattern index.
`Module.get(): Option<Thing>` is a common ReScript pattern; lifting
it to an effect makes the dependency visible at the call site and
lets tests install a mock without monkey-patching a global. Without
this row, the playbook covered `ref` and `let mutable` but missed
the service-locator one level above.
2. Coupled-writes subsection added to Decision Criteria. When one
user action must update both an in-memory subsystem AND persist to
storage (volume, theme, settings), the choice is between one
function calling two effects (default — keep coupling local) and a
wrapper effect (only when partial success is a bug). The rule
tracks the same logic as `mut` vs `State`.
Bumps :revnumber: to 1.1, appends row to Revision History.
No removals; existing v1.0 guidance unchanged.
Updates idaptik-user-settings.adoc to retire the "deferred to v1.1"
note and cross-reference the new sections, since v1.1 now exists.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent 9d03dd5 commit b11555e
2 files changed
Lines changed: 34 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
287 | 287 | | |
288 | 288 | | |
289 | 289 | | |
290 | | - | |
291 | | - | |
292 | | - | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
293 | 297 | | |
294 | 298 | | |
295 | 299 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
93 | 97 | | |
94 | 98 | | |
95 | 99 | | |
| |||
157 | 161 | | |
158 | 162 | | |
159 | 163 | | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
160 | 181 | | |
161 | 182 | | |
162 | 183 | | |
| |||
274 | 295 | | |
275 | 296 | | |
276 | 297 | | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
277 | 302 | | |
0 commit comments