docs(build): document dependency package setup
This commit is contained in:
@@ -251,9 +251,11 @@ git commit -m "build: bootstrap FESA CMake project"
|
||||
- Create: `include/fesa/core/vec3.hpp`
|
||||
- Create: `include/fesa/core/source_location.hpp`
|
||||
- Create: `include/fesa/core/diagnostic.hpp`
|
||||
- Create: `include/fesa/core/status.hpp`
|
||||
- Create: `tests/unit/core/entity_id_test.cpp`
|
||||
- Create: `tests/unit/core/vec3_test.cpp`
|
||||
- Create: `tests/unit/core/diagnostic_test.cpp`
|
||||
- Create: `tests/unit/core/status_test.cpp`
|
||||
- Modify: `CMakeLists.txt`
|
||||
- Modify: `tests/CMakeLists.txt`
|
||||
|
||||
@@ -283,21 +285,28 @@ struct SourceLocation final {
|
||||
};
|
||||
|
||||
enum class DiagnosticStage {
|
||||
io, lexical, syntax, semantic, model, equation, solver, results
|
||||
io, syntax, semantic, model, equation, solver, results, validation
|
||||
};
|
||||
|
||||
enum class Severity { warning, error };
|
||||
|
||||
struct Diagnostic final {
|
||||
DiagnosticStage stage;
|
||||
Severity severity;
|
||||
std::string code;
|
||||
std::string message;
|
||||
std::optional<SourceLocation> source;
|
||||
std::optional<std::int64_t> entity_id;
|
||||
};
|
||||
|
||||
struct Status final {
|
||||
bool succeeded;
|
||||
std::vector<Diagnostic> diagnostics;
|
||||
};
|
||||
```
|
||||
|
||||
- [ ] **Step 1: Write failing tests**
|
||||
|
||||
Cover negative/zero entity-ID rejection, typed-ID non-interchangeability at compile time, finite `Vec3` validation, and full diagnostic context preservation.
|
||||
Cover negative entity-ID rejection, typed-ID non-interchangeability at compile time, finite `Vec3` validation, full diagnostic context preservation, and success/failure status preservation.
|
||||
|
||||
- [ ] **Step 2: Run focused tests and confirm compile or assertion failure**
|
||||
|
||||
|
||||
Reference in New Issue
Block a user