# Forge canonical registry — Gitea `d-bis`

Single source of truth for which repositories Ali and operators use. **Do not** treat GitHub mirrors or ad-hoc “banking portal” repos as canonical.

## Canonical repositories

| Repo | Gitea remote | Path on `dev-bis-ali` | Role |
|------|--------------|------------------------|------|
| **`proxmox`** | `https://gitea.d-bis.org/d-bis/proxmox.git` | `/srv/projects/proxmox` | Operator / orchestration — manifests, LXC map, NPM, deploy orchestration |
| **`smom-dbis-138`** | `https://gitea.d-bis.org/d-bis/smom-dbis-138.git` | `~/smom-dbis-138` | **Banking app source of truth** — all OMNL portal code |

Optional: `proxmox` may vendor `smom-dbis-138` as a git submodule at `proxmox/smom-dbis-138`. Pick **one** primary workspace for app edits (`~/smom-dbis-138` recommended) and stay consistent.

## Branch policy

| Repo | Branch | Notes |
|------|--------|-------|
| `smom-dbis-138` | `main` | Production banking stack (commit `33e9316`+ verified on dev) |
| `proxmox` | `main` | Operator scripts, LXC sync, infra docs |

## What lives where

### `smom-dbis-138` (banking app monorepo)

```
smom-dbis-138/
├── frontend-dapp/              # Vite SPA → :3002 (dev) / :3000 (LXC edge)
├── services/
│   ├── settlement-middleware/  # /settlement/* → :3011
│   ├── dbis-exchange/          # /exchange/* → :3012
│   └── token-aggregation/      # /api/v1/* → :3000
├── packages/
│   ├── integration-foundation/
│   └── settlement-core/
├── config/                     # omnl-*.json, production configs
├── deploy/nginx/               # omnl-domains.conf (dev nginx)
└── scripts/deployment/
    ├── deploy-omnl-bank-production.sh
    ├── deploy-omnl-domains.sh
    ├── deploy-omnl-banking-portal-pct.sh
    ├── sync-ali-omnl-banking-portal-lxcs.sh
    └── start-omnl-banking-portal.sh
```

### `proxmox` (ops)

- LXC CTID map (5820–5828)
- NPMplus proxy hosts (9 public FQDNs → LAN)
- Cloudflare / DNS runbooks
- `pnpm ali:hospitallers:handoff`, `pnpm ali:hospitallers:verify-external`

## Public surface

Nine FQDNs (see `config/omnl-production-domains.v1.json`) — **one stack**, deployed to each banking LXC at `/srv/ali-portal`. No per-FQDN git repos.

## Credentials

- Gitea user: **`ali`** — `ali-gitea-credentials.env` (handoff bundle)
- Env split:
  - `proxmox/.env` — Proxmox, NPM, Cloudflare, Gitea tokens
  - `smom-dbis-138/.env` — `PRIVATE_KEY`, `RPC_URL_138`, OMNL API keys

## Related docs

- [ALI_ZARDASHT_REMOTE_OPERATOR_ONBOARDING.md](./ALI_ZARDASHT_REMOTE_OPERATOR_ONBOARDING.md)
- [ALI_GITEA_TWO_REPO_WORKFLOW.md](./ALI_GITEA_TWO_REPO_WORKFLOW.md)
