Skip to content

specs: §10.2/§10.4/§10.5 drift found while building #720 #737

Description

@mforce

Three inaccuracies in specs/product/specs.md, all found while building #720 (PR #734) and deliberately left out of that slice to keep it scoped.

1. §10.5 lists a column that does not exist

line_total_cents is in the canonical sales_order_items schema. There is no such column — LineTotal is computed on the entity and explicitly EF-ignored (SalesOrderConfiguration.cs, builder.Ignore(i => i.LineTotal)).

2. §10.5 omits a column that does exist

egg_grade_id is a real, required, FK-constrained column on SalesOrderItems and is absent from the canonical list.

3. §10.4 and §10.2 now collide with #720's vocabulary

Why it was not fixed in #720

#720 added its own column to §10.5 and stopped. Correcting surrounding drift would have widened a slice already carrying a migration, a UI change and three locales — and the §10.2/§10.4 wording needs a vocabulary decision, not just a correction.

Suggested scope

Fix 1 and 2 as plain corrections. Handle 3 alongside #730's §4.3/§10 amendment, since that slice must touch the same prose and will otherwise write on top of it.

Activity

  1. added
    documentationImprovements or additions to documentation
    severity:p3Defect: degraded or partial behaviour
    on Sep 9, 2026
  2. mforce commented on Sep 13, 2026

    @mforce
    OwnerAuthor

    Split during the 2026-09-13 issue cleanup, per this issue's own "suggested scope".

    Parts 1 and 2 — fixed in PR #812, which closes this issue:

    • line_total_cents removed from §10.5. There is no such column; LineTotal is computed and explicitly builder.Ignored. A paragraph now says so, so it does not get re-added by someone reconciling the spec against a query result.
    • egg_grade_id added, placed where the generated schema puts it (after product_type_snapshot) and annotated as required and present on every line, not only egg products.

    Both verified at the C# and SQL layers before editing — docs/schema/public.SalesOrderItems.md and SalesOrderConfiguration.cs:65,71,117-118 — rather than taken from this issue's text.

    Part 3 — moved to #730, recorded there. The §10.2 / §10.4 discount-vocabulary collision needs a vocabulary decision rather than a correction, and this issue already said to handle it alongside #730 because that slice must touch the same prose. Fixing it now would mean writing text #730 is about to rewrite.

    Nothing is dropped: part 3 is on an open issue with the full context, not left on a closed one.

  3. added a commit that references this issue on Sep 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationseverity:p3Defect: degraded or partial behaviour

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions