calcs/wood-joist/TASKS.md
smillmorel d5ac3fca7e Add structural calculation worksheets
Collection of engineering calculation projects (Python + Typst), each with
input, calc script, tests, results, and generated PDF where available.
2026-09-21 12:19:20 -04:00

2.1 KiB
Raw Permalink Blame History

Tasks: Wood Joist Analysis

Ordered, dependency-ordered plan. Each task has a spec in tasks/NNN_name.md.

# Task Files Status Depends on
001 Numerical core: calc.py + input.yaml + results.json calcs/wood-joist/calc.py, calcs/wood-joist/input.yaml, calcs/wood-joist/results.json DONE —
002 Numerical lock: test_wood_joist.py (compute() only) calcs/wood-joist/test_wood_joist.py DONE 001
003 Presentation: beam.typ + compile + Typst metadata test calcs/wood-joist/beam.typ, calcs/wood-joist/generated/wood-joist.pdf, calcs/wood-joist/test_wood_joist.py (append) DONE 001, 002
004 Documentation refresh: README.md + codemap.md README.md, codemap.md DONE 003
005 Reviewer pass on the whole calculation review notes only DONE 004
006 check_service + move load determination to Typst lib/sheet.typ, calcs/wood-joist/input.yaml, calcs/wood-joist/calc.py, calcs/wood-joist/beam.typ, calcs/wood-joist/results.json DONE 001–005
007 Test updates + Typst load-demand reconciliation calcs/wood-joist/test_wood_joist.py DONE 006
008 Docs refresh (README.md + codemap.md) + reviewer pass README.md, codemap.md DONE 006, 007

Notes

  • Task 001 is the numerical single source of truth; it pins every results.json value name and the exact equations. Tasks 002–005 depend on that contract.
  • The Typst metadata test (steel-beam query pattern) lives with Task 003 because it needs beam.typ to exist; Task 002 is purely numerical to keep the dependency graph acyclic.
  • generated/ may not exist yet; Task 003 creates it before compiling.
  • Tasks 006–008 implement the user-approved "move load determination to Typst" change. Task 006 changes the shared lib/sheet.typ (additive check_service only) and the wood-joist contract; Task 007 adapts the tests and adds the <wood-joist-loads> reconciliation test; Task 008 refreshes docs and runs the reviewer pass verifying deterministic benchmark evidence. The Pompano Beach benchmark values must stay identical.