Skip to content

docs(inventory): drop the crm_product capabilities the catalog no longer has - #1619

Merged
os-steve merged 1 commit into
mainfrom
claude/issue-1536-feature-inventory-product-rows
Sep 6, 2026
Merged

docs(inventory): drop the crm_product capabilities the catalog no longer has#1619
os-steve merged 1 commit into
mainfrom
claude/issue-1536-feature-inventory-product-rows

Conversation

@os-steve

@os-steve os-steve commented Sep 6, 2026

Copy link
Copy Markdown
Collaborator

Fixes #1536

Two rows of docs/feature-inventory.md credited crm_product with capability that is not on disk. Both rows keep their number; the false clauses are deleted.

What was false, measured on origin/main @ df549fef

Row Claimed On disk
QUO-010 :119 计费类型 (billing_type) tombstone comment only, src/objects/product.object.ts:154
QUO-010 :119 计量单位 (unit_of_measure) same comment
QUO-010 :119 库存 (in 「定价与库存」) quantity_on_hand / reorder_point are a tombstone comment, src/objects/product.object.ts:109
QUO-012 :121 「低库存(≤10)标红视图」 low_stock is a tombstone comment, src/views/product.view.ts:11-15

The sharpest form of it: each row names a source file as its anchor, and that same file states in prose that the capability the row claims is gone — product.view.ts says the view "could not outlive" the fields it was built on. content/docs/revenue/products.zh-Hans.mdx:52 already tells customers the opposite of what the internal inventory said, under the heading 「没有库存,也没有计费周期」.

Deleted, not softened

The inventory capability was removed, not renamed, so there is no vaguer wording that would be true. A row that outlives its subject is the same defect one abstraction level up and harder to catch, because it would no longer name a specific missing field.

What I derived, and from which file

Re-derived from the two anchor files at df549fef — deliberately not copied from the card's field list, since a hand-copied roster is the defect being fixed.

src/objects/product.object.ts declares 13 fields: product_code, name, display_title, description, category, family, list_price, cost, sku, is_active, product_manager, image, datasheet. Every surviving QUO-010 clause maps onto one of them — PRD-{0000} is product_code.format, tenant-unique SKU is sku.unique (the composite (organization_id, sku) its field comment explains), category / family, pricing is list_price / cost, image plus PDF datasheet, and 「全组织可读」 is sharingModel: 'public_read'. 「定价与库存」 became 「定价(目录价/成本)」 so the remaining phrase names what it means rather than leaving a hole where 库存 was.

src/views/product.view.ts defines exactly two list views: the all_products grid grouped by category, and the product_catalog gallery covered by image. That is what QUO-012 now says.

Consequences checked rather than assumed

  • No count is falsified. QUO-012 states no numeral (its LEA-014 / OPP-010 / ACT-006 siblings do), so nothing needed decrementing from three to two. The overview's 「14 个视图文件」 counts files; product.view.ts is still one of them, and there are still 14.
  • The range reference survives. The file's own rule at :10 keeps a numbered row and annotates it 「已移除」 when a feature point goes. Neither feature point went — 产品目录对象 and 产品视图 both still exist — so no annotation is due and 「产品:QUO-010~013」 at :271 is untouched.
  • QUO-013 at :122 is untouched. It is correct. The dispatch named :122 as QUO-012's line; at this ref QUO-012 is :121.

Not in scope here

  • #1198 is not addressed here: nothing about crm_product.tax_rate is touched. Measured at this ref, that field is already absent from crm_product (13 fields, not the 14 the card counted at f0a05613); the surviving tax_rate declarations belong to crm_quote_line_item, and this file carries no tax-rate row.
  • #1494 is not addressed here. Whether an inventory should transcribe object capability at all remains open; this PR only makes the existing rows true.

Gates

pnpm verify green in the worktree at 230ba9e0 — all eight stages ran (validate · typecheck · lint · lint:i18n-gate · hygiene · hygiene:tokens · build · test, 160 test files / 3394 tests passed).

⚠️ That green is not evidence the rows are now true. No gate reads this prose. The evidence for correctness is the derivation above: src/objects/product.object.ts and src/views/product.view.ts at df549fef.


Generated by Claude Code

…ger has

QUO-010 credited `crm_product` with `计费类型` (`billing_type`), `计量单位`
(`unit_of_measure`) and `库存`; QUO-012 listed a 「低库存(≤10)标红视图」. None of
them is on disk: `billing_type`, `unit_of_measure`, `quantity_on_hand` and
`reorder_point` were removed, the `low_stock` view went with the fields it was
built on, and all five survive only as tombstone comments in the two files those
rows cite as their anchors.

Deleted rather than softened — the capability is gone, not renamed, so there is
no vaguer wording that would be true. The surviving clauses were re-derived from
`src/objects/product.object.ts` (13 declared fields) and
`src/views/product.view.ts` (two list views), not copied from any roster.

Both numbered rows stay, so the 「产品:QUO-010~013」 range reference is intact.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018xtjdpZFjgWh4Ad9Wcx68J
@vercel

vercel Bot commented Sep 6, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
hotcrm Ignored Ignored Sep 6, 2026 12:32am UTC

Request Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs/feature-inventory.md QUO-010/QUO-012 credit crm_product with three capabilities that were removed

2 participants