mirror of
https://github.com/kuhyx/testsAndMisc.git
synced 2026-11-11 21:14:01 +01:00
Grouped by the state each function touches rather than by size:
steam_requirements.sh 199 requirement parsing, scoring, and the hardware
detection that feeds it
steam_report.sh 156 the run loop and the cache it reads
steam_api.sh 124 library discovery, Steam and ProtonDB calls
steam_credentials.sh 103 credentials, usage text, presentation helpers
The grouping was forced by the SC2034 writer/reader rule, not chosen. Two
arrangements were discarded: detect_system alone in a lib writes the three
SYSTEM_* globals without reading them, and load_cache_map alone writes
CACHE_MAP without reading it. Both were fixed by putting the writer next to
its reader - detect_system beside score_game, load_cache_map beside main.
Verified: all 33 functions verbatim; every lib passes shellcheck standalone
with no suppression; and the script actually runs - `--help` prints the usage
block and exits 0, which is what proves the four source lines resolve and
main still dispatches.
Over-cap files 26 -> 25.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011w2Pj4Ek3ZNMQVYcFHgXDY
17 lines
1.1 KiB
JSON
17 lines
1.1 KiB
JSON
{
|
|
"title": "Split steam_compatibility.sh 663 -> 140 + four libraries",
|
|
"objective": "steam_compatibility.sh is over the 250-line cap with no deployed copy. Split it into an entry script plus libraries grouped by the state each touches, so that no file assigns a global it never reads - the SC2034 constraint that decides where a shell seam can fall in this repo.",
|
|
"acceptance_criteria": [
|
|
"All five resulting files are under 250 lines; the over-cap total falls 26 -> 25",
|
|
"All 33 top-level functions are verbatim",
|
|
"Every library passes shellcheck standalone with no suppression",
|
|
"The script runs: --help prints usage and exits 0 through the split source graph"
|
|
],
|
|
"out_of_scope": [
|
|
"The API paths, which need Steam credentials and a network round-trip",
|
|
"libre_translate.sh and diagnose_pacman_hook_stall.sh, both parked",
|
|
"The phone_focus_mode scripts and the pacman-wrapper pair"
|
|
],
|
|
"verifier": "bash meta/scripts/verify_shell_split.sh for the verbatim claim; bash steam_compatibility.sh --help for the runtime claim; shellcheck standalone on each library; bash ~/utils/scripts/check_file_length.sh --all."
|
|
}
|