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
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>
84 lines
1.7 KiB
JSON
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"
|
|
}
|
|
}
|
|
}
|
|
}
|