ποΈ Technical Due Diligence β Midshift
ποΈ Technical Due Diligence β Midshift
Key
| Rating | Severity | Status |
|---|---|---|
| π’ Green β 4 to 5 | π΄ Critical | β Yes |
| π‘ Amber β 3 | π High | β No |
| π΄ Red β 1 to 2 | π‘ Medium | β Partial |
| βββββ β score out of 5 | βͺ Low |
Assessment of the midshift-audit repository (single commit 3789df6, "Midshift source for audit", 2026-10-06), carried out 2026-10-07. Start with the executive summary.
π΄ βββββ Overall: 2 / 5 β Red (as delivered); 3 / 5 Amber once the two Critical S-effort fixes are deployed and verified.
| File | Module | Rating | RAG | Top risk |
|---|---|---|---|---|
| 14-executive-summary.md | Executive Summary & Overall Assessment | βββββ 2 / 5 | π΄ Red | Self-promotion to admin via users RLS policy π΄ (Critical) |
| 01-product-overview.md | Product & Domain Overview | βββββ 4 / 5 | π’ Green | Single-tenant deployment model limits a SaaS scale thesis π (High if that is the thesis) |
| 02-tech-stack.md | Technology Stack & Codebase Complexity | βββββ 3 / 5 | π‘ Amber | Next.js exact-pinned at 16.2.0 with critical advisories π΄ (Critical) |
| 03-architecture.md | Architecture & Design | βββββ 3 / 5 | π‘ Amber | Browser-side writes bypass server-side discipline and approval-reset rules π (High) |
| 04-domain-and-business-rules.md | Domain Model & Business Rules | βββββ 3 / 5 | π‘ Amber | Approvals can be left standing or self-granted within a job π (High) |
| 05-code-quality.md | Code Quality & Standards | βββββ 4 / 5 | π’ Green | Complex core write paths with ~1% API test coverage π (High) |
| 06-technical-debt.md | Technical Debt & Maintainability | βββββ 3 / 5 | π‘ Amber | Riskiest code (auth, fat handlers) is the least tested π (High) |
| 07-testing.md | Testing & QA | βββββ 3 / 5 | π‘ Amber | Routes untested against the real implementation; harness re-implements auth π (High) |
| 08-dependencies-licensing.md | Dependencies & Licensing | βββββ 2 / 5 | π΄ Red | Critical Next.js RCE on a used code path; abandoned xlsx parsing uploads π΄ (Critical) |
| 09-security.md | Security & DevSecOps | βββββ 2 / 5 | π΄ Red | Any signed-in user can set their own role to admin π΄ (Critical) |
| 10-dev-practices.md | Source Control, CI/CD & Development Practices | βββββ 3 / 5 | π‘ Amber | No evidenced code review; no security scanning in CI π (High) |
| 11-delivery-and-key-person-risk.md | Delivery Metrics & Key-Person Risk | βββββ 1 / 5 | π΄ Red | Bus factor of one across code, operations and IP π΄ (Critical) |
| 12-documentation.md | Documentation Review | βββββ 3 / 5 | π‘ Amber | Fresh-deployment migration instructions are wrong π (High) |
| 13-integrations.md | Integrations | βββββ 3 / 5 | π‘ Amber | No monitoring; missing CRON_SECRET silently disables purge and alerts π (High) |
Evidence conventions: [Observed] verified with a cited file or command; [Inferred] reasoned from indirect evidence; [Unavailable] could not be assessed, with the access needed. The consolidated access-request list is in the executive summary.