Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .machine_readable/REGISTRY.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -288,7 +288,7 @@ name = "A2ML Templates"
stream = "integration"
home = "a2ml-templates/"
canonical_doc = "a2ml-templates/STATE.a2ml.v2.spec.adoc"
source_hash = "sha256:9dac88195c1f35af8755a1bead420c80490d3da7bc613083208cb95a822c6c00"
source_hash = "sha256:5a332a5416e83f455ba1ebd3c620cb0ce68ef69b4bbdebd0f2a4a5b1f915936e"
route = "copy-in templates for the 7 A2ML files"

[[spec]]
Expand Down
22 changes: 21 additions & 1 deletion CANONICAL-NAMES.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ one to generate. If unsure, ask — never guess an expansion.

- "A2ML" = "Attested Markup Language". NOT "AI to Machine Language" / "AI-to-Machine Language".
- "BoJ" = "Bundle of Joy". NOT "Bureau of Justice", NOT "Bank of Japan".
- "The Joinery" = cleave (surface) / groove (protocol) / spline (data-form).
NOT "weft", NOT "the groove stack", NOT consumer names as layer names.

DEPRECATED NAMES — DO NOT REINTRODUCE (estate mandate 2026-06-30):
- "descriptiles" is the machine-readable metadata family (dir
Expand Down Expand Up @@ -79,6 +81,23 @@ DEPRECATED NAMES — DO NOT REINTRODUCE (estate mandate 2026-06-30):
takes an agent's asserted outcomes and mechanically confirms/refutes each
against primary evidence. Home: `did-you-actually-do-that/`.

| **The Joinery**
| The three-layer connective system: cleave / groove / spline
| "weft", "the groove stack", "groove-* sprawl names for layers",
"consumer names as layer names"
| Exactly three layers. *cleave* is the surface — the tunable integration
surface, a deliberate contranym: cleave *apart* = clean zero-residue
teardown; cleave *together* = deep bond. *groove* is the protocol — runtime
capability discovery + type-safe composition; how deep a connection seats
in the groove is how integrated/trusted/gated it is. *spline* is the
data-form — the serialise/parallelise wire layer that seats into the
groove. Canonical rule: consumers (`gossamer`, `burble`, `panll`, `vext`,
…) are NOT layers and must never be used as layer names — if you see one
used that way, flag it; do not silently rewrite either name. The former
layer name `weft` is deprecated (see *Deprecated names* below). Authority:
groove ADR 0009 (`docs/decisions/0009-the-joinery-naming-canon.adoc` in
`hyperpolymath/groove`).

|===

== Deprecated names — do not reintroduce (MANDATE, 2026-06-30)
Expand Down Expand Up @@ -119,7 +138,8 @@ estate-wide, `standards` included.
`groove` (the protocol), `spline` (the data-form that seats into a groove).
Renamed from `weft` (textile) to fit the carpentry metaphor. Consumers
(`gossamer`, `burble`, …) sit outside the system and keep their own names.
See groove ADR 0009. Do not revert `spline`→`weft`.
See groove ADR 0009 and the **The Joinery** row in the *Register* above.
Do not revert `spline`→`weft`.
|===

== Adding a name
Expand Down
39 changes: 34 additions & 5 deletions PORT-REGISTRY.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,62 @@
# Port Registry — hyperpolymath ecosystem
# Last audited: 2026-03-28
# Last audited: 2026-07-09 — reconciled against the groove registry (authority split noted, groove surfaces mirrored, contradictions flagged in UNRESOLVED below)
#
# RULE: Every project MUST use a unique port. No two projects share a port.
# Check this file BEFORE assigning ports in new projects.

## Authority split

For groove-speaking services, `groove/registry/groove-registry.json`
(hyperpolymath/groove, ADR 0006, 2026-07-02) is the single source of truth for
the GROOVE-DISCOVERY surface. This file governs app/bind ports and mirrors
groove assignments; each contradiction is flagged below (see UNRESOLVED), not
silently fixed.

## Assigned Ports (CANONICAL — use these)

| Port | Project | Service | Protocol |
|------|---------|---------|----------|
| 4010 | stapeln | Phoenix backend | HTTP |
| 4020 | burble | Phoenix voice server | HTTP |
| 4020 | burble | Phoenix voice server — legacy app port, moving to 6473; see hyperpolymath/burble branch claude/cleave-spline-groove-arch-4zq111 | HTTP |
| 4030 | idaptik | Sync server | HTTP |
| 4040 | gossamer | Dev server | HTTP |
| 4050 | ambientops | Composer | HTTP |
| 4060 | reposystem | GUI backend | HTTP |
| 6465 | groove-ref | Groove reference provider | HTTP |
| 6470 | gossamer | Groove consumer/reference | HTTP |
| 6473 | burble | Groove surface | HTTP |
| 6475 | verisimdb | Groove surface (per groove registry; agrees with the "8080 often intercepted — consider changing" remark below) | HTTP |
| 6480 | vext | Verifiable comms protocol | HTTP |
| 7500 | gitbot-fleet | Bot orchestration | HTTP |
| 7600 | panic-attacker | Static analysis server | HTTP |
| 7700 | boj-server | Main MCP API | HTTP |
| 7701 | boj-server | Browser bridge | HTTP |
| 7800 | boj-server | Cartridge runner | HTTP |
| 8000 | panll | Groove + dev server | HTTP |
| 8080 | verisimdb | Default API (standalone) | HTTP |
| 8081 | echidna | Neural/prover API | HTTP |
| 8090 | idaptik | Game server (dev) | HTTP |
| 8093 | verisimdb | Stapeln instance | HTTP |
| 8094 | verisimdb | Kategoria instance | HTTP |
| 8095 | verisimdb | Project-M instance | HTTP |
| 8096 | verisimdb | Work instance (RAM disk) | HTTP |
| 8097 | verisimdb | Standards innervation instance (live per standards/.verisimdb/config.toml) | HTTP |
| 9090 | hypatia | Web + Groove endpoints | HTTP |
| 9100 | gitbot-fleet | Bot orchestration (was 7500; dropped per groove ADR 0006) | HTTP |
| 50051 | verisimdb | gRPC | gRPC |

## UNRESOLVED — owner decision needed (flagged, not fixed)

Contradictions between this file and the groove registry
(`groove/registry/groove-registry.json` in hyperpolymath/groove). Per estate
doctrine these are flagged only — neither side has been rewritten here.

1. **echidna** — 8081 (this file) vs 9000 (groove registry + panll code).
2. **boj-server** — 7700/7800 (this file) vs conflow 7700 / rpa-elysium 7800
(groove registry) — double-booking.
3. **burble AI-bridge** — WS default 6475 collides with verisimdb's groove
registry assignment 6475. Recommendation: bridge moves to its documented
alt 7474/7475.

## Commonly Blocked Ports (AVOID)

These are frequently blocked by corporate firewalls, ISPs, or proxies:
Expand All @@ -41,7 +68,7 @@ These are frequently blocked by corporate firewalls, ISPs, or proxies:
| 443 | HTTPS — requires root | Not used (dev) |
| 1080 | SOCKS proxy — abuse | Not used |
| 3128 | Squid proxy | Not used |
| 8080 | Common proxy port — **often intercepted** | **VeriSimDB default — consider changing** |
| 8080 | Common proxy port — **often intercepted** | **VeriSimDB default — consider changing** (groove surface already moved to 6475 per groove registry, which agrees with this remark) |
| 8443 | Alt HTTPS — sometimes blocked | IDApTIK uses — review |
| 9090 | Prometheus default — may conflict | Hypatia uses — acceptable |

Expand Down Expand Up @@ -77,6 +104,8 @@ Each project gets its own VeriSimDB instance on a unique port:
- 8093: Stapeln
- 8094: Kategoria
- 8095: Project-M
- 8096-8099: reserved for future projects
- 8096: Work (RAM disk)
- 8097: standards innervation instance (live per standards/.verisimdb/config.toml)
- 8098-8099: reserved for future projects

NEVER store one project's data in another project's VeriSimDB instance.
Loading