`WFImplementation.js:102` has a defensive guard:
``` lang=js
// TODO (T413840): Determine why this happens; it appears to be due
// to some of the list resolution short-circuiting code interacting
// negatively with list types.
if ( !( fullType instanceof WFBase ) ) {
return fullType;
}
```
The branch is reached in practice but the root cause is undocumented. This is investigation work, not a bug fix; the outcome is either a real fix to the upstream short-circuit or a written invariant explaining why the fallback is correct.
TODO:
[x] deploy current fix
[ ] monitor for another week to see if the offending logs reappears;
[ ] if so, continue to diagnose and fix; if not, remove the guarded bit of code and logs
Desired behavior/Acceptance criteria
- Identify which call path produces a non-WFBase `fullType` here. Likely candidates: typed-list resolution in `WFList`, the Z8K2 resolution path in `WFCodeImpl.evaluate`.
- Either fix the producer so this branch is unreachable and remove the guard, or document the invariant in a comment that replaces the TODO.
- All existing tests pass; if a real bug is found, add a regression test.