一键导入
htcc-parser-regression-workflow
Fix htcc parser regressions with focused component tests, malformed-input QA, and nontermination safeguards.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Fix htcc parser regressions with focused component tests, malformed-input QA, and nontermination safeguards.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Keep htcc CI workflows aligned with the test runner command matrix, especially explicit self/components/subp/docker lists.
Work safely on htcc output replacement, fallback copy, file mode preservation, rollback, symlink, and hard-link behavior.
Handle htcc review comments end-to-end: reproduce, judge validity, apply minimal fixes, verify, review, and prepare commit/push.
Choose and run the correct htcc verification commands for parser, CLI, CI, output permission, Docker, and documentation changes.
Expert Haskell engineer specializing in advanced type systems, pure
| name | htcc-parser-regression-workflow |
| description | Fix htcc parser regressions with focused component tests, malformed-input QA, and nontermination safeguards. |
| risk | safe |
| source | project |
| date_added | 2026-05-18 |
src/Htcc/Parser/** or parser-facing code in app/Main.hs.ATEmpty, manyTill, EOF, Megaparsec, scope restoration, declarations, initializers, or implicit calls.M.many, M.manyTill, M.option, ATEmpty, M.eof, M.try.ATEmpty intentionally.test/Tests/ComponentsTests/Parser/Combinators.hs before adding new helpers.test/Tests/ComponentsTests/Parser/Combinators.hs when direct parseProgram, parseAssignExpr, or helper assertions can reproduce the bug.Parser.Program.* group matching the construct, such as function-call, scalar-initializer, or function-pointer-arithmetic.f(1,) are malformed. For initializer lists, check existing accepted C-like trailing-comma behavior before turning a trailing comma into a rejection.int g =, int g = {1, and int main(){ int x =.manyTill must have a timeout-guarded manual QA command, for example:printf 'int main(){ return f(' | timeout 5s stack exec htcc -- /dev/stdin
timeout or gtimeout, whichever exists on the host, and report the command used.ATEmpty.stylish-haskell -i <all changed .hs files, including app/Main.hs when touched> test/Tests/ComponentsTests/Parser/Combinators.hslsp_diagnostics on edited Haskell files when the diagnostics tool is available. If unavailable, state that and substitute stack build plus the relevant test command.stack test --test-arguments components.stack test for parser-wide behavior or when the change affects common expression/statement parsing.stack build.for sections?