Repository navigation
Commit 79a4f5e
committed
feat(lint): report an object-qualified FLS key naming a field the object does not declare
A permission set key like 'crm_account.description_nope' is stripped of its
object prefix by PermissionEvaluator.getFieldPermissions and the remainder is
looked up as a column, so a remainder no column answers to contributes nothing
to the merged permission map: the declared masking never enforces and the field
stays readable to every holder of the set. security-fls-unqualified-key caught
only the bare spelling; this adds security-fls-unknown-field beside it, without
touching it.
Existence resolves through object-graph.ts, the shared field index this package
already uses, so the rule inherits its three skips (object not in this stack,
no readable field map, registry-injected system columns) rather than deriving a
second opinion about what a field is.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012GKcPZbMoGq7WPzKLfRBTU1 parent c231a15 commit 79a4f5e
1 file changed
Lines changed: 15 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
0 commit comments