docs(skills): name the selector keys that still substring match

This commit is contained in:
pj committed 2026-08-15 22:56:28 +05:30
1 parent ac4846bf55
commit d79fb3f2d6
1 file changed
+8 -3
+8 -3
View File
@@ -84,9 +84,14 @@ one named `Travel12` with 5 can both render `TRTravel125 transactions`. No
function of that string can separate them.
**Match whole keys, not endings or substrings.** `endsWith` attribution judges an
older account named `Emergency Fund` when the user typed `Fund`. Substring
matching is looser still: `{id: "Sub"}` matching `AddAccountSubmit` is not a
match, it is a coincidence.
older account named `Emergency Fund` when the user typed `Fund`.
Selector matching has the same trap and it is easy to miss which keys carry it.
`id`, `text`, `desc` and `descPrefix` resolve by their own rules, so `{id: "Sub"}`
correctly matches nothing. Every other key, `testTag` included, falls through to a
substring compare, so `{testTag: "Sub"}` matches `AddAccountSubmit`. That is not a
match, it is a coincidence, and a property built on it judges whichever element
happens to contain the fragment.
**Drop the carrier when the screen changes.** A value carried across a route
change is a value read from a screen that is no longer there.