seedproject-web/api/db/migrations/007_create_cja_changelog.sql
Carlos Arias 43ae1e2015 Baseline: full site build (brand, pages, DB, agent-editable)
Establishes the deploy baseline on main so the admin agent's publish/rollback
has a clean starting point. Everything built to date: sumi-e brand system,
homepage, projects (DB-driven case studies), resume, about, services +
website-design detail, contact form + DB, changelog, favicon + share card.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DoFYZY9gkGPNDqZ7NuEa9a
2026-07-23 20:21:28 +00:00

26 lines
1.1 KiB
SQL

-- Public, human-friendly changelog for the site itself.
--
-- Fits the "agentic website" thesis: the site documents its own evolution, and
-- an agent can append a row here as part of shipping a change. Same JSON-free,
-- flat shape the rest of the cja_* tables use — this is a log, not a graph.
--
-- `type` is a small closed set, so an ENUM is correct here (unlike the contact
-- subject, which grows). `entry_at` is the event time shown to readers; the row
-- timestamps are for bookkeeping.
CREATE TABLE IF NOT EXISTS `cja_changelog` (
`changelog_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`type` enum('added','updated','fixed','bug','removed','note')
NOT NULL DEFAULT 'added',
`summary` varchar(255) NOT NULL,
`detail` varchar(500) DEFAULT NULL,
`entry_at` datetime NOT NULL, -- when the change happened
`published` tinyint(1) NOT NULL DEFAULT 1,
`created_at` datetime NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`changelog_id`),
KEY `idx_cja_changelog_feed` (`published`, `entry_at`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;