fix: match .yml as well as .yaml in the four sites that discover YAML files - #1741
Open
elhoim wants to merge 4 commits into
Open
fix: match .yml as well as .yaml in the four sites that discover YAML files#1741elhoim wants to merge 4 commits into
elhoim wants to merge 4 commits into
Conversation
listSuites() reads Suites/{Capability,Regression}/, which includes the user's
own suites. A suite saved as .yml was silently absent from every listing with
no error to explain it. The writers in this skill all emit .yaml, so this only
ever affected hand-authored files — which is exactly where the surprise lands.
resolveSuite() searched USER_SUITES as well as the shipped directory, but only for .yaml. A user suite written as .yml returned null, which runSuite turns into a soft "Suite not found" result rather than a throw — so the run reported a missing suite for a file sitting right there. .yaml is still tried first, so precedence is unchanged where both exist.
The scan already accepted .yaml there. A policy file written as .yml dropped out of the doc check silently, which reads as "checked and clean" rather than "never looked at".
The expanded specs include user-authored data directories (HEALTH/, FINANCES/, BUSINESS/, LOCAL/). A .yml file there was invisible to freshness, so a tab could report stale while the file the user had just edited was the newest thing in it.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
4 commits, one per fix, so each can be cherry-picked independently. Each was verified to apply cleanly onto
47df8eeby itself.343bfca05d865853fdad92fef266Four places that discover YAML files matched only
.yaml, so a file written as.ymlwas skipped in silence. Nothing is broken in the shipped tree — every writer in the codebase emits.yaml— so this only affects hand-authored files, which is where a silent skip is least expected and hardest to diagnose.The two Evals sites are the ones that matter. Both search the user's own suites directory, and both fail quietly:
343bfca—skills/Evals/Tools/SuiteManager.ts:94.listSuites()walksSuites/{Capability,Regression}/. A.ymlsuite simply never appeared, with no error.05d8658—skills/Evals/Tools/EvalRunner.ts:85.resolveSuite()searchedUSER_SUITESandSKILL_SUITESfor.yamlonly, returnednull, andrunSuiteturns that into a soft"Suite not found"result rather than a throw — so the run reported a missing suite for a file sitting right there..yamlis still tried first, so precedence is unchanged if both ever exist.The other two are lower risk but the same shape:
53fdad9—LIFEOS/TOOLS/DocCheck.ts:167. Already accepted.yamlinUSER/SECURITY/; a.ymlpolicy file dropped out of the doc check, which reads as "checked and clean" rather than "never looked at".2fef266—PULSE/modules/tab-freshness.ts:171. The expanded specs include user-authored data directories (HEALTH/,FINANCES/,BUSINESS/,LOCAL/), so a.ymlthere was invisible to freshness and a tab could report stale while the newest file in it was the one just edited.Five sibling sites already handle both and were left alone:
DocCrossRefIntegrity.ts:196,210,RebuildArchSummary.ts:59,InstallEngine.ts:339,ReferenceCheck.ts:301,CrossVendorAudit.ts:183. This change brings the remaining four in line with them rather than introducing a new convention.Testing. Both Evals fixes were verified with a real before/after, by dropping a
ymltest.ymlsuite intoSuites/Regression/in each tree and running the actual functions:The probe files were removed afterwards; the diff is the four one-line changes only. All four touched files transpile clean under
bun build --no-bundle.Note on overlap. #1739 also touches
EvalRunner.ts, inrunSuitearound lines 113 and 146. This change is inresolveSuiteat line 85, so the two do not collide, but they are worth porting in either order rather than concurrently.