Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Build a command-line program in MODERN C++ (e.g. a CSV summarizer, a unit converter, or an inventory tracker). Model data with classes/structs, store it in std::vector / std::unordered_map (never raw arrays), use std::string, and manage any owned resource with RAII / smart pointers — NO raw new/delete. Use const-correctness (pass big objects by const&), handle bad input gracefully, and build it with CMake. The point is idiomatic modern C++, not 'C with classes'.
STL containers + RAII/smart pointers; no raw new/delete; const-correct; nothing C-style where a modern idiom fits.
Compiles warning-free; bad input handled without crashing or UB; logic correct.
Sensible classes/functions; CMake build; readable, well-organized code.
No leaks/dangling (clean under a sanitizer if run); no undefined behavior.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# A modern C++ CLI tool ## Goal Build a command-line program in MODERN C++ (e.g. a CSV summarizer, a unit converter, or an inventory tracker). Model data with classes/structs, store it in std::vector / std::unordered_map (never raw arrays), use std::string, and manage any owned resource with RAII / smart pointers — NO raw new/delete. Use const-correctness (pass big objects by const&), handle bad input gracefully, and build it with CMake. The point is idiomatic modern C++, not 'C with classes'. ## Acceptance criteria - [ ] Modern idioms & RAII: STL containers + RAII/smart pointers; no raw new/delete; const-correct; nothing C-style where a modern idiom fits. - [ ] Correctness: Compiles warning-free; bad input handled without crashing or UB; logic correct. - [ ] Structure: Sensible classes/functions; CMake build; readable, well-organized code. - [ ] Safety: No leaks/dangling (clean under a sanitizer if run); no undefined behavior. ## Verification - [ ] Document installation and run commands. - [ ] Record automated checks and their exact commands. - [ ] Add representative output, screenshots, or a short demo where useful. - [ ] Confirm failure paths and known constraints. ## Decision log ### Decision title - Context: - Choice: - Alternatives considered: - Tradeoffs: ## Evidence - Link each rubric criterion to the file, test, or artifact that demonstrates it. ## Known limitations - List what is intentionally out of scope and what should be improved next.