{"version":"2.1.281","anchor":"smaller-fixes","canonical_anchor":"smaller-fixes","heading":"Smaller fixes","tier":"internal","area":"Build","url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281\/e\/smaller-fixes","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281","markdown":"### Smaller fixes\n\nA batch of small fixes, including a stricter symlink check, PDF extraction that stops when cancelled, and the version bump to 2.1.281\n\n**What**\n\nThis release collects several small changes:\n\n- Output path check: a symlink is a file that points to another location. When output files are moved to a new location, a path is now rejected if its chain of symlinks is too long to check (\"output path has a symlink chain too long to vet\").\n\n- Settings list: it now uses a shared \"more below\" indicator.\n\n- Early input capture: this now skips Remote Control invocations.\n\n- Agents view: it now passes `settingSources`.\n\n- OAuth sign-in: saving the login now records `lastOwnSavedAccessToken`.\n\n- Settings-schema prompt: `attribution` is flattened.\n\n- Text blocks: escaping `<` now works across neighbouring blocks.\n\n- PDF text extraction: it now stops when the request is cancelled.\n\n- Workflow results: `summary` and `workflowName` are kept only when they are text.\n\n- Windows: the `where.exe` lookup reads SYSTEMROOT through a helper.\n\n- .gitattributes check: it now tests one path.\n\n- Plugin hints: hint resolution passes \"install\".\n\n- Version: bumped to 2.1.281.\n\n**Why**\n\nEach change is minor. The symlink check means some output paths that used to go through are now refused with that message. The PDF change means cancelling a request also stops text extraction that is already running.\n\n- Area: Build\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 1\/5"}