49d384a0fb
backend/thesis_seed.py builds the starting "living messaging source of truth" from docs/thesis-seed-v5.md: a core line (throughline; the open Option A/B banner as a competing variant group; the three pillars; the proof; voice rules), one line per LP segment carrying that segment's angle, and the five segment definitions. ensure_thesis_seed(conn) runs from init_db, seeding ONLY when the Workshop is empty (no thesis lines) — idempotent and non-destructive, so it bootstraps once and never overwrites partner edits. Everything lands draft/candidate; nothing is made canonical (that stays the partners' dual-approval action, guardrail #4). Content is Ten31's own messaging, not LP data. Test: backend/test_thesis_seed.py runs init_db and asserts the core line, 5 segment lines, the 2-member Option A/B variant group, 3 pillars, segment_cuts, and segment defs, plus re-seed-is-a-no-op (11/11). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
22 lines
920 B
TypeScript
22 lines
920 B
TypeScript
import { VersionGraph } from '@start9labs/start-sdk'
|
|
import { v_0_1_0_39 } from './v0.1.0.39'
|
|
import { v_0_1_0_40 } from './v0.1.0.40'
|
|
import { v_0_1_0_41 } from './v0.1.0.41'
|
|
import { v_0_1_0_42 } from './v0.1.0.42'
|
|
import { v_0_1_0_43 } from './v0.1.0.43'
|
|
import { v_0_1_0_44 } from './v0.1.0.44'
|
|
import { v_0_1_0_45 } from './v0.1.0.45'
|
|
import { v_0_1_0_46 } from './v0.1.0.46'
|
|
import { v_0_1_0_47 } from './v0.1.0.47'
|
|
import { v_0_1_0_48 } from './v0.1.0.48'
|
|
import { v_0_1_0_49 } from './v0.1.0.49'
|
|
import { v_0_1_0_50 } from './v0.1.0.50'
|
|
import { v_0_1_0_51 } from './v0.1.0.51'
|
|
import { v_0_1_0_52 } from './v0.1.0.52'
|
|
import { v_0_1_0_53 } from './v0.1.0.53'
|
|
|
|
export const versionGraph = VersionGraph.of({
|
|
current: v_0_1_0_53,
|
|
other: [v_0_1_0_39, v_0_1_0_40, v_0_1_0_41, v_0_1_0_42, v_0_1_0_43, v_0_1_0_44, v_0_1_0_45, v_0_1_0_46, v_0_1_0_47, v_0_1_0_48, v_0_1_0_49, v_0_1_0_50, v_0_1_0_51, v_0_1_0_52],
|
|
})
|