1.4 KiB
1.4 KiB
Step 9: legacy-definition-compatibility
Read First
Read these files before editing:
/AGENTS.md/docs/AGENT_RULES.md/docs/ARCHITECTURE.md/docs/implementation-plans/analysis-model-objects-implementation-plan.md/include/fesa/core/Domain.hpp/tests/core/domain_storage_test.cpp/tests/core/domain_model_object_test.cpp
Task
Preserve and document compatibility between existing *Definition value objects and new model-object base classes.
Allowed files:
- Modify
/docs/implementation-plans/analysis-model-objects-implementation-plan.md - Modify tests only if compatibility gaps are found
- Modify production code only for narrow compatibility fixes
Required behavior:
- Existing Domain definition-storage tests still pass.
- New model-object ownership tests still pass.
- The implementation plan clearly states that
*Definitionobjects remain parser/factory DTOs until the parser phase decides whether to map or replace them.
Tests To Write First
If production code must change, write or extend a failing C++ test before the change. If this is documentation-only, do not add production code.
Acceptance Criteria
Run:
python scripts/validate_workspace.py
ctest --test-dir build/msvc-debug --output-on-failure -C Debug -R "domain|model-object"
Update step 9 status.
Do Not
- Do not delete existing
*Definitionheaders or tests. - Do not rewrite parser or factory behavior.