Repository navigation
docs(specs): correct the sales_order_items column list in §10.5 - #812
Merged
Merged
Conversation
The canonical schema listed line_total_cents, which does not exist, and omitted egg_grade_id, which does. Both verified at the C# and SQL layers: LineTotal is a computed property explicitly ignored by EF Core in SalesOrderConfiguration.cs, and EggGradeId is a required, FK-constrained, indexed column on SalesOrderItems. Found while building #720 and deliberately left out of that slice to keep it scoped.
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Sep 13, 2026
mforce
pushed a commit
that referenced
this pull request
Sep 16, 2026
🤖 I have created a release *beep* *boop* --- ## [0.1.2](v0.1.1...v0.1.2) (2026-09-16) ### Features * **data:** standardize business record chronology ([#820](#820)) ([6231b31](6231b31)) * **infra:** optional leader-lease endpoint for pooled deploys ([#869](#869)) ([e9bc6a7](e9bc6a7)) * **sim:** seed a second farm for the README dashboard capture ([#867](#867)) ([de407c6](de407c6)) * **web:** adopt MUI, themed from the farm palette tokens ([#674](#674)) ([#860](#860)) ([6c83c5c](6c83c5c)) * **web:** convert Daily entry to MUI, field-first on the phone ([#888](#888)) ([b66f8b8](b66f8b8)) * **web:** convert the Dashboard and app shell to MUI ([#829](#829)) ([#883](#883)) ([2e94277](2e94277)) * **web:** retire the Slack-blue link colour for ink + a rule underline ([#884](#884)) ([c08f9d8](c08f9d8)) * **web:** serve a per-request CSP nonce so Emotion's styles apply under style-src 'self' ([#874](#874)) ([ba4e6f3](ba4e6f3)) * **web:** visual language theme overrides for the MUI revamp ([#864](#864)) ([#882](#882)) ([0bb6b73](0bb6b73)) * **web:** whole-app MUI baseline, theme policy guard and the [#740](#740) phone action rule ([#823](#823)) ([#871](#871)) ([af565e4](af565e4)) ### Bug fixes * **auth:** fail closed on unresolved flock-scope actors ([#787](#787)) ([#868](#868)) ([16d0350](16d0350)) * **auth:** make farm configuration owner-only ([#870](#870)) ([42f9036](42f9036)) * **e2e:** repoint the canary at the markup two PRs replaced ([#844](#844)) ([18b45dc](18b45dc)) * **i18n:** tl glossary uses the standard passive of ilagay ([#813](#813)) ([20dec10](20dec10)), closes [#738](#738) * **sim:** stop the k6-baseline EXIT trap masking a clean run as failed ([#838](#838)) ([f5ec96f](f5ec96f)) * **web:** declare the rule tokens the Dashboard reads, and guard undeclared custom properties ([#885](#885)) ([5bead1f](5bead1f)) ### Performance * **ci:** start the serialized integration collection first ([#861](#861)) ([1dcc7f6](1dcc7f6)), closes [#839](#839) ### Documentation * **auth:** record the OAuth 2.1 decision for MCP authentication ([#801](#801)) ([0510854](0510854)) * **designs:** MUI revamp design doc, component map, layout system, IA ([#862](#862)) ([da49481](da49481)) * **readme:** recapture the daily entry, reports and sales screenshots ([#865](#865)) ([f18e336](f18e336)) * **specs:** correct the sales_order_items column list in §10.5 ([#812](#812)) ([afe4a02](afe4a02)), closes [#737](#737) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: cluckwork-lockfix[bot] <309265648+cluckwork-lockfix[bot]@users.noreply.github.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.
Why
specs/product/specs.md§10.5 presents the canonicalsales_order_itemsschema, and two entries in it were wrong. Both were found while building #720 and deliberately left out of that slice to keep it scoped — it was already carrying a migration, a UI change and three locales.What changed
Removed
line_total_cents. There is no such column.LineTotalis a computed property on the entity and is explicitly ignored by EF Core:A short paragraph now says so under the block, so the column does not get re-added by someone reconciling the spec against a query result.
Added
egg_grade_id. It is real, required and FK-constrained —builder.Property(i => i.EggGradeId).IsRequired(), a foreign key toEggGradeswithON DELETE RESTRICT, andIX_SalesOrderItems_EggGradeId. It is placed where the generated schema puts it, afterproduct_type_snapshot, and annotated as present on every line rather than only on egg products, sinceGuid EggGradeIdis non-nullable for all product types.Verification
Both claims checked at both layers before editing, not from the issue text:
docs/schema/public.SalesOrderItems.md(generated and CI-checked) lists 16 columns.EggGradeIdis there,Nullable = false. NoLineTotalappears anywhere in it.SalesOrderConfiguration.cs:117-118for the ignore,:65and:71for the requirement and the FK.Scope
Documentation only, one file. The issue's third item — the §10.2/§10.4 discount-vocabulary collision — is not fixed here. It needs a vocabulary decision rather than a correction, and #737 itself says to handle it alongside #730, which must touch the same prose and would otherwise write over it. That has been recorded on #730.
Note this is not a documentation-only PR by CI's definition:
specs/is classified as code on purpose (#782), becauseweb/src/routes/helpGlossary.test.tsreads from that tree. No test readsspecs.mditself.Closes #737