Skip to main content

max / goingson

750 B · 20 lines History Blame Raw
1 -- Milestones: scope boundaries within a project.
2 -- "When these tasks are done, ship it."
3
4 CREATE TABLE milestones (
5 id TEXT PRIMARY KEY NOT NULL,
6 user_id TEXT NOT NULL REFERENCES users(id) ON DELETE CASCADE,
7 project_id TEXT NOT NULL REFERENCES projects(id) ON DELETE CASCADE,
8 name TEXT NOT NULL,
9 description TEXT NOT NULL DEFAULT '',
10 position INTEGER NOT NULL DEFAULT 0,
11 target_date TEXT,
12 status TEXT NOT NULL DEFAULT 'open',
13 created_at TEXT NOT NULL DEFAULT (datetime('now'))
14 );
15
16 CREATE INDEX idx_milestones_project ON milestones(project_id);
17
18 -- Link tasks to milestones. Clearing a milestone sets the field to NULL.
19 ALTER TABLE tasks ADD COLUMN milestone_id TEXT REFERENCES milestones(id) ON DELETE SET NULL;
20