Commit Graph

65 Commits

Author SHA1 Message Date
1ffb47bacd Add physics model unit tests
Test dataclass creation, immutability, equality, and hashability for
ThermalState and ElectricalState. Also test PhysicsEngine stub methods.
2025-02-27 21:23:36 +00:00
1f72290744 Rename models.py to state.py to avoid conflict with models/ directory
The models.py file conflicts with the models/ subdirectory when
importing. Renamed to state.py for clarity.
2025-02-27 19:02:42 +00:00
54ea9c0a56 Add physics engine stub
Define PhysicsEngine class with stub methods for thermal-electrical
simulation. Methods return placeholder values; full implementation
will be added in Sprint 3.
2025-02-20 18:59:24 +00:00
7937dbf079 Add DUT model protocol
Define the DUTModel Protocol interface that all device models must
implement to integrate with the physics engine.
2025-02-20 18:53:40 +00:00
842ff09431 Add physics state dataclasses
Define frozen dataclasses for ThermalState and ElectricalState to
represent immutable simulation state snapshots.
2025-02-15 19:51:02 +00:00
ed2515bca7 Restructure package for domain-driven design
Reorganise package structure to improve separation of concerns:
- instruments/ - SCPI, transport, drivers, interfaces, factory
- simulation/ - physics engine, virtual instruments, server
- framework/ - test runner, logger, limits, context
- tests/ - thermal/, electrical/ (DVT test implementations)
- data/ - repository, models
- reporting/ - generator, templates
- app/ - CLI, config, dashboard

This structure enables:
- Reusable instruments package for other test suites
- Clear separation of simulation (dev) vs production code
- Domain-focused package organisation

Updated documentation to reflect new paths.
2025-02-10 12:06:22 +00:00
154352e92f Release v0.0.1
Some checks failed
CI / Lint (push) Failing after 3s
CI / Type Check (push) Successful in 7s
CI / Test (push) Failing after 6s
CI / Release (push) Has been skipped
2025-02-08 14:48:21 +00:00
5cb8794db8 Add CLI entry point with version command 2025-02-05 19:21:17 +00:00
66ea201f07 Configure development tooling (ruff, mypy, pytest) 2025-02-03 20:00:48 +00:00
8eb2bbc7d5 Add package directory structure 2025-02-01 17:28:37 +00:00
80ad6db5e8 Add pyproject.toml with core dependencies 2025-01-29 10:12:45 +00:00
54c87c5ee7 Add versioning strategy and CI/CD pipeline
- Add semantic versioning section to development plan
- Map sprint milestones to version tags
- Create Gitea Actions CI workflow (lint, typecheck, test, release)
- Add CHANGELOG.md following Keep a Changelog format
2025-01-23 12:27:02 +00:00
d920fd8c24 Update development plan with vertical slice approach
- Reorder sprints for visual-first development
- Dashboard (Sprint 4) now follows Physics Engine (Sprint 3)
- Infrastructure layers (SCPI, TCP, HAL) follow visual demo
- Update project references to py-dvt-ate
2025-01-22 12:14:32 +00:00
a60fb4c2b7 docs: add iterative development plan for Phase 1
- Break Phase 1 into 25 sprints with atomic tasks
- Define stub-first approach for manageable complexity
- Specify commit messages for each task
- Include LLM optimisation notes for context management
2025-01-17 13:06:43 +00:00
2ca5144eaf Initial project setup with documentation
- Add project requirements document (01_requirements.md)
- Add technical specification (02_technical_specification.md)
- Add architecture decisions (03_architecture_decisions.md)
- Add README with project overview
- Add .gitignore for Python projects
2025-01-15 10:17:15 +00:00