feat(db): crew_skills table + role-based starting levels — schema v8 (#45)
CI / build + unit + e2e (pull_request) Successful in 2m48s
CI / build + unit + e2e (pull_request) Successful in 2m48s
This commit is contained in:
@@ -153,3 +153,14 @@ export const tasks = sqliteTable('tasks', {
|
||||
status: text('status').notNull().default('ACTIVE'), // 'ACTIVE' | 'PENDING' | 'DONE'
|
||||
queuedAtTurn: integer('queued_at_turn').notNull().default(0),
|
||||
})
|
||||
|
||||
// Per-member skill progression (PR B, spec §6): one row per (crew member, skill); seeded to
|
||||
// STARTING_LEVELS[role][skill] by createNewGame / the v8 backfill; Task 13 adds xp + level-ups.
|
||||
export const crewSkills = sqliteTable('crew_skills', {
|
||||
id: integer('id').primaryKey({ autoIncrement: true }),
|
||||
saveId: integer('save_id').notNull().references(() => saves.id),
|
||||
crewId: integer('crew_id').notNull().references(() => crew.id),
|
||||
skill: text('skill').notNull(), // SkillName
|
||||
level: integer('level').notNull().default(0), // 0–5
|
||||
xp: integer('xp').notNull().default(0),
|
||||
}, (t) => [uniqueIndex('crew_skills_crew_skill_unique').on(t.crewId, t.skill)])
|
||||
|
||||
Reference in New Issue
Block a user