-
Notifications
You must be signed in to change notification settings - Fork 1
WONT-DO: add ADR-vocabulary Status line per entry #39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -10,17 +10,42 @@ this file (to BACKLOG, ROADMAP, or delete entirely). | |||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||
| Entries are grouped by area. Each entry has: | ||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||
| - **Status** (one of `Rejected`, `Declined`, `Deprecated`, | ||||||||||||||||||||||||||||||||||||||||
| `Superseded`) — matches ADR (Nygard) vocabulary. | ||||||||||||||||||||||||||||||||||||||||
| - **Decision date** (for the record) | ||||||||||||||||||||||||||||||||||||||||
| - **Proposal** (what was suggested) | ||||||||||||||||||||||||||||||||||||||||
| - **Why not** (one or two sentences) | ||||||||||||||||||||||||||||||||||||||||
| - **Revisit criteria** (what would flip the decision) | ||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||
| ## What the statuses mean | ||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||
| - **`Rejected`** — considered and turned down for a durable | ||||||||||||||||||||||||||||||||||||||||
| architectural, values-level, correctness, or security | ||||||||||||||||||||||||||||||||||||||||
| reason. Revisit-when is typically "never" or "only if the | ||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||
| reason. Revisit-when is typically "never" or "only if the | |
| reason. Revisit when is typically "never" or "only if the |
Copilot
AI
Apr 21, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
P2: The scope clarification says the only Rx-family surface shipped is IObservable<'T> via RxAdapter.asObservable, but src/Core/Rx.fs also publicly exposes RxAdapter.asObservableForCount (also returning IObservable<'T>). Consider rephrasing to refer to the RxAdapter module’s IObservable surface (or list both functions) to avoid implying there is only one entry point.
| is `IObservable<'T>` via `RxAdapter.asObservable` in | |
| `src/Core/Rx.fs` — push, no expression tree. We ship neither | |
| `IQbservable<'T>` nor `IAsyncQueryable<'T>`. Both of those carry | |
| `System.Linq.Expressions` machinery — the same substrate | |
| `IQueryable` owns — so "expose async LINQ but not sync LINQ" is | |
| not a clean split: picking up the expression-tree substrate | |
| re-opens the `IQueryable` question even if we only wanted the | |
| async variant. What's rejected here is the pull-LINQ contract, | |
| not the expression-tree substrate. | |
| is the `RxAdapter` module's `IObservable<'T>` surface in | |
| `src/Core/Rx.fs` (`RxAdapter.asObservable` and | |
| `RxAdapter.asObservableForCount`) — push, no expression tree. We | |
| ship neither `IQbservable<'T>` nor `IAsyncQueryable<'T>`. Both of | |
| those carry `System.Linq.Expressions` machinery — the same | |
| substrate `IQueryable` owns — so "expose async LINQ but not sync | |
| LINQ" is not a clean split: picking up the expression-tree | |
| substrate re-opens the `IQueryable` question even if we only | |
| wanted the async variant. What's rejected here is the pull-LINQ | |
| contract, not the expression-tree substrate. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
P2: The entry-field list says "Decision date" and "Revisit criteria", but the actual entry keys used throughout the document are "Decision:" and "Revisit when:". Please align the preamble wording with the actual field names (or rename the per-entry keys) so readers don’t have to guess which labels are canonical.