Skip to content

Commit 60c6cc4

Browse files
committed
D118 re-read of PR #104 at main 219a540: renew sf.functions.trunc2
1 parent 2c29db6 commit 60c6cc4

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# D118 re-read at main 219a540d (PR #104: TRUNC/TRUNCATE's bare second argument stays a column). Bound to the basis below.
2+
3+
[review]
4+
schema = "sqlquack.syntax-d118-findings.v1"
5+
main = "219a540d819f758dba80e834d2f6818ce98841ad"
6+
pr = 104
7+
pr_head = "75a8d5bd8"
8+
parser_tree = "cc21b65e16782fc53d833e5ec10a9bc3ba9fdc04"
9+
reviewed_at = "2026-11-07T03:00:00Z"
10+
parser_change = "grouping.rs drops the TRUNC/TRUNCATE arm that read an unqualified, unquoted second argument as a date part. The argument now stays a column, and DATE_TRUNC, DATEDIFF and EXTRACT keep their date-part arms. test_fixes pins TRUNC(x, DAY) and TRUNCATE(x, s) as columns."
11+
checker = "syntax-coverage at 219a540d, built and run by the auditor: 3,479 forms, 0 problems. `stale` across all families lists exactly one form, sf.functions.trunc2, whose only reason is stale_review. sf.functions.trunc.trunc and .truncate stay verified."
12+
reading = "The parser now reads TRUNC's bare second argument the way Snowflake does. Receipt sf.functions.trunc2.ka4427f986c78 (SELECT TRUNC ( 1 , DAY ) ;) records errno 904, a semantic_error after parsing (missing_object): with a numeric first argument, Snowflake resolves DAY as an identifier. A column node is therefore the faithful tree, and the date-part reading is decided by the first argument's type, not by syntax. This supersedes the TRUNC part of the earlier tree finding d704778ce; the DATE_TRUNC, DATEDIFF and EXTRACT parts stand. The parse worker at 219a540d accepts the o001/o003/o005 case and rejects the o002, o004, o006 and o007 cases, each as its receipt records, and every trunc2 obligation is satisfied."
13+
renewed = ["sf.functions.trunc2"]
14+
15+
# Ready to land in coverage/syntax/reviews/auditor-functions.toml as written.
16+
[landing]
17+
id = "auditor-functions-020"
18+
reviewer_lane = "auditor"
19+
family = "functions"
20+
parser_tree = "cc21b65e16782fc53d833e5ec10a9bc3ba9fdc04"
21+
reviewed_utc = "2026-11-07T03:00:00Z"
22+
verdict = "approved"
23+
forms = ["sf.functions.trunc2"]
24+
note = "Read in full against the documentation page, the obligations, the cases and the parse trees of the parser at main 219a540d819f; every scored case agrees with its Snowflake receipt. Renews auditor-functions-009 after PR #104 made TRUNC's bare second argument a column."
25+
26+
[landing.fingerprints]
27+
"sf.functions.trunc2" = "72e473023df5ff4934ed80b76b11b1245ae8b965ae4ce31229b6a34cf574f3fb"
28+
29+
[landing.definitions]
30+
"sf.functions.trunc2" = "68b34fd700dad6b111c5dca54696c7c6142a83229072bcbe20e47ac55511b3f7"

0 commit comments

Comments
 (0)