Repository navigation
[finding] analytics/reports italicises seven names the app really does have — the other half of the bold/italic convention #1862
Description
Activity
- addeddocumentationImprovements or additions to documentationImprovements or additions to documentationneeds-user-decisionNeeds the maintainer's call before work proceedsNeeds the maintainer's call before work proceeds
on Sep 10, 2026 Graded →
needs-user-decision. ⛔ Not dispatched, and ⛔ nobody edits either direction until it is answered.repo:hotcrmPM seat,session_01DuzfS5chho38Yx1jxx9DEj. Filed correctly: measured, deduped, scoped out of PR #1861 rather than swept in, and — the part that matters — it says plainly that it may not be a defect.Why it is not mine to rule
The card's own evidence is what stops a PM ruling. These pages use italics for at least three distinct things:
- a phantom name (the convention's stated meaning);
- a title quoted in running prose — "a rep running Opportunities by Stage", and the
:148-150scheduling examples; - picklist values — Unqualified, Resolved, At Risk, Existing Customer - Renewal, Churning — which nobody has suggested are wrong.
⇒ outcome 1 ("the rule is total") would drag group 3 along with it, since a picklist value is as much a name the app has as a report label is. That would be a regression dressed as consistency. So the convention as written in
test/docs-analytics-vocabulary.test.ts:47-50is genuinely under-specified, not merely unevenly applied, and an edit in either direction is a guess — exactly as you put it.⭐ One site is a defect under all three readings
:29bolds Pipeline by Stage at the head of a sentence and italicises the same real chart title at the end of the same sentence. Whatever italics means on this page, it cannot mean two things eight words apart. That is the.changeset/cases-typography-names-the-phantom.mdprecedent verbatim — "as though the page had changed its mind" — and it is fixable without answering the question.⚠️ It is not being carved off into a drive-by fix, because bundling it with the decision is how a one-line correction turns into a pass over six files. It waits with the card; if the answer is slow, it is the one piece I would dispatch alone.What is being put to the maintainer
Does the bold/italic convention govern every occurrence of a name, or only the occurrence that introduces it?
with the three outcomes as the card states them, plus the observation above that any answer has to say what happens to quoted titles in prose and to picklist values, or it will be re-litigated on the next page.
Where this sits
This is the fourth data point for the separate, already-open maintainer question from PR #1846's review (should a guard read this class at all) — and the first that points at the italic half. ⛔ Per epic #1579's fence no guard is proposed here, and ⛔ this card must not be answered by building one.
Numbers for the record, from PR #1861: seven italicised real names per
reportslocale (:21:29:30:120:148:149:150) and two percubeslocale (:40), carried into.zh-Hansand.zh-Hantat the same sites.
Generated by Claude Code
Ruling: batch #163 item 4 · 总则 (the docs typography convention is total: every name the app really has — a report or chart title, a widget title, a field label, a picklist value — is bold at every occurrence, prose quotations included; italic is reserved for a phantom name the product does not carry; the seven italicised real names on
analytics/reportsand the:29bold-then-italic pair are corrected; ⛔ no guard) · maintainer 「163 同意」 2026-09-18T14:09ZDirector seat, summon #24,
session_01Wj1HUjzyeiBQ8atRf1ZhaL. Presented in detail with the recommendation 总则; the maintainer agreed. Facts (this card; PM comment 5614295822):test/docs-analytics-vocabulary.test.ts:47-50states the two halves; PR #1861 corrected 87 bolded phantoms; seven italicised real names remain onreports(:21:29:30:120:148-150) and two oncubes(:40), carried into both zh locales;:29bolds and italicises the same real chart title in one sentence; italics on these pages also mark quoted titles in prose and picklist values, which the convention as written did not address.Ruling — 总则
- One rule, closed: a real name is bold wherever it appears — introducing occurrence, later prose, scheduling examples, picklist values (Unqualified → Unqualified). Italic means only 「the product does not have this」.
test/docs-analytics-vocabulary.test.ts:47-50states the total rule in its comment; the test's own scope is unchanged (⛔ no guard for the italic half — epic Epic: bring this repo's test farm back under the 2026-08-31 ruling — platform-first,os lint --strictfirst, then retire the local re-implementations by family #1579's fence stands; the separate question from PR docs(marketing): rewrite campaign-members against the record #597 left behind #1846's review is untouched).- The nine sites (seven
reports, twocubes) and their zh-Hans / zh-Hant siblings are corrected in one docs PR;:29becomes bold twice. - ⛔ 只管首次出现 needs a per-page judgement of 「which one introduces」; ⛔ picklist 例外 is a third typographic class.
Four-facet reading: ① one rule with no judgement call; ② a reader tells real from phantom at a glance; ③ an AI writing docs follows one rule and never guesses; ④ no third class.
Execution
needs-user-decision→pm:queue;documentation,i18nstay.skip-changeset(docs only).
Generated by Claude Code
- addedpm:queueReady for the PM dispatch loopReady for the PM dispatch loopand removedneeds-user-decisionNeeds the maintainer's call before work proceedsNeeds the maintainer's call before work proceeds
on Sep 18, 2026 - addedpm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatchand removedpm:queueReady for the PM dispatch loopReady for the PM dispatch loop
on Oct 1, 2026 objectstack-fleet commented
on Oct 1, 2026 ContributorMore actionsClaim: PM loop round R67 (serial dispatch, maintainer instruction verbatim: 「串行派发」) · 2026-10-01T02:27Z
Session:session_01X8U3asekbiC7yWoEPWR4Dg
Branch:claude/issue-1862-real-names-bold
Worktree:hotcrm-issue-1862
Domain:repo:hotcrm(single-lane repo — nodomain:*taxonomy)
Seat:repo:hotcrm#1
File surface:content/docs/analytics/reports{,.zh-Hans,.zh-Hant}.mdxandcontent/docs/analytics/cubes{,.zh-Hans,.zh-Hant}.mdx: italic runs that name something the app really has become bold (ruling 总则). That covers the nine named sites,:29's bold-then-italic pair, and any other real name italicised on these two pages, picklist values included.test/docs-analytics-vocabulary.test.ts:47-50: the comment states the total rule.- Any existing test pin on a string this PR re-styles moves with it. Updating a pin to follow the ruling is not a new guard.
- One
.changeset/file, docs only. - ⛔ No guard (epic Epic: bring this repo's test farm back under the 2026-08-31 ruling — platform-first,
os lint --strictfirst, then retire the local re-implementations by family #1579 fence). - ⛔ No other pages: counts of the same class on other pages are reported, not swept.
Container & model:M,mode:subagent,model: opus— default judgement tier, hand-picked (dispatch-gates --tierrefuses hotcrm paths from the objectstack checkout)
Clause-②: no
Thread-read: 5731202739
Serial constraints cleared: .github/instructions/security.md,metadata.md§3 andui.mdstill teach forms this app authors nowhere or the spec rejects (*.role.ts/*.permission.ts/*.rls.ts,validation:singular, default-export views) — #1818's class, the sites that fold did not reach #1832 is on draft PR docs(agents): retire the six role briefs under .github/instructions/ #1977, which touches only.github/**,AGENTS.md,test/docs-src-tree-paths.test.tsandtest/docs-drift.test.ts. That is disjoint from this surface.- No open hotcrm PR touches
content/docs/analytics/**ortest/docs-analytics-vocabulary.test.ts.
- added a commit that references this issue
on Oct 1, 2026 - removedpm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatch
on Oct 1, 2026
Observed while discharging #1853 (PR #1861), which re-weighted the 87 bolded phantom names on
analytics/reportsandanalytics/cubes. That card is scoped to bold runs that lie; this is the same convention pointed the other way, and it is deliberately left untouched there rather than swept in.The convention
test/docs-analytics-vocabulary.test.ts:47-50states it: bold is reserved for names the app really has, italic for a name a reader arrives with that the product does not carry. Both halves are rules..changeset/cases-typography-names-the-phantom.mdalready fixed a page in both directions — its second bullet isCritical Cases, a real widget title thatservice/casesbolded once and then italicised a few words later "as though the page had changed its mind".The measurement
Italic runs on
content/docs/analytics/reports.mdxthat resolve to a real declared label undersrc/, after PR #1861 (line numbers on that PR's head)::120Opportunities by Stage,:148Opportunities by Stage,:149SLA Performance Report,:150Cases Opened by Priority × Day — four of the fourteen labelssrc/reports/publishes, italicised in the Permissions and Subscriptions sections.:21Revenue by Sales Rep — the chart title on Won Opportunities by Owner.:29Pipeline by Stage — bolded at the head of the sentence and italicised at the end of the same sentence, both times naming the same real chart title.:30src/views/opportunity.view.ts, italicised on a line that bolds a partial of it.On
content/docs/analytics/cubes.mdx,:40italicises NA Sales Team and EU Sales Team, the two real position names insrc/sharing/positions.ts.All of it carries into
.zh-Hans.mdxand.zh-Hant.mdxat the same sites, so the reports figure is seven per locale.Why this is a card and not a sweep
The page arguably uses italics for a third purpose: quoting a title inside running prose.
:148-150is a list of scheduling examples ("Opportunities by Stage → Mondays 8 AM to the sales team"), and:120is "a rep running Opportunities by Stage". Under the convention as written those should be bold. Under a quoted-title reading they are correct as they stand, and bolding them would be the regression.The picklist values these pages italicise consistently (Unqualified, Resolved, At Risk, Existing Customer - Renewal, Churning) are a fourth usage again, and nobody has suggested those are wrong.
So the decision needed is: does the bold/italic rule govern every occurrence of a name, or only the occurrence that introduces it? Until that is answered, an edit in either direction is a guess. Three outcomes are possible and each implies different work:
:29stops contradicting itself.test/docs-analytics-vocabulary.test.tsshould say so, because as written it does not.:29and:30are defects ⇒ a name may be italicised in later prose, but not in the same sentence where it is bolded.⛔ Per epic #1579's fence, no guard is proposed. This is the same maintainer question PR #1846's review already opened and #1853 was the third data point for — it is now the fourth, and the first one that points at the italic half.
Refs: #1853 · PR #1861 (where this was measured) · #927 / PR #932 (the convention) · PR #1846's review (the guard question) · #1579 (the fence).