Skip to content

chore: run maintenance checklist (012-maintenance)#508

Merged
chaliy merged 2 commits intomainfrom
claude/run-maintenance-GNxe4
Mar 4, 2026
Merged

chore: run maintenance checklist (012-maintenance)#508
chaliy merged 2 commits intomainfrom
claude/run-maintenance-GNxe4

Conversation

@chaliy
Copy link
Contributor

@chaliy chaliy commented Mar 4, 2026

Summary

  • fix(parser): Prevent panic on single digit at EOF in lexer — fuzz crash regression from parser_fuzz (crash-13c5f6f8)
  • fix(arithmetic): Handle base 37-64 without from_str_radix panic — fuzz crash regression from arithmetic_fuzz (crash-802347e7). Adds proper parse_base_n for bash's extended charset (0-9, a-z, A-Z, @, _)
  • fix(test): Increase ASan timeout bound from 30s to 300s for threat_cpu_exhaustion_timeout nightly test (was taking 213s under ASan)
  • docs(threat-model): Sync public threat model — mark TM-INF-013 (jq env leak) and TM-INF-014 (PID leak) as FIXED
  • chore(deny): Remove stale RUSTSEC-2023-0089 advisory exemption
  • chore(specs): Add missing ## Status sections to 8 spec files

Test plan

  • Regression test: test_digit_at_eof_no_panic (lexer crash)
  • Regression test: test_arithmetic_base_gt_36_no_panic (arithmetic crash)
  • Positive tests: test_arithmetic_base_gt_36_special_chars (@ = 62, _ = 63)
  • Negative test: test_arithmetic_base_gt_36_invalid_digit
  • just pre-pr passes (fmt, clippy, tests, vet)
  • All 5 examples compile
  • Smoke tested via CLI: 64#A = 36
  • cargo deny check passes
  • cargo audit — no CVEs (3 unmaintained transitive dep warnings)

claude added 2 commits March 4, 2026 02:54
Fixes found during pre-release maintenance:

- fix(parser): prevent panic on single digit at EOF in lexer (fuzz crash)
- fix(arithmetic): handle base 37-64 without from_str_radix panic (fuzz crash)
- fix(test): increase ASan timeout bound from 30s to 300s for nightly CI
- docs(threat-model): sync TM-INF-013 and TM-INF-014 status to FIXED
- chore(deny): remove stale RUSTSEC-2023-0089 exemption
- chore(specs): add missing Status sections to 8 spec files

Maintenance results:
- Dependencies: all up to date, no CVEs, vet passes
- Tests: all pass (including regression tests for fuzz crashes)
- Examples: all 5 compile successfully
- Code quality: fmt + clippy clean
- Nightly CI: 2 crashes fixed (parser_fuzz, arithmetic_fuzz), timeout fixed

https://claude.ai/code/session_01JPAxQo3fiXXFzFHu1SzRuG
Cover positive and negative paths: correct values for 64#A, 64#@, 64#_,
and invalid digit for base 37.

https://claude.ai/code/session_01JPAxQo3fiXXFzFHu1SzRuG
@chaliy chaliy merged commit c4f7a73 into main Mar 4, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants