refactor(ui): rename project-fallback tokens to --project-seed / --project-none (A3)

Pure rename, values unchanged (#6366f1 / #64748b): the two Batch 1
--hex-* tokens for project-color fallbacks get semantic names.
--project-seed = new-project indigo seed default (ProjectDetail,
PipelineSettings x2, IssueProperties x2, NewIssueDialog x2);
--project-none = no-project-assigned muted slate (Routines x2,
MarkdownEditor, RoutineRunVariablesDialog x2, RoutineList,
editable-sections x2, ActivityCharts 'backlog'). 16 call sites + the two
index.css definitions. Zero rendered-output change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
scotttong 2026-07-06 16:17:57 -07:00
parent 383460bb2e
commit 7e3e59db26
11 changed files with 18 additions and 18 deletions

View File

@ -181,7 +181,7 @@ const statusColors: Record<string, string> = {
done: "var(--hex-10b981)",
blocked: "var(--hex-ef4444)",
cancelled: "var(--hex-6b7280)",
backlog: "var(--hex-64748b)",
backlog: "var(--project-none)",
};
const statusLabels: Record<string, string> = {

View File

@ -1352,7 +1352,7 @@ export const MarkdownEditor = forwardRef<MarkdownEditorRef, MarkdownEditorProps>
) : option.kind === "project" && option.projectId ? (
<span
className="inline-flex h-2 w-2 rounded-full border border-border/50"
style={{ backgroundColor: option.projectColor ?? "var(--hex-64748b)" }}
style={{ backgroundColor: option.projectColor ?? "var(--project-none)" }}
/>
) : option.kind === "user" ? (
<User className="h-3.5 w-3.5 shrink-0 text-muted-foreground" />

View File

@ -1486,7 +1486,7 @@ export function NewIssueDialog() {
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: currentProject.color ?? "var(--hex-6366f1)" }}
style={{ backgroundColor: currentProject.color ?? "var(--project-seed)" }}
/>
<span className="truncate">{option.label}</span>
</>
@ -1501,7 +1501,7 @@ export function NewIssueDialog() {
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: project?.color ?? "var(--hex-6366f1)" }}
style={{ backgroundColor: project?.color ?? "var(--project-seed)" }}
/>
<span className="truncate">{option.label}</span>
</>

View File

@ -118,7 +118,7 @@ export function RoutineListRow<TRoutine extends RoutineListRowItem>({
<span className="flex items-center gap-2">
<span
className="h-2.5 w-2.5 shrink-0 rounded-sm"
style={{ backgroundColor: project?.color ?? "var(--hex-64748b)" }}
style={{ backgroundColor: project?.color ?? "var(--project-none)" }}
/>
<span>{routine.projectId ? (project?.name ?? "Unknown project") : "No project"}</span>
</span>

View File

@ -423,7 +423,7 @@ export function RoutineRunVariablesDialog({
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: selectedProject.color ?? "var(--hex-64748b)" }}
style={{ backgroundColor: selectedProject.color ?? "var(--project-none)" }}
/>
<span className="truncate">{option.label}</span>
</>
@ -438,7 +438,7 @@ export function RoutineRunVariablesDialog({
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: project?.color ?? "var(--hex-64748b)" }}
style={{ backgroundColor: project?.color ?? "var(--project-none)" }}
/>
<span className="truncate">{option.label}</span>
</>

View File

@ -1574,7 +1574,7 @@ export function IssueProperties({
<>
<span
className="shrink-0 h-3 w-3 rounded-sm"
style={{ backgroundColor: orderedProjects.find((p) => p.id === issue.projectId)?.color ?? "var(--hex-6366f1)" }}
style={{ backgroundColor: orderedProjects.find((p) => p.id === issue.projectId)?.color ?? "var(--project-seed)" }}
/>
<span className="text-sm truncate min-w-0" title={projectName(issue.projectId)}>{projectName(issue.projectId)}</span>
</>
@ -1647,7 +1647,7 @@ export function IssueProperties({
{option.kind === "project" ? (
<span
className="shrink-0 h-3 w-3 rounded-sm"
style={{ backgroundColor: option.color ?? "var(--hex-6366f1)" }}
style={{ backgroundColor: option.color ?? "var(--project-seed)" }}
/>
) : null}
{option.name}

View File

@ -190,7 +190,7 @@ export function OverviewSection({
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: currentProject.color ?? "var(--hex-64748b)" }}
style={{ backgroundColor: currentProject.color ?? "var(--project-none)" }}
/>
<span className="truncate">{option.label}</span>
</>
@ -205,7 +205,7 @@ export function OverviewSection({
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: project?.color ?? "var(--hex-64748b)" }}
style={{ backgroundColor: project?.color ?? "var(--project-none)" }}
/>
<span className="truncate">{option.label}</span>
</>

View File

@ -1463,8 +1463,8 @@ span.paperclip-mention-chip[data-mention-kind="external-object"] {
--hex-8b5cf6: #8b5cf6; /* ActivityCharts.tsx — status 'in_progress' (independent from --status-task-in_progress which is #2563eb — flagged inconsistency, TOKEN-AUDIT.md 1.2). */
--hex-a855f7: #a855f7; /* ActivityCharts.tsx — status 'in_review'. */
--hex-10b981: #10b981; /* ActivityCharts.tsx — status 'done'; also the >=0.8 success-rate bar tint. */
--hex-64748b: #64748b; /* ActivityCharts.tsx status 'backlog'; also the widely-repeated 'no project assigned' muted-slate fallback color (TOKEN-AUDIT.md 1.3) across Routines/MarkdownEditor/RoutineRunVariablesDialog/RoutineList/IssueColumns/editable-sections. */
--hex-6366f1: #6366f1; /* Project-color-fallback indigo seed default (ProjectDetail/PipelineSettings/IssueProperties/NewIssueDialog) — new-project-color-picker-seed family per TOKEN-AUDIT.md 1.3. */
--project-none: #64748b; /* Semantic rename of --hex-64748b (DECISION-SHEET.md A3, value unchanged). 'No project assigned' muted-slate fallback (TOKEN-AUDIT.md 1.3) across Routines/MarkdownEditor/RoutineRunVariablesDialog/RoutineList/IssueColumns/editable-sections; also ActivityCharts.tsx status 'backlog'. */
--project-seed: #6366f1; /* Semantic rename of --hex-6366f1 (DECISION-SHEET.md A3, value unchanged). Project-color-fallback indigo seed default (ProjectDetail/PipelineSettings/IssueProperties/NewIssueDialog) — new-project-color-picker-seed family per TOKEN-AUDIT.md 1.3. */
--gradient-extract-1: linear-gradient(180deg,rgba(255,80,80,0.12),rgba(255,255,255,0.02)); /* Dashboard.tsx budget-alert card gradient. */
--gradient-extract-2: linear-gradient(180deg,rgba(255,255,255,0.05),rgba(255,255,255,0.02)); /* Costs.tsx subtle white card gradient. */
--gradient-extract-3: radial-gradient(circle at top left,rgba(244,114,182,0.08),transparent 35%),radial-gradient(circle at bottom right,rgba(56,189,248,0.1),transparent 32%); /* AccountingModelCard.tsx decorative overlay. */

View File

@ -2956,7 +2956,7 @@ export function PipelineSettings() {
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: selectedAutomationProject.color ?? "var(--hex-6366f1)" }}
style={{ backgroundColor: selectedAutomationProject.color ?? "var(--project-seed)" }}
/>
<span className="truncate">{option.label}</span>
</>
@ -2971,7 +2971,7 @@ export function PipelineSettings() {
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: project?.color ?? "var(--hex-6366f1)" }}
style={{ backgroundColor: project?.color ?? "var(--project-seed)" }}
/>
<span className="truncate">{option.label}</span>
</>

View File

@ -786,7 +786,7 @@ export function ProjectDetail() {
) : null}
{project.managedByPlugin ? (
<div className="inline-flex items-center gap-2 rounded-full border border-border bg-muted px-3 py-1 text-(length:--fs-11) font-medium text-muted-foreground">
<span className="h-2 w-2 rounded-full" style={{ backgroundColor: project.color ?? "var(--hex-6366f1)" }} />
<span className="h-2 w-2 rounded-full" style={{ backgroundColor: project.color ?? "var(--project-seed)" }} />
Managed by {project.managedByPlugin.pluginDisplayName}
</div>
) : null}

View File

@ -748,7 +748,7 @@ export function Routines() {
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: currentProject.color ?? "var(--hex-64748b)" }}
style={{ backgroundColor: currentProject.color ?? "var(--project-none)" }}
/>
<span className="truncate">{option.label}</span>
</>
@ -763,7 +763,7 @@ export function Routines() {
<>
<span
className="h-3.5 w-3.5 shrink-0 rounded-sm"
style={{ backgroundColor: project?.color ?? "var(--hex-64748b)" }}
style={{ backgroundColor: project?.color ?? "var(--project-none)" }}
/>
<span className="truncate">{option.label}</span>
</>