Repository navigation
Optical Design 3.0.0
Learn with a measured lens walkthrough, inspect prescriptions with explicit import limits, and produce reviews whose acceptance and saved-candidate evidence agree.
Highlights
- Guided Cooke-triplet focus walkthrough: preserved source, bounded optimization, all configured fields and wavelengths measured after save/reload, and before/after plots with matching scales.
- Correct back focal length, separate image distance, and clearer paraxial metric definitions.
- Shared import assessment and numerical rejection of unconverted non-mm prescriptions.
- Consistent recipe/report schema with requirement checks, explicit evidence states, and complete metric-bound reload checks.
- Safer managed installation lifecycle: normal Python caches no longer block updates, one intact backup retained, and ownership-checked backup pruning.
- Explicit engine diagnostics, beginner prompts, corrected optical references, and evaluation rubrics excluded from installations.
Migration from 2.0.0
This is a major release because public metric semantics and report validation change.
- If you previously used
bfl_mmas detector spacing, readimage_distance_mminstead.back_focal_length_mmand the correctedbfl_mmalias now measure paraxial back focus from the last optical vertex. - Gate inputs must be finite numeric requirements; a tolerance requires a target.
- Reloaded review evidence must uniquely cover every displayed metric, match its name/conditions/units, and agree with the reported value.
- Repository development evaluations moved to
evals/and are excluded from installed packages.
Full migration notes · Changelog
Try it
npx optical-design@3.0.0 install --agent codex
npx optical-design@3.0.0 walkthrough --out my-first-lensSupported destinations: Claude Code, Codex, Cursor, OpenCode, and Hermes. Node.js 22+ and uv are required; the walkthrough fetches Python and pinned Optiland dependencies on first use.
Verification and scope
Local verification: 941 portable Python tests and 56 Node tests passed, with platform/native exclusions documented. Package lifecycle checks exercise all five installation destinations; the installed calculator and walkthrough preserve project outputs through update/uninstall. The packed audited demo passes.
Cross-platform CI results are attached to the release commit. No new native engine certification, cross-model uplift, or beginner participant study is claimed.
The npm archive is attached with SHA-256 checksums. Previous releases remain available for explicitly pinned workflows.
Post-publication verification: npm latest resolves to 3.0.0 and its archive matches the GitHub asset. The walkthrough fetched from npm preserved its source, passed all nine declared field/wavelength requirements, and improved worst sampled RMS spot radius from 85.03 to 18.76 µm after candidate save/reload.