Two bugs caused taskitems to emit constcad/README.md and hivemind/README.md
as targetFiles regardless of workspace:
1. Negation blindness: acceptance criteria like "no constcad, no hivemind
paths" were being parsed as cross-project repo signals. Added
isPrecededByNegation() helper and skip acceptance-criteria anchor entirely
in the repo signal scan — those sections describe what to check, not what
to target.
2. Wrong fallback order: cross-project targets were tried before workspace
targets. Swapped the order so inferWorkspaceTaskTargets and
inferWorkspaceFallbackTargets run first; cross-project is now last resort
only when the workspace itself has nothing.
Verified: sprint 02 whimptk taskitem run now emits correct whimptk-local
paths (include/whimptk/InterfaceRequirements.h, src/InterfaceRequirements.cpp,
etc.) with 0 escalations and executionSpecificityScore 75-90.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>