Fix Postgres prompt seed crashing on CASE WHEN 0/1.
SQLite treats integers as booleans; a backend recreate after the API key was added hit that on every start. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
07479f6a9f
commit
9d5befdde9
|
|
@ -307,7 +307,7 @@ def _seed_prompts(conn: Any) -> None:
|
|||
SET name = ?, description = ?, category = ?, prompt_type = ?,
|
||||
required_feature = ?, is_system_default = 1, default_template = ?,
|
||||
seed_revision = ?,
|
||||
template = CASE WHEN ? THEN ? ELSE template END,
|
||||
template = CASE WHEN ? = 1 THEN ? ELSE template END,
|
||||
updated = datetime('now')
|
||||
WHERE slug = ?
|
||||
""",
|
||||
|
|
|
|||
|
|
@ -57,6 +57,9 @@ def main() -> None:
|
|||
expect("'?'" in quoted, "question mark inside quotes kept")
|
||||
expect(quoted.endswith("%s") or quoted.rstrip().endswith("%s"), "trailing placeholder converted")
|
||||
|
||||
case_sql = adapt_sql("UPDATE t SET x = CASE WHEN ? = 1 THEN ? ELSE x END")
|
||||
expect("CASE WHEN %s = 1 THEN %s ELSE x END" in case_sql, "boolean-safe case placeholder")
|
||||
|
||||
parts = split_sql("CREATE TABLE a (id TEXT); CREATE TABLE b (id TEXT);")
|
||||
expect(parts == ["CREATE TABLE a (id TEXT)", "CREATE TABLE b (id TEXT)"], "split two statements")
|
||||
schema = (ROOT / "schema.sql").read_text(encoding="utf-8")
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user