-- name: ListTemplates :many SELECT id, scope, tenant_id, origin_type, template_key, template_name, prompt_template, prompt_visibility, card_config_json, status, version_no, created_at, updated_at FROM article_templates WHERE (scope = 'platform' OR tenant_id = sqlc.arg(tenant_id)::bigint) AND status = 'active' AND deleted_at IS NULL ORDER BY created_at DESC; -- name: GetTemplateByID :one SELECT id, scope, tenant_id, origin_type, template_key, template_name, prompt_template, prompt_visibility, protected_prompt_asset_key, card_config_json, status, version_no, created_at, updated_at FROM article_templates WHERE id = sqlc.arg(id) AND (scope = 'platform' OR tenant_id = sqlc.arg(tenant_id)::bigint) AND deleted_at IS NULL;