UI polish from the first kof22 admin screenshots of 0.2.0-RC.1:
Labels: all 34 tables have plain labels (Contacts, Deals, Web Leads, ...); before, the nav, breadcrumbs and tiles showed raw names such as Crm_contact. Fields read naturally ("Owner", not "Owner User Id").
Money: amounts use the currency display format and show thousands separators with no .000000. Today's values carry the base currency code.
Pipeline by stage: three columns (Stage, Deals, Weighted amount) instead of "(1 deals)".
Leaderboard and "Won this month": a deal inserted straight into a closed stage now gets its close and stage dates, so won deals appear (the leaderboard showed "No rows found").
Names and owners:
Missing names stay null instead of "Not provided".
Contact labels fall back to the first name or the email, and web leads show a name or email.
Intake with no matching assignment rule leaves the owner empty rather than the site-API system user.
Contact layout:
Contact Information merges Online, Address and Communication.
A collapsed System section merges Data and Dates.
Child lists on contact, company and deal show 4 meaningful columns, which fixes the record tab overflow at 1440 px.
Timeline dates are readable, in the session time zone.
## Summary
UI polish from the first kof22 admin screenshots of 0.2.0-RC.1:
- **Labels:** all 34 tables have plain labels (Contacts, Deals, Web Leads, ...); before, the nav, breadcrumbs and tiles showed raw names such as `Crm_contact`. Fields read naturally ("Owner", not "Owner User Id").
- **Money:** amounts use the currency display format and show thousands separators with no `.000000`. Today's values carry the base currency code.
- **Pipeline by stage:** three columns (Stage, Deals, Weighted amount) instead of "(1 deals)".
- **Leaderboard and "Won this month":** a deal inserted straight into a closed stage now gets its close and stage dates, so won deals appear (the leaderboard showed "No rows found").
- **Names and owners:**
- Missing names stay null instead of "Not provided".
- Contact labels fall back to the first name or the email, and web leads show a name or email.
- Intake with no matching assignment rule leaves the owner empty rather than the site-API system user.
- **Contact layout:**
- Contact Information merges Online, Address and Communication.
- A collapsed System section merges Data and Dates.
- Child lists on contact, company and deal show 4 meaningful columns, which fixes the record tab overflow at 1440 px.
- **Timeline** dates are readable, in the session time zone.
Codex implemented this; Claude reviewed it.
## Test plan
- [x] `./mvnw verify`: 465 tests, 0 failures; JaCoCo 92.4%; checkstyle and guardrails pass
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
UI polish from the first kof22 admin screenshots of 0.2.0-RC.1:
Crm_contact. Fields read naturally ("Owner", not "Owner User Id")..000000. Today's values carry the base currency code.Codex implemented this; Claude reviewed it.
Test plan
./mvnw verify: 465 tests, 0 failures; JaCoCo 92.4%; checkstyle and guardrails pass🤖 Generated with Claude Code