singularity-forge/biome.json
Mikael Hugo f55d490e1d fix(subagent-runner): drop spurious 10s STUCK warning on session.prompt
The phaseWatchdog at 10s fired "STUCK phase=session.prompt" on every
healthy LLM call longer than 10 seconds. Verified via strace on the
running dogfood sf: bytes were actively flowing on the TLS socket
(fd 29) to the LLM provider while STUCK was being logged — the
session.prompt was never actually stuck, the watchdog was just
diagnostic-only and oblivious to stream activity.

The noOutputTimeoutMs watchdog (set to 60s for triage in commit
d80060fec) is the actual kill mechanism. It is already event-aware:
every meaningful subagent event resets the timer via armNoOutputTimer
+ isMeaningfulSubagentOutputEvent. The 10s STUCK warning was added
in commit 67e5ac9db as investigation infrastructure for the
sf-mp8e02m1-zpk903 family of bugs, but now it is just noise that
makes legitimate 30-200s LLM responses look broken.

Keeps the 10s STUCK watchdog for the three setup phases
(resourceLoader.reload, createAgentSession, bindExtensions) where
10s of silence is a real hang signal — those phases normally run in
sub-second.

Also includes:
- biome.json: bump $schema URL from 2.4.14 to 2.4.15 to match the
  current biome CLI (clears the deserialize warning)
- scripts/check-test-imports.{,test.}mjs: format + drop a useless
  regex escape that biome flagged in landed code

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-16 23:49:43 +02:00

83 lines
1.7 KiB
JSON

{
"$schema": "https://biomejs.dev/schemas/2.4.15/schema.json",
"vcs": {
"enabled": true,
"clientKind": "git",
"useIgnoreFile": true
},
"files": {
"includes": [
"**/*.{js,cjs,mjs,ts,tsx,json,jsonc,css,html}",
"!!.vtcode",
"!!.sf",
"!!.omg",
"!!**/dist",
"!!**/dist-test",
"!!**/rust-engine/npm",
"!!**/*.min.js",
"!!packages/coding-agent/src/core/export-html/template.css",
"!!src/resources/skills/create-sf-extension/templates"
]
},
"formatter": {
"enabled": true,
"indentStyle": "tab"
},
"linter": {
"enabled": true,
"rules": {
"recommended": true,
"correctness": {
"noUnreachable": "off",
"useExhaustiveDependencies": "off",
"noUnusedImports": "off",
"noUnusedVariables": "off",
"noUnusedFunctionParameters": "off"
},
"a11y": {
"noLabelWithoutControl": "off",
"noStaticElementInteractions": "off",
"noSvgWithoutTitle": "off",
"useAriaPropsSupportedByRole": "off",
"useKeyWithClickEvents": "off",
"useSemanticElements": "off"
},
"style": {
"noNonNullAssertion": "off",
"useTemplate": "off"
},
"suspicious": {
"noAssignInExpressions": "off",
"noArrayIndexKey": "off",
"noControlCharactersInRegex": "off",
"noDocumentCookie": "off",
"noDuplicateTestHooks": "off",
"noExplicitAny": "off",
"noImplicitAnyLet": "off",
"useIterableCallbackReturn": "off"
},
"complexity": {
"useLiteralKeys": "off",
"useOptionalChain": "off"
}
}
},
"javascript": {
"formatter": {
"quoteStyle": "double"
}
},
"css": {
"parser": {
"tailwindDirectives": true
}
},
"assist": {
"enabled": true,
"actions": {
"source": {
"organizeImports": "off"
}
}
}
}