|
| 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 | +# hesiod-dns-map — Project Topology |
| 6 | + |
| 7 | +## System Architecture |
| 8 | + |
| 9 | +``` |
| 10 | + ┌─────────────────────────────────────────┐ |
| 11 | + │ FLATRACOON STACK │ |
| 12 | + │ (Services, Users, Resources) │ |
| 13 | + └───────────────────┬─────────────────────┘ |
| 14 | + │ HS-class Lookups |
| 15 | + ▼ |
| 16 | + ┌─────────────────────────────────────────┐ |
| 17 | + │ HESIOD DNS SERVER │ |
| 18 | + │ (BIND/Knot, HS class records) │ |
| 19 | + └──────────┬───────────────────┬──────────┘ |
| 20 | + │ │ |
| 21 | + ▼ ▼ |
| 22 | + ┌───────────────────────┐ ┌────────────────────────────────┐ |
| 23 | + │ HS ZONE FILES │ │ CONFIGURATION (NICKEL) │ |
| 24 | + │ - service.hs │ │ - named.ncl (BIND config) │ |
| 25 | + │ - passwd.hs / group.hs│ │ - hesiod.ncl (Settings) │ |
| 26 | + │ - filsys.hs │ │ - dynamic.ncl (Policies) │ |
| 27 | + └──────────┬────────────┘ └──────────┬─────────────────────┘ |
| 28 | + │ │ |
| 29 | + └────────────┬─────────────┘ |
| 30 | + ▼ |
| 31 | + ┌─────────────────────────────────────────┐ |
| 32 | + │ EXTERNAL SYSTEMS │ |
| 33 | + │ ┌───────────┐ ┌───────────┐ ┌───────┐│ |
| 34 | + │ │ LDAP / AD │ │ Kubernetes│ │ AFS / ││ |
| 35 | + │ │ (Auth) │ │ (Registry)│ │ NFS ││ |
| 36 | + │ └───────────┘ └───────────┘ └───────┘│ |
| 37 | + └───────────────────┬─────────────────────┘ |
| 38 | + │ |
| 39 | + ▼ |
| 40 | + ┌─────────────────────────────────────────┐ |
| 41 | + │ SERVICE DISCOVERY │ |
| 42 | + │ (host -t TXT <svc> HS) │ |
| 43 | + └─────────────────────────────────────────┘ |
| 44 | +
|
| 45 | + ┌─────────────────────────────────────────┐ |
| 46 | + │ REPO INFRASTRUCTURE │ |
| 47 | + │ Justfile .machine_readable/ │ |
| 48 | + │ Update Scripts 0-AI-MANIFEST.a2ml │ |
| 49 | + └─────────────────────────────────────────┘ |
| 50 | +``` |
| 51 | + |
| 52 | +## Completion Dashboard |
| 53 | + |
| 54 | +``` |
| 55 | +COMPONENT STATUS NOTES |
| 56 | +───────────────────────────────── ────────────────── ───────────────────────────────── |
| 57 | +CORE NAMING (HS CLASS) |
| 58 | + Service Registry (.service) ████████░░ 80% FlatRacoon integration stable |
| 59 | + User/Group Mapping (.passwd) ██████░░░░ 60% Sync from LDAP in progress |
| 60 | + Filesystem Mapping (.filsys) ████░░░░░░ 40% AFS/NFS templates active |
| 61 | +
|
| 62 | +CONFIGURATION (NICKEL) |
| 63 | + named.ncl (BIND/Knot) ██████████ 100% Core config stable |
| 64 | + hesiod.ncl Settings ██████████ 100% HS class parameters verified |
| 65 | + Dynamic Update Policies ██████░░░░ 60% RFC 2136 refining |
| 66 | +
|
| 67 | +REPO INFRASTRUCTURE |
| 68 | + Justfile Automation ██████████ 100% Zone generation & deploy tasks |
| 69 | + .machine_readable/ ██████████ 100% STATE.scm tracking |
| 70 | + Zone File Templates ████████░░ 80% Initial scaffolding verified |
| 71 | +
|
| 72 | +───────────────────────────────────────────────────────────────────────────── |
| 73 | +OVERALL: ███████░░░ ~70% Hesiod foundation stable |
| 74 | +``` |
| 75 | + |
| 76 | +## Key Dependencies |
| 77 | + |
| 78 | +``` |
| 79 | +Nickel Config ───► Zone Generation ───► BIND Server ──────► HS Lookup |
| 80 | + │ │ │ │ |
| 81 | + ▼ ▼ ▼ ▼ |
| 82 | +LDAP Sync ───────► passwd.hs ─────────► Service Disc ───► Client |
| 83 | +``` |
| 84 | + |
| 85 | +## Update Protocol |
| 86 | + |
| 87 | +This file is maintained by both humans and AI agents. When updating: |
| 88 | + |
| 89 | +1. **After completing a component**: Change its bar and percentage |
| 90 | +2. **After adding a component**: Add a new row in the appropriate section |
| 91 | +3. **After architectural changes**: Update the ASCII diagram |
| 92 | +4. **Date**: Update the `Last updated` comment at the top of this file |
| 93 | + |
| 94 | +Progress bars use: `█` (filled) and `░` (empty), 10 characters wide. |
| 95 | +Percentages: 0%, 10%, 20%, ... 100% (in 10% increments). |
0 commit comments