canyener/social-me-die
43.6
Weak · 21 September 2026
646
lines of production code
C#
primary language
4
measurements over time
What this system is
Features
Adds activity management commands and queries with validation and error handling
Introduces new application-layer handlers for managing activities, including Create, Edit, Delete, Details, and List operations. Each command includes FluentValidation rules to ensure required fields (Title, Description, Category, Date, City, Venue) are not empty. A custom RestException class is added to the Application/Errors namespace to handle HTTP status codes and error details, which are now used in the Delete and Details handlers to return 404 Not Found responses when an activity is missing.
src/Application · high confidence
Initial domain, persistence, and database migration setup
The project structure has been reorganized with all source code moved into a new \src\ directory. This change introduces the core domain models (\Activity\ and \Value\), the Entity Framework \DataContext\ for database interactions, and the initial set of database migrations. Additionally, a \Seed\ class is provided to populate the database with sample activity data upon initialization.
src, src/Domain, src/Persistence · medium confidence
Behavioural changes
Introduces RESTful API endpoints and global error handling
The API now exposes standard RESTful endpoints for managing activities (List, Details, Create, Edit, Delete) and provides a generic values controller. A new ErrorHandlingMiddleware has been added to the request pipeline to catch unhandled exceptions and return consistent JSON error responses. Additionally, FluentValidation is configured to automatically validate incoming requests.
src/API · high confidence
Dependencies
Upgrade to .NET Core 3.1 and EF Core 5.0.11
The project dependencies have been updated to use Microsoft Entity Framework Core 5.0.11 and its SQLite provider, along with FluentValidation.AspNetCore 10.4.0 and MediatR 10.0.1. All affected components now target the .NET Core 3.1 runtime.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 47 → 44 (-3.0)
- Rubric changed (rubric-2026.08.18 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 69 → 69 (+0.2)
- Architecture 77 → 77 (+0.0)
- Maturity 40 → 40 (+0.0)
- Readiness 44 → 39 (-4.2)
- Security 53 → 40 (-12.6)
Resolved (8)
- Duplicated block (6 lines × 2) (src/Application/Activities/Create.cs)
- High: security finding (details withheld)
- High: security finding (details withheld)
- No exposed public API
- dormant codebase — no living knowledge left to concentrate
- redundant comment (src/API/Controllers/ValuesController.cs)
- redundant comment (src/API/Controllers/ValuesController.cs)
- redundant comment (src/API/Startup.cs)
New (18)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (8 lines × 2) (src/Application/Activities/Create.cs)
- Duplicated block (8–10 lines × 2) (src/Application/Activities/Create.cs)
- Duplicated block (9 lines × 2) (src/Application/Activities/Create.cs)
- End-of-life runtime: .NET netcoreapp3.1
- High: security finding (details withheld)
- High: security finding (details withheld)
- Inconsistent naming of activity operation types: 'Details', 'Edit', 'Delete', 'Create', and 'List' are used. 'Details' is a noun describing the state, while 'Edit', 'Delete', 'Create', and 'List' are verbs (or gerunds) describing the action. This mixes nouns and verbs in the same namespace for similar concepts.
- Inconsistent suffix usage for CQRS request types: 'Details' and 'List' use the suffix 'Query', while 'Create', 'Edit', and 'Delete' use the suffix 'Command'. While this reflects the CQRS pattern (Query vs Command), the naming convention for the 'Details' and 'List' operations is inconsistent with the rest of the codebase which standardizes on 'Command' for all write operations and potentially 'Query' for all read operations, but here 'Details' and 'List' are the only ones explicitly named as Queries. More critically, if 'Details' and 'List' are read operations, they should consistently be named 'Query' (or 'Request'), but if the convention is to name the DTO after the action, 'Details' and 'List' should arguably be 'DetailsRequest' and 'ListRequest' or simply 'Details' and 'List' without the 'Query' suffix to match the brevity of 'Command'. However, the most glaring inconsistency is that 'Details' and 'List' are the only types using the 'Query' suffix, whereas all others use 'Command'. This suggests a lack of uniform naming for the request DTOs.
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- No dependency advisory monitoring
- Workflow token permissions not restricted
- misleading comment (src/API/Controllers/ValuesController.cs)
- misleading comment (src/API/Controllers/ValuesController.cs)
- redundant comment (src/API/Controllers/ValuesController.cs)
API surface
- Unchanged — 10 HTTP endpoints
Architecture
- Unchanged — 2 containers · 0 contexts · 0 edges
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
canyener/social-me-die was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 21 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 5cc7fc34fb639c0c3f7267fc57535c2c26c1249e — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-28e75b8e3254.