feat(read): today dissolve — flat items[] + meta.counts; badge purge (read-shape doctrine PR 1) - #375
Merged
Merged
Conversation
…(read-shape doctrine PR 1)
Dissolve the `today` view's Today/This-Evening `sections` into one flat
`items[]` (comparator order, each row carrying `when`), and move the count to
`meta.counts`. First of five PRs implementing the ratified read-shape doctrine
(docs/design/read-shape-doctrine.md): JSON models semantic state; the TTY
projects GUI placement.
- data: `{ items }` — flat Today members, `when` kept per row, stage dropped
(stage-pure `anytime`). `data.sections` and `data.badge` gone.
- meta.counts `{dueOrOverdue, other}` (the app's sidebar count, OPEN members);
over MCP it rides the result metadata block beside `truncation`.
- "badge" purged from all consumer copy; added to the banned-vocabulary
regression lists (surface-copy.md rule 6, help-contract + mcp tests).
- TTY: clean `── ★ Today ──` header; counts render at the top as card-style
metadata lines; This Evening re-projected from `when`; evening honesty hint
preserved via `meta.truncation.sections` (TTY render-section metadata).
- doctrine doc finalized/ratified; contract.md + design/contracts.md updated;
envelope schema regen; skill model.md sentence de-falsified.
Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RYbJensXxHpJK1v1VDXYUD
mikegreiling
added a commit
that referenced
this pull request
Aug 5, 2026
… re-audit (#398) * Revert "docs(read): ordering contract + skill sweep for the read-shape doctrine (PR 5) (#379)" This reverts commit debbe6f. * Revert "feat(read): area-view direct to-dos dissolve to flat items[] (read-shape doctrine PR 4) (#378)" This reverts commit 044ffd0. * Revert "feat(read): project-view headings catalog + logbook flatten (read-shape doctrine PR 3) (#377)" This reverts commit 94f1dda. * Revert "feat(read): project-view children dissolve to flat items[] (read-shape doctrine PR 2) (#376)" This reverts commit 57321bc. * Revert "feat(read): today dissolve — flat items[] + meta.counts; badge purge (read-shape doctrine PR 1) (#375)" This reverts commit ce4fa4d. * chore(read): post-revert bookkeeping — CHANGELOG, doctrine status, skill floor Follow-up to the five read-shape doctrine reverts (#375-#379): - CHANGELOG: add a breaking Unreleased entry documenting the wholesale revert and the return to pre-0.13.0 bucketed today/project/area shapes; meta.counts removed. Clean revert, no compat shims (ALPHA-CONTRACT). - docs/design/read-shape-doctrine.md: restored (the PR-1 revert deleted it) with its status changed to REVERTED (dated) — retained as the input to a design re-audit of the read-shape approach. - skills/things-cli/SKILL.md: reconcile the npx floor sentence. The skill again teaches the bucketed read shapes, which 0.13.0 does NOT have; anchor the floor to the skill's publish-stamped version (the release that ships these shapes) instead of the now-false "below 0.13.0" literal. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01C1g2PkB43exMAfFdg6QnMT --------- Co-authored-by: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
First of five sequential PRs implementing the ratified read-shape doctrine (
docs/design/read-shape-doctrine.md): JSON models semantic state; the TTY projects GUI placement. This PR dissolves thetodayview and finalizes the doctrine doc (closing draft #374).What changed (breaking, ALPHA)
datashape:today'sdatais now{ items }— one flat list of Today members in comparator order (Today-proper and This-Evening interleaved by their SQL position), each row carrying itswhen("today"/"evening") andprovisional.stageis still dropped (every Today member is stage-pureanytime, R13);when— previously section-dropped — is now KEPT on every row. The formerdata.sections([{key:"today"},{key:"evening"}]) is gone.meta.counts: the formerdata.badge {dueOrOverdue, other}moves tometa.counts(the app's sidebar count over OPEN members), sodatastays pure domain rows. Over MCP the count rides the result metadata block besidetruncation.--help, MCP descriptions, contract) and added to the banned-vocabulary regression lists (docs/design/surface-copy.mdrule 6;test/cli/help-contract.test.ts,test/mcp/server.test.ts). Evidence docs describing the app's GUI badge are untouched.── ★ Today ──header; the counts render at the top as card-style metadata lines (due/overdue: N/other: M, theproject show/area showconvention). This Evening is re-projected fromwhen; its honesty hint under truncation is preserved viameta.truncation.sections(completeness metadata for the two TTY render sections, not adatabucket).--evening,--area,--overdue, tag filters, per-calltz— behavior unchanged.Doc / doctrine
docs/design/read-shape-doctrine.mdfinalized and marked RATIFIED (rulings #C1–#C6 baked into the per-view verdicts; today marked landed, PRs 2–5 marked planned). Closes [DRAFT — do not merge] docs(design): read-shape doctrine audit #374.docs/contract.md,docs/design/contracts.mdupdated for the flat shape +meta.counts; envelope schema regenerated;skills/things-cli/references/model.mdde-falsified (the comprehensive skill sweep is PR 5).Verification
npm run checkgreen (typecheck + oxlint + fmt:check + 2310 tests). Envelope schema three-way sync test passes.🤖 Generated with Claude Code