Fix packaging: ship the full backend tree (0.1.0:46)
The image COPY'd backend/server.py + a few subdirs but missed core_migrations.py,
backend/migrations/, and the Phase-1 modules (thesis_review/entity_merge/
entity_jobs). On the box the migrations never ran (tables absent) and those
endpoints 503'd ("Jobs unavailable"). Now COPY backend wholesale (.dockerignore
keeps __pycache__/data out). Bump to 0.1.0:46.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -52,14 +52,13 @@ RUN pip install --no-cache-dir \
|
||||
mcp==1.2.0
|
||||
|
||||
# ── Application source ──────────────────────────────────────────
|
||||
COPY backend/server.py /app/backend/server.py
|
||||
COPY backend/email_integration /app/backend/email_integration
|
||||
# Phase-0 substrate: ingest pipeline (entity resolution + backfill) and the
|
||||
# CRM MCP server. Shipped alongside the web server so the one-time index build
|
||||
# and the (manually-run) MCP server can execute on the box where /data/crm.db
|
||||
# lives. See start9/0.4/INGEST_PACKAGING.md.
|
||||
COPY backend/ingest /app/backend/ingest
|
||||
COPY backend/mcp /app/backend/mcp
|
||||
# Whole backend tree: server.py + all top-level modules (core_migrations,
|
||||
# thesis_review, entity_merge, entity_jobs) + migrations/ + ingest/ + mcp/ +
|
||||
# email_integration/. Earlier piecemeal COPYs missed core_migrations.py, the
|
||||
# migrations/ dir, and the Phase-1 modules — so the schema migrations never ran
|
||||
# and the thesis / index-job endpoints 503'd ("Jobs unavailable") on the box.
|
||||
# .dockerignore keeps __pycache__ and data/ out of the context.
|
||||
COPY backend /app/backend
|
||||
COPY frontend /app/frontend
|
||||
|
||||
# ── StartOS wrapper scripts ─────────────────────────────────────
|
||||
|
||||
@@ -10,8 +10,9 @@ export const PACKAGE_TITLE = 'Ten31 Database'
|
||||
// * 0.1.0:41 (frontend persists auth across refreshes)
|
||||
// * 0.1.0:42 (Gmail integration) / 0.1.0:43 (Gmail POST-body hotfix)
|
||||
// * 0.1.0:44 (Phase-0 ingest + MCP server in image; build-index action)
|
||||
// * Current: 0.1.0:45 (Phase-1 thesis system; dual approval; merge review; in-app index)
|
||||
export const PACKAGE_VERSION = '0.1.0:45'
|
||||
// * 0.1.0:45 (Phase-1 thesis system; dual approval; merge review; in-app index)
|
||||
// * Current: 0.1.0:46 (packaging fix: ship full backend so migrations run + endpoints work)
|
||||
export const PACKAGE_VERSION = '0.1.0:46'
|
||||
|
||||
export const DATA_MOUNT_PATH = '/data'
|
||||
export const WEB_PORT = 8080
|
||||
|
||||
@@ -6,8 +6,9 @@ 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'
|
||||
|
||||
export const versionGraph = VersionGraph.of({
|
||||
current: v_0_1_0_45,
|
||||
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],
|
||||
current: v_0_1_0_46,
|
||||
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],
|
||||
})
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
import { VersionInfo } from '@start9labs/start-sdk'
|
||||
|
||||
// Packaging fix for 0.1.0:45.
|
||||
//
|
||||
// 0.1.0:44/:45 shipped a Dockerfile that COPY'd backend/server.py and a few
|
||||
// subdirs piecemeal, but MISSED backend/core_migrations.py, the backend/migrations/
|
||||
// dir, and the Phase-1 modules (thesis_review/entity_merge/entity_jobs). Result on
|
||||
// the box: the in-app schema migrations never ran (the new tables were absent) and
|
||||
// the thesis / index-job endpoints returned 503 ("Jobs unavailable"). The index
|
||||
// build also could not run (canonical tables missing). This release COPYs the whole
|
||||
// backend tree, so the migrations run on boot and all endpoints work. No data
|
||||
// migration; the live /data volume is preserved.
|
||||
export const v_0_1_0_46 = VersionInfo.of({
|
||||
version: '0.1.0:46',
|
||||
releaseNotes: {
|
||||
en_US: [
|
||||
'Fix: the container image was missing the migration runner, the migrations',
|
||||
'directory, and the Phase-1 backend modules, so the new tables never got',
|
||||
'created and the thesis / index-job features were unavailable on the server.',
|
||||
'The image now ships the full backend; migrations run on boot (additively —',
|
||||
'your data is preserved) and the thesis, duplicate-review, and index actions',
|
||||
'work.',
|
||||
].join(' '),
|
||||
},
|
||||
migrations: {
|
||||
up: async () => {},
|
||||
down: async () => {},
|
||||
},
|
||||
})
|
||||
Reference in New Issue
Block a user