AGENTS.md
Guidance for coding agents working on AlexandrAI Tools Angle Converter in the alexandrai-tools project.
Project overview
This guide covers src/tools/angle-converter/index.ts. The tool converts deg, rad, grad, and turn through a degree factor table, returns same-unit values unchanged, and rounds converted results to eight significant figures.
Primary source files
- src/tools/angle-converter/index.ts defines meta, UNITS, AngleUnit, TO_DEG, sigFig, and convert.
- src/tools/angle-converter/index.test.ts covers degrees to radians, turns to degrees, gradians to degrees, turns to radians, degrees to gradians, zero, and identity conversion.
- src/tools/angle-converter/Body.astro owns browser controls.
- src/tools/angle-converter/i18n.ts owns localized copy.
- src/lib/tools.ts registers metadata.
Setup commands
npm install npm test npm run typecheck npm run build npm run dev
Change rules
- Use degrees as the base unit.
- Keep radians as 180 divided by Math.PI degrees.
- Keep gradians as 0.9 degrees.
- Keep one turn as 360 degrees.
- Round converted results to eight significant figures.
- Return same-unit values unchanged.
- If degree-minute-second support is added, keep it separate from decimal angle conversion.
Testing
Test 180 deg to pi rad, 1 turn to 360 deg, 400 grad to 360 deg, 1 turn to 2 pi rad, 90 deg to 100 grad, identity conversion, zero, negative angles, and sigFig behavior for small radian values.
PR checklist
- npm test passes for angle-converter.
- Unit constants, lookup tables, and rounding rules are covered by tests.
- Same-unit and invalid-input behavior remain documented.
- UI labels, metadata, and pure conversion logic stay in sync.