diff --git a/Home.md b/Home.md index ea78fbf..e647b53 100644 --- a/Home.md +++ b/Home.md @@ -1 +1,96 @@ -Willkommen im Wiki. \ No newline at end of file +# plate-auth + +> A reusable auth + multi-tenancy library for the **plate-software** app family. +> Spring Boot starter (backend) + npm package (frontend). One source of truth, every app consumes it. + +**Status:** Planning (Sprint 0 โ€” extraction from InspectFlow) ยท **Wiki version:** Draft v1 ยท **Date:** 2026-06-24 + +--- + +## ๐ŸŽฏ What is plate-auth? + +plate-auth is the carve-out of [InspectFlow](https://git.plate-software.de/pplate/inspectflow)'s Sprint 14 auth & membership system into a standalone, versioned library. It ships two artifacts: + +| Artifact | Coordinate | Consumed by | +|----------|-----------|-------------| +| Spring Boot Starter | `de.platesoft:plate-auth-starter:0.1.0` | Java/Spring Boot 4 backends | +| npm package | `@platesoft/auth:0.1.0` | Next.js 15+ frontends | + +**Provides:** + +- ๐Ÿ” **T1 โ€” Auth core:** Google OAuth (via NextAuth v5), magic-link email, JWT issuance + filter, Spring Security config, NextAuth โ†” backend exchange protocol (HMAC-signed envelope, replay-protected) +- ๐Ÿข **T2 โ€” Multi-tenancy:** `User` + `UserIdentity`, `Company`/`Membership` (or generic `Organization`), invitations, access requests, admin panel, login audit +- ๐Ÿ”Œ **T3 (stays in app):** App-specific onboarding, tenant auto-mapping rules, business-domain entities + +--- + +## ๐Ÿ“š Wiki pages + +### Strategy + +| Page | Purpose | +|------|---------| +| [Vision](Vision) | What plate-auth is, who consumes it, what success looks like | +| [Architecture](Architecture) | T1/T2/T3 tier model, package boundaries, public API, dependency diagrams | +| [Roadmap](Roadmap) | v0.1 โ†’ v0.2 โ†’ v0.3 โ†’ v0.4 โ€” speculative beyond v0.1 | + +### Sprint 0 (current โ€” Extraction from InspectFlow) + +| Page | Purpose | +|------|---------| +| [Sprint-0-Assessment](Sprint-0-Assessment) | State of the InspectFlow auth code, what is reusable, risks, recommendation | +| [Sprint-0-Plan](Sprint-0-Plan) | File-by-file extraction plan, package renames, Flyway consolidation, publishing pipeline | +| [Sprint-0-Testplan](Sprint-0-Testplan) | Unit / integration / contract test coverage matrix | + +### Consumer guides + +| Page | Purpose | +|------|---------| +| [Integration-Guide](Integration-Guide) | How a NEW app (Sparkboard etc.) consumes plate-auth on day 1 | +| [Migration-InspectFlow](Migration-InspectFlow) | Step-by-step refactor of InspectFlow to consume the library | + +### Open + +| Page | Purpose | +|------|---------| +| [Open-Questions](Open-Questions) | Parking lot for โ“ Ask phase โ€” decisions Patrick must make | + +--- + +## ๐Ÿงฌ Heritage + +plate-auth is not greenfield. It is the **fully battle-tested** auth system built across six sub-sprints in InspectFlow Sprint 14 (2026-06-22 โ†’ 2026-06-24): + +- 14.1 โ€” Multi-provider auth foundation (๐Ÿ™ Octopus Camouflage) +- 14.2 โ€” Membership model + MS tenant auto-mapping (๐Ÿฆ  Cell Membranes) +- 14.3 โ€” Invitation flow (๐Ÿœ Pheromone Trails) +- 14.4 โ€” Self-service access requests (๐Ÿ Honeybee Quorum) +- 14.5 โ€” Onboarding UX (๐Ÿปโ€โ„๏ธ Tardigrade Cryptobiosis) +- 14.6 โ€” Admin panel + login audit (๐ŸŒณ Tree Rings) + +Sprint 0 is the **modularization sprint** โ€” same code, repackaged, repointed, republished. + +--- + +## ๐Ÿšฆ Sprint 0 pipeline + +``` +Planner (this wiki) + โ†“ +Plan Reviewer (quality gate) + โ†“ +โ“ Ask Phase (Patrick answers Open-Questions) + โ†“ +Planner v2 (revise) + โ†“ +Code mode (implementation โ€” new plate-auth repo + InspectFlow refactor + Sparkboard consumption) +``` + +--- + +## ๐Ÿ”— External links + +- **Repo:** https://git.plate-software.de/pplate/plate-auth +- **Wiki (this site):** https://git.plate-software.de/pplate/plate-auth/wiki +- **Consumer 1 (existing):** [InspectFlow](https://git.plate-software.de/pplate/inspectflow) +- **Consumer 2 (incoming, greenfield):** [Sparkboard](https://git.plate-software.de/pplate/sparkboard)