feat: switch frontend indexing to code-first identifiers

This commit is contained in:
2026-04-03 16:25:11 +00:00
parent e4804128f6
commit 8208b3b27b
17 changed files with 176 additions and 158 deletions

View File

@@ -114,7 +114,7 @@ export default function ProjectDetailPage() {
{canEditProject && <button className="btn-sm" onClick={() => setShowMilestoneModal(true)}>+ New</button>}
</h3>
{milestones.map((ms) => (
<div key={ms.id} className="milestone-item" onClick={() => navigate(`/milestones/${ms.milestone_code || ms.id}`)}>
<div key={ms.id} className="milestone-item" onClick={() => ms.milestone_code && navigate(`/milestones/${ms.milestone_code}`)}>
<span className={`badge status-${ms.status === 'open' ? 'open' : ms.status === 'closed' ? 'closed' : 'in_progress'}`}>{ms.status}</span>
<span className="milestone-title">{ms.title}</span>
{ms.due_date && <span className="text-dim"> · Due {dayjs(ms.due_date).format('YYYY-MM-DD')}</span>}
@@ -136,7 +136,7 @@ export default function ProjectDetailPage() {
<MilestoneFormModal
isOpen={showMilestoneModal}
onClose={() => setShowMilestoneModal(false)}
initialProjectId={project.id}
initialProjectCode={project.project_code || ''}
lockProject
onSaved={() => fetchProject()}
/>