fix(coding-agent): label skill diagnostics as [Skill warnings] (#11566)

At startup, interactive mode printed every skill diagnostic under the
heading `[Skill conflicts]`. Most of these are validation warnings for
skills that still load, for example `description exceeds 1024 characters
(1508)` or name-format warnings. The heading made them look like name
collisions.

This change renames the heading to `[Skill warnings]`. Validation and
loading behavior are unchanged. The prompt and theme headings are left
as they are.

**Testing**
- Updated the assertion in
`packages/coding-agent/test/interactive-mode-status.test.ts` ("still
shows diagnostics on quiet startup when requested") to expect `[Skill
warnings]`. It fails against the old heading and passes with the change.
All 37 tests in that file pass.
- `npm run check` reports six type errors in `packages/ai` tests about
model IDs. Unchanged `origin/main` reports the same six errors, so they
are unrelated to this change. It reports nothing in `coding-agent`.

Fixes #11521

Requested by @davidbrai

Co-authored-by: triagent <triagent@localhost>
This commit is contained in:
robopipi[bot] 2026-10-29 14:25:50 +01:00 • committed by GitHub
parent 0c3675e647
commit f14813e965
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 2 additions and 2 deletions

View file

@ -2025,7 +2025,7 @@ export class InteractiveMode {
if (skillDiagnostics.length > 0) {
const warningLines = () => this.formatDiagnostics(skillDiagnostics, sourceInfos);
this.loadedResourcesContainer.addChild(
new ThemedText(() => `${theme.fg("warning", "[Skill conflicts]")}\n${warningLines()}`, 0, 0),
new ThemedText(() => `${theme.fg("warning", "[Skill warnings]")}\n${warningLines()}`, 0, 0),
);
this.loadedResourcesContainer.addChild(new Spacer(1));
}

View file

@ -1366,7 +1366,7 @@ describe("InteractiveMode.showLoadedResources", () => {
});
const output = renderAll(fakeThis.loadedResourcesContainer);
expect(output).toContain("[Skill conflicts]");
expect(output).toContain("[Skill warnings]");
expect(output).not.toContain("[Skills]");
});
});