mirror of
https://github.com/we-promise/sure.git
synced 2026-09-08 16:14:23 +00:00
* Document instruction inventory and preservation decisions Trace main history from September 2025 through September 2026, including earlier policy origins. Record preserved requirements, detailed-guide destinations, stale facts, harness boundaries and explicit policy-strength decisions before consolidating instruction sources. * Consolidate repository instructions into shared guidance Keep AGENTS concise and vendor neutral, move detailed conventions into shared guides, and use thin adapters with preserved Cursor scopes. Preserve the strict pre-PR checks globally and document the stronger scope, retired migration pin and rule-generation trigger. Update existing API guidance verification without changing application behavior. * Narrow the always-on Cursor UI adapter and correct the SimpleFIN comment Split the design-system guidance out of docs/llm-guides/ui.md into docs/llm-guides/design-system.md. The ui-ux-design-guidelines rule is alwaysApply: true, so importing all of ui.md loaded the Stimulus, localization and ViewComponent guidance (previously confined to scoped rules) on every Cursor session; the always-on adapter now imports only the design-system guide, matching the scope it had before the consolidation. view_conventions and stimulus_conventions keep the full UI guide. Also correct the stale Provider::Simplefin header comment: pending inclusion defaults on and is resolved by the importer (explicit argument, then SIMPLEFIN_INCLUDE_PENDING, then Setting.syncs_include_pending); the previous comment described the flag as default-off. * Read guidance files as UTF-8 in the API consistency validators The frontmatter regex match ran against content read with the locale default external encoding; the Cursor rule's description contains an em dash, so under US-ASCII (LC_ALL=C) Regexp#match raised ArgumentError, breaking the standalone no-Rails fallback the docs point contributors to. Read all checked files with an explicit UTF-8 encoding in both the standalone script and the Rails test.
23 lines
1.3 KiB
Markdown
23 lines
1.3 KiB
Markdown
# Design system
|
|
|
|
Consult [`app/assets/tailwind/sure-design-system.css`](../../app/assets/tailwind/sure-design-system.css)
|
|
and existing [`DS::*` components](../../app/components/DS/) before building UI.
|
|
|
|
- Use functional tokens: `text-primary`, `bg-container`, `border-primary`,
|
|
`bg-warning/10`, `text-destructive`. Do not use raw palette classes or hex literals.
|
|
- Reach for `DS::Alert`, `DS::Button`, `DS::Disclosure`, `DS::Dialog`, `DS::Menu`
|
|
and other existing primitives before making an alert, badge, button, disclosure,
|
|
dialog or input shape.
|
|
- If a diff contains the same hand-built shape at least twice and no DS equivalent
|
|
exists, propose a new DS primitive before introducing the second copy.
|
|
- Use the `icon` helper from [`ApplicationHelper`](../../app/helpers/application_helper.rb),
|
|
never `lucide_icon` directly. Raw SVG belongs only inside DS primitives.
|
|
- Use scale tokens rather than arbitrary pixel values when a scale token fits.
|
|
- Do not add new styles to `sure-design-system.css` or
|
|
[`application.css`](../../app/assets/tailwind/application.css) without explicit permission.
|
|
- Reviewers escalate DS reuse and repeated-shape violations to close/rewrite.
|
|
Token, icon/SVG, localization and scale violations are request-changes.
|
|
|
|
For templates, Hotwire, Stimulus and localization guidance, see the
|
|
[UI guide](ui.md).
|