## Linked issue
n/a — small change; no Linear ticket.
## At a glance
```text
Expected one of: now() | uuid()
```
Previously, both alternatives were labelled `function call`.
## Summary
Include the pinned function name in attribute parsing errors so users
can identify the accepted calls.
## Decision
Use `${name}()` as the `funcCall` label. `oneOf` already aggregates
alternative labels, so it needs no changes.
## How it fits together
1. Each function-call combinator labels itself with its expected callee.
2. Failed alternatives produce the existing aggregate diagnostic with
those names.
3. A regression test checks that both `now()` and `uuid()` appear when
neither matches.
## Testing performed
- `pnpm build --filter=@internal/psl-parser...`
- `pnpm --filter @internal/psl-parser test` — 654 tests passed.
- `pnpm --filter @internal/psl-parser typecheck` — passed.
- `pnpm --filter @internal/psl-parser lint` — passed.
## Skill update
No update required: this improves diagnostic wording without changing
attribute syntax or authoring workflows.
## Checklist
- [x] All commits are signed off (`git commit -s`).
- [x] I read CONTRIBUTING.md and the change is scoped to one logical
concern.
- [x] Tests are updated.
- [ ] The PR title is in `TML-NNNN: <sentence-case title>` form —
omitted by request; no Linear ticket.
- [x] The Skill update section is filled in.
## Notes for the reviewer
Only combinator labels change; matching and argument parsing remain
unchanged.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved parser error messages for function-call alternatives by
displaying expected function names, such as `now()` and `uuid()`,
instead of a generic label.
- Improved syntax diagnostics for undeclared fields by highlighting the
precise field name causing the issue.
- **Tests**
- Added coverage to verify that failed alternatives are listed clearly
in aggregated diagnostics.
- Added coverage to confirm accurate diagnostic spans for undeclared
fields.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Signed-off-by: Steven McClankerton <tatarintsev@prisma.io>
Co-authored-by: Steven McClankerton <tatarintsev@prisma.io>