Publish saved Studio pages as atomic Wiki posts and document agent editing

This commit is contained in:
2026-10-27 17:37:22 +08:00
parent c423accb59
commit 3069a797b4
9 changed files with 159 additions and 22 deletions
@@ -0,0 +1,12 @@
BEGIN;
ALTER TABLE studio_designs ADD COLUMN IF NOT EXISTS post_id uuid REFERENCES posts(id) ON DELETE RESTRICT;
CREATE UNIQUE INDEX IF NOT EXISTS studio_designs_post ON studio_designs(post_id) WHERE post_id IS NOT NULL;
-- Adopt explicitly published entries, including the user's page repaired before deployment.
UPDATE studio_designs d SET post_id=p.id
FROM posts p
WHERE d.post_id IS NULL AND p.slug='studio-design-'||d.id::text
AND EXISTS(SELECT 1 FROM post_assets pa JOIN assets a ON a.id=pa.asset_id
WHERE pa.post_id=p.id AND a.kind='text'
AND strpos(a.body,'/studio/layouts/'||d.layout_id||'?id='||d.id::text)>0);
INSERT INTO schema_migrations(version) VALUES('010_studio_design_posts') ON CONFLICT DO NOTHING;
COMMIT;