singularity-forge/biome.json
Mikael Hugo 41276a7b7a
Some checks are pending
CI / detect-changes (push) Waiting to run
CI / docs-check (push) Blocked by required conditions
CI / lint (push) Blocked by required conditions
CI / build (push) Blocked by required conditions
CI / integration-tests (push) Blocked by required conditions
CI / windows-portability (push) Blocked by required conditions
CI / rtk-portability (linux, blacksmith-4vcpu-ubuntu-2404) (push) Blocked by required conditions
CI / rtk-portability (macos, macos-15) (push) Blocked by required conditions
CI / rtk-portability (windows, blacksmith-4vcpu-windows-2025) (push) Blocked by required conditions
feat(auto/loop): mid-loop self-feedback inline-fix dispatcher
Bootstrap drains the triage queue once at session_start (headless.ts:
647 "[headless] autonomous: draining self-feedback triage queue
first..."). Entries filed DURING the autonomous run previously sat
until the next sf restart — defeating the self-heal thesis for
long-running sessions like the 3-day dogfood the user is running now.

dispatchSelfFeedbackInlineFixIfNeeded already exists in the extension
(self-feedback-drain.js:277) and is wired into bootstrap/register-
hooks at session_start. It selects high/critical candidates, debounces
via a claim file (so concurrent invocations skip), and on the headless
surface spawns a child `sf headless triage --apply` fire-and-forget —
the autonomous loop continues unblocked while triage runs in a child.

Hook it into the auto-loop top-of-iteration so it fires every
MID_LOOP_TRIAGE_INTERVAL=5 iterations. The dispatcher's own claim-file
debounce prevents re-dispatch of in-flight entries; pre-bootstrap-
drained entries get re-evaluated only when something new shows up.

Also ignores scripts/tmp-check-test-imports in biome — the check-
test-imports.test.mjs self-test creates regression fixtures there and
they triggered formatter errors on dirty exits.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 00:50:03 +02:00

84 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",
"!!scripts/tmp-check-test-imports"
]
},
"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"
}
}
}
}