**Core syntax** - Basic SET syntax (single row, with and without parentheses) - Column order independence - Multi-row insertion — SET (col=val, ...), (col=val, ...) syntax
**Value types** - DEFAULT keyword and implicit defaults (column omission) - Expressions, functions, and subqueries (including deeply nested) - NULL values, array columns, composite types, and domain types
**Clauses & advanced features** - RETURNING clause (single and multi-row) - ON CONFLICT DO NOTHING / DO UPDATE - OVERRIDING SYSTEM VALUE - CTE (WITH clause) - EXPLAIN / EXPLAIN ANALYZE
**Schema & constraints** - CHECK constraints and column-level privileges - Foreign key constraints (valid and failing cases) - Partitioned tables, table inheritance, and schema-qualified table names - Quoted and reserved keyword column names
**Procedural contexts** - PL/pgSQL functions and DO blocks (including multi-row) - Dynamic SQL via EXECUTE with parameters - Prepared statements (PREPARE + EXECUTE) - SAVEPOINTs and rollback behavior
**Other** - Updatable views - BEFORE and AFTER INSERT triggers - Negative cases covering syntax errors, constraint violations, and privilege violations
Note: Issue reported by Ajay Pal has been resolved in v3 patch.