|
| 1 | +<!-- SPDX-License-Identifier: PMPL-1.0-or-later --> |
| 2 | +<!-- TOPOLOGY.md — Project architecture map and completion dashboard --> |
| 3 | +<!-- Last updated: 2026-02-19 --> |
| 4 | + |
| 5 | +# php-aegis — Project Topology |
| 6 | + |
| 7 | +## System Architecture |
| 8 | + |
| 9 | +``` |
| 10 | + ┌─────────────────────────────────────────┐ |
| 11 | + │ PHP APPLICATION │ |
| 12 | + │ (API, CLI, Semantic Web) │ |
| 13 | + └───────────────────┬─────────────────────┘ |
| 14 | + │ Function Calls |
| 15 | + ▼ |
| 16 | + ┌─────────────────────────────────────────┐ |
| 17 | + │ PHP-AEGIS TOOLKIT │ |
| 18 | + │ │ |
| 19 | + │ ┌───────────┐ ┌───────────────────┐ │ |
| 20 | + │ │ Validator │ │ Sanitizer │ │ |
| 21 | + │ │ (Input) │ │ (Output) │ │ |
| 22 | + │ └─────┬─────┘ └────────┬──────────┘ │ |
| 23 | + │ │ │ │ |
| 24 | + │ ┌─────▼─────┐ ┌────────▼──────────┐ │ |
| 25 | + │ │ Headers │ │ TurtleEscaper │ │ |
| 26 | + │ │ (Security)│ │ (RDF/Turtle) │ │ |
| 27 | + │ └─────┬─────┘ └────────┬──────────┘ │ |
| 28 | + └────────│─────────────────│──────────────┘ |
| 29 | + │ │ |
| 30 | + ▼ ▼ |
| 31 | + ┌─────────────────────────────────────────┐ |
| 32 | + │ SYSTEM INTERFACES │ |
| 33 | + │ ┌───────────┐ ┌───────────┐ ┌───────┐│ |
| 34 | + │ │ HTTP │ │ Filesystem│ │ Memory││ |
| 35 | + │ │ Response │ │ (Backends)│ │ (Rate)││ |
| 36 | + │ └───────────┘ └───────────┘ └───────┘│ |
| 37 | + └─────────────────────────────────────────┘ |
| 38 | +
|
| 39 | + ┌─────────────────────────────────────────┐ |
| 40 | + │ REPO INFRASTRUCTURE │ |
| 41 | + │ Justfile / Composer .machine_readable/ │ |
| 42 | + │ PHPUnit / Stan 0-AI-MANIFEST.a2ml │ |
| 43 | + └─────────────────────────────────────────┘ |
| 44 | +``` |
| 45 | + |
| 46 | +## Completion Dashboard |
| 47 | + |
| 48 | +``` |
| 49 | +COMPONENT STATUS NOTES |
| 50 | +───────────────────────────────── ────────────────── ───────────────────────────────── |
| 51 | +SECURITY MODULES |
| 52 | + Validator (Strict Input) ██████████ 100% Core + Network + Format verified |
| 53 | + Sanitizer (Context-Aware) ██████████ 100% HTML/JS/CSS/JSON stable |
| 54 | + Headers (CSP/HSTS/etc) ██████████ 100% Secure defaults active |
| 55 | + TurtleEscaper (RDF) ██████████ 100% Unique differentiator verified |
| 56 | +
|
| 57 | +INTEGRATIONS & ADAPTERS |
| 58 | + WordPress Integration ████████░░ 80% 23 adapter functions verified |
| 59 | + Rate Limiting ██████░░░░ 60% File/Memory backends active |
| 60 | + IndieWeb Helpers ████░░░░░░ 40% Initial SSRF prevention active |
| 61 | +
|
| 62 | +REPO INFRASTRUCTURE |
| 63 | + Justfile Automation ██████████ 100% Standard build/lint tasks |
| 64 | + .machine_readable/ ██████████ 100% STATE tracking active |
| 65 | + Test Suite (PHPUnit) ██████████ 100% High coverage verified |
| 66 | +
|
| 67 | +───────────────────────────────────────────────────────────────────────────── |
| 68 | +OVERALL: █████████░ ~90% Toolkit stable and production-ready |
| 69 | +``` |
| 70 | + |
| 71 | +## Key Dependencies |
| 72 | + |
| 73 | +``` |
| 74 | +User Input ──────► Validator ──────► App Logic ──────► Sanitizer |
| 75 | + │ │ │ │ |
| 76 | + ▼ ▼ ▼ ▼ |
| 77 | + HTTP Request ──► Headers ───────► Rate Limiter ────► HTTP Response |
| 78 | +``` |
| 79 | + |
| 80 | +## Update Protocol |
| 81 | + |
| 82 | +This file is maintained by both humans and AI agents. When updating: |
| 83 | + |
| 84 | +1. **After completing a component**: Change its bar and percentage |
| 85 | +2. **After adding a component**: Add a new row in the appropriate section |
| 86 | +3. **After architectural changes**: Update the ASCII diagram |
| 87 | +4. **Date**: Update the `Last updated` comment at the top of this file |
| 88 | + |
| 89 | +Progress bars use: `█` (filled) and `░` (empty), 10 characters wide. |
| 90 | +Percentages: 0%, 10%, 20%, ... 100% (in 10% increments). |
0 commit comments