Sourced from previous audits + agent-wave outputs (2026-05-05): AUDIT-2026-05-05.md — 5-agent stack synthesis forgejo/DEPLOY.md — git.s8n.ru deploy runbook forgejo/forgejo-compose.yml — production compose forgejo/runner-compose.yml — forgejo-runner forgejo/migration-report-... — GH→Forgejo migration audit (6/6 green) runbooks/MIGRATION-... — nullstone→cobblestone runbook runbooks/DE-DECISION-... — keep-vs-strip DE on cobblestone repos/REPO-AUDIT-2026-05-05.md — repo trees + ownership
486 lines
16 KiB
Markdown
486 lines
16 KiB
Markdown
<!--
|
||
Repo audit — Forgejo (git.s8n.ru) + GitHub (github.com).
|
||
Generated: 2026-05-05. Sources: gh CLI for github.com, internal Forgejo
|
||
REST API via alpine on the proxy network (no-guest@file blocks the
|
||
public host). Source-of-truth for what is migrated:
|
||
~/ai-lab/nullstone-server/forgejo/migration-report-2026-05-05.md.
|
||
-->
|
||
|
||
# Repo Audit — 2026-05-05
|
||
|
||
Combined audit of every repo on `git.s8n.ru` (Forgejo, primary host) and
|
||
`github.com` (mirror destination for migrated repos), plus per-repo file
|
||
trees and an ownership/anomaly summary.
|
||
|
||
- **Scopes covered:** `s8n-ru` (user, both hosts), `veilor-org` (org, both hosts).
|
||
- **`racked-team`:** does **not** exist on github.com (`gh` returns
|
||
"owner handle was not recognized"). User memory references the brand
|
||
but no GH org with that handle is registered. See Anomalies section.
|
||
- **Forgejo access:** internal-only via `alpine:3 + curl` on the
|
||
`proxy` docker network (`http://forgejo:3000`). `https://git.s8n.ru/`
|
||
is locked by the `no-guest@file` ACL.
|
||
|
||
---
|
||
|
||
## 1. Summary
|
||
|
||
| Metric | Count |
|
||
|---|---|
|
||
| Total distinct repos | 8 |
|
||
| Mirrored (Forgejo ↔ GitHub) | 6 |
|
||
| Forgejo-only | 2 (`veilor-org/veilor-server`, `veilor-org/infra`) |
|
||
| GitHub-only | 0 |
|
||
| Empty repos | 1 (`veilor-org/infra` — initial bare on Forgejo) |
|
||
| Archived | 0 |
|
||
| Forks | 0 (per migration report; `s8n-ru/x` is detached fork-of-Misskey, treated as standalone) |
|
||
|
||
**By owner:**
|
||
|
||
| Owner | Forgejo repos | GitHub repos |
|
||
|---|---|---|
|
||
| `s8n-ru` (user) | 5 | 5 |
|
||
| `veilor-org` (org) | 3 | 1 |
|
||
|
||
**By primary host:**
|
||
|
||
| Primary host | Repos |
|
||
|---|---|
|
||
| `git.s8n.ru` | 8 (all repos that exist on Forgejo) |
|
||
| `github.com` only | 0 |
|
||
|
||
`git.s8n.ru` is the canonical write side for every migrated repo; GitHub
|
||
receives sync-on-commit + 8h interval pushes (`sync_on_commit: true`,
|
||
`interval: "8h0m0s"`). The two Forgejo-only repos (`veilor-server`,
|
||
`infra`) currently have no GH counterpart — see Anomalies.
|
||
|
||
---
|
||
|
||
## 2. Ownership Table
|
||
|
||
Last-commit timestamps are taken from the default branch tip on Forgejo
|
||
(equal to GitHub for all mirrored repos — SHAs verified identical on
|
||
2026-05-06). Sizes are Forgejo-reported KiB unless the repo is GH-only.
|
||
|
||
| Repo | Owner | Visibility | Default | Stars (GH) | Last commit | Size (KiB) | License | Mirror status | Primary host |
|
||
|---|---|---|---|---|---|---|---|---|---|
|
||
| `x` | `s8n-ru` | private | `master` | 0 | 2026-05-05 13:46 | 283 674 | AGPL-3.0 | git.s8n.ru → github.com (push, 8h, sync_on_commit) | git.s8n.ru |
|
||
| `minecraft-launcher` | `s8n-ru` | public | `main` | 0 | 2026-05-05 05:26 | 3 644 | GPL-3.0 | git.s8n.ru → github.com (push, 8h, sync_on_commit) | git.s8n.ru |
|
||
| `auth-limbo` | `s8n-ru` | public | `main` | 0 | 2026-05-05 05:09 | 79 | AGPL-3.0 | git.s8n.ru → github.com (push, 8h, sync_on_commit) | git.s8n.ru |
|
||
| `minecraft-server` | `s8n-ru` | private | `main` | 0 | 2026-05-04 18:37 | 383 | AGPL-3.0 | git.s8n.ru → github.com (push, 8h, sync_on_commit) | git.s8n.ru |
|
||
| `8bit-icons` | `s8n-ru` | private | `main` | 0 | 2026-05-01 21:31 | 554 | AGPL-3.0 | git.s8n.ru → github.com (push, 8h, sync_on_commit) | git.s8n.ru |
|
||
| `veilor-os` | `veilor-org` | private | `main` | 0 | 2026-05-06 02:01 | 376 | MIT | git.s8n.ru → github.com (push, 8h, sync_on_commit) | git.s8n.ru |
|
||
| `veilor-server` | `veilor-org` | public | `main` | n/a | 2026-05-06 04:00 | 54 | none in tree | **no mirror** — Forgejo-only | git.s8n.ru |
|
||
| `infra` | `veilor-org` | private | `main` | n/a | (empty) | 22 | n/a | **no mirror** — Forgejo-only, currently bare | git.s8n.ru |
|
||
|
||
Notes:
|
||
- All push-mirrors target `https://github.com/<owner>/<name>.git`.
|
||
- Last sync per push-mirror reported `last_error: ""` on both 2026-05-05 (migration run) and 2026-05-06 (this audit run).
|
||
- "Stars (GH)" is 0 for every repo — these are personal/org-internal projects, not public-marketing items.
|
||
- License column reflects what GitHub's API picked up; private repos may have a `LICENSE` file in tree without a GH-detected SPDX id (see `s8n-ru/x` and `s8n-ru/8bit-icons` — verified by file presence in tree).
|
||
|
||
---
|
||
|
||
## 3. Per-Repo File Trees
|
||
|
||
Two-level trees (root + first level under each top-level dir). Repos
|
||
with > 500 entries are summarised: top-dirs ranked by entry count, with
|
||
per-dir totals shown instead of expanding. Listed alphabetically by
|
||
`<owner>/<name>`.
|
||
|
||
### `s8n-ru/8bit-icons`
|
||
|
||
131 entries. AMOLED pixel-art icon pack for Android (24×24 monochrome).
|
||
|
||
```
|
||
.
|
||
├── .github/
|
||
│ ├── ISSUE_TEMPLATE/
|
||
│ ├── workflows/
|
||
│ └── PULL_REQUEST_TEMPLATE.md
|
||
├── android-app/
|
||
│ ├── app/
|
||
│ ├── gradle/
|
||
│ ├── .gitignore
|
||
│ ├── build.gradle
|
||
│ ├── gradle.properties
|
||
│ ├── gradlew
|
||
│ ├── gradlew.bat
|
||
│ └── settings.gradle
|
||
├── assets/
|
||
│ ├── png/
|
||
│ ├── previews/
|
||
│ └── svg/
|
||
├── docs/
|
||
│ └── .gitkeep
|
||
├── mappings/
|
||
│ ├── aliases.json
|
||
│ ├── appfilter.xml
|
||
│ └── requests.json
|
||
├── scripts/
|
||
│ ├── build-appfilter.py
|
||
│ ├── lint-icons.py
|
||
│ ├── png-to-svg.py
|
||
│ ├── svg2png.sh
|
||
│ └── sync-android.py
|
||
├── .gitignore
|
||
├── CHANGELOG.md
|
||
├── CODE_OF_CONDUCT.md
|
||
├── CONTRIBUTING.md
|
||
├── LICENSE
|
||
├── README.md
|
||
├── ROADMAP.md
|
||
└── STYLE_GUIDE.md
|
||
```
|
||
|
||
### `s8n-ru/auth-limbo`
|
||
|
||
32 entries. Paper plugin fixing AuthMe post-login teleport race.
|
||
|
||
```
|
||
.
|
||
├── .github/
|
||
│ ├── ISSUE_TEMPLATE/
|
||
│ └── workflows/
|
||
├── docs/
|
||
│ ├── compatibility.md
|
||
│ ├── configuration.md
|
||
│ ├── how-it-works.md
|
||
│ └── installation.md
|
||
├── lib/
|
||
│ ├── .gitkeep
|
||
│ └── README.md
|
||
├── src/
|
||
│ └── main/
|
||
├── .gitignore
|
||
├── CHANGELOG.md
|
||
├── LICENSE
|
||
├── README.md
|
||
└── pom.xml
|
||
```
|
||
|
||
### `s8n-ru/minecraft-launcher`
|
||
|
||
_Large repo — 1796 entries._
|
||
_Top dirs by size:_ `app/` (1529), `libraries/` (154), `program_info/` (32), `cmake/` (22), `docs/` (8), `scripts/` (6), `buildconfig/` (3), `.github/` (2)
|
||
|
||
```
|
||
.
|
||
├── .github/ (2 entries)
|
||
├── app/ (1529 entries)
|
||
├── buildconfig/ (3 entries)
|
||
├── cmake/ (22 entries)
|
||
├── docs/ (8 entries)
|
||
├── libraries/ (154 entries)
|
||
├── program_info/ (32 entries)
|
||
├── scripts/ (6 entries)
|
||
├── tools/ (1 entries)
|
||
├── .clang-format
|
||
├── .clang-tidy
|
||
├── .editorconfig
|
||
├── .envrc
|
||
├── .git-blame-ignore-revs
|
||
├── .gitattributes
|
||
├── .gitignore
|
||
├── .gitmodules
|
||
├── .markdownlint.yaml
|
||
├── .markdownlintignore
|
||
├── BUILD_AND_DEPLOY_V1.sh
|
||
├── BUILD_GUIDE.md
|
||
├── CHANGELOG.md
|
||
├── CMakeLists.txt
|
||
├── CMakePresets.json
|
||
├── CODE_OF_CONDUCT.md
|
||
├── CONTRIBUTING.md
|
||
├── COPYING.md
|
||
├── Containerfile
|
||
├── INSTALL_DEPS.sh
|
||
├── LICENSE
|
||
├── PROJECT_SUMMARY.md
|
||
├── README.md
|
||
├── README_RELEASE.md
|
||
├── RELEASE_CHECKLIST.md
|
||
├── default.nix
|
||
├── renovate.json
|
||
├── shell.nix
|
||
├── vcpkg-configuration.json
|
||
└── vcpkg.json
|
||
```
|
||
|
||
### `s8n-ru/minecraft-server`
|
||
|
||
224 entries. racked.ru Minecraft server config + custom plugin (Purpur 1.21.11).
|
||
|
||
```
|
||
.
|
||
├── docs/
|
||
│ ├── migrations/
|
||
│ ├── plugins/
|
||
│ ├── BACKUP.md
|
||
│ ├── DEPLOY.md
|
||
│ ├── PERMISSIONS.md
|
||
│ ├── PLUGINS.md
|
||
│ ├── PLUGIN_ALTERNATIVES.md
|
||
│ ├── RACKED_BRAND.md
|
||
│ ├── REBRAND_2026-04-30.md
|
||
│ └── ROADMAP.md
|
||
├── live-server/
|
||
│ ├── plugins/
|
||
│ ├── .modrinth-manifest.json
|
||
│ ├── .rcon-cli.env
|
||
│ ├── .rcon-cli.yaml
|
||
│ ├── bukkit.yml
|
||
│ ├── commands.yml
|
||
│ ├── docker-compose.yml
|
||
│ ├── eula.txt
|
||
│ ├── help.yml
|
||
│ ├── log4j2.xml
|
||
│ ├── ops.json
|
||
│ ├── permissions.yml
|
||
│ ├── pufferfish.yml
|
||
│ ├── purpur.yml
|
||
│ ├── server.properties
|
||
│ ├── spigot.yml
|
||
│ ├── wepif.yml
|
||
│ └── whitelist.json
|
||
├── scripts/
|
||
│ └── backup.sh
|
||
├── .gitignore
|
||
├── LICENSE
|
||
├── MISSION.md
|
||
├── README.md
|
||
├── RULES.md
|
||
├── TELEMETRY_AUDIT.md
|
||
├── THANKS.md
|
||
├── VIBE.md
|
||
└── docker-compose.yml
|
||
```
|
||
|
||
### `s8n-ru/x`
|
||
|
||
_Large repo — 3249 entries._
|
||
_Top dirs by size:_ `packages/` (3062), `locales/` (41), `.github/` (35), `scripts/` (19), `cypress/` (11), `assets/` (9), `chart/` (9), `.devcontainer/` (5)
|
||
|
||
Private fork of Misskey, rebranded as Twitter/X for the `x.veilor` silo. Default branch `master` (mid-migration metadata bug fixed 2026-05-05; see migration report).
|
||
|
||
```
|
||
.
|
||
├── .config/ (4 entries)
|
||
├── .devcontainer/ (5 entries)
|
||
├── .github/ (35 entries)
|
||
├── .okteto/ (1 entries)
|
||
├── .vscode/ (2 entries)
|
||
├── assets/ (9 entries)
|
||
├── chart/ (9 entries)
|
||
├── cypress/ (11 entries)
|
||
├── fluent-emojis/ (0 entries)
|
||
├── idea/ (4 entries)
|
||
├── locales/ (41 entries)
|
||
├── packages/ (3062 entries)
|
||
├── patches/ (1 entries)
|
||
├── scripts/ (19 entries)
|
||
├── .dockerignore
|
||
├── .dockleignore
|
||
├── .editorconfig
|
||
├── .gitattributes
|
||
├── .gitignore
|
||
├── .gitmodules
|
||
├── .node-version
|
||
├── .npmrc
|
||
├── .vsls.json
|
||
├── CHANGELOG-X.md
|
||
├── CHANGELOG.md
|
||
├── CODE_OF_CONDUCT.md
|
||
├── CONTRIBUTING.md
|
||
├── COPYING
|
||
├── Dockerfile
|
||
├── LICENSE
|
||
├── NOTICE.md
|
||
├── Procfile
|
||
├── README.md
|
||
├── ROADMAP-X.md
|
||
├── ROADMAP.md
|
||
├── SECURITY.md
|
||
├── codecov.yml
|
||
├── compose.local-db.yml
|
||
├── compose_example.yml
|
||
├── crowdin.yml
|
||
├── cypress.config.ts
|
||
├── healthcheck.sh
|
||
├── package.json
|
||
├── pnpm-lock.yaml
|
||
├── pnpm-workspace.yaml
|
||
└── renovate.json5
|
||
```
|
||
|
||
### `veilor-org/infra`
|
||
|
||
Empty repo (no commits). Created 2026-05-06 09:51 BST as the canonical
|
||
home for nullstone+cobblestone deploys, runbooks, and audits. Local
|
||
working clone is at `~/ai-lab/_github/infra/` but has no commits and no
|
||
remote wired up yet. No tree to render.
|
||
|
||
### `veilor-org/veilor-os`
|
||
|
||
162 entries. Hardened Fedora KDE remix; primary on Forgejo since 2026-05-06 02:01.
|
||
|
||
```
|
||
.
|
||
├── .github/
|
||
│ ├── workflows/
|
||
│ ├── CODEOWNERS
|
||
│ └── PULL_REQUEST_TEMPLATE.md
|
||
├── assets/
|
||
│ ├── branding/
|
||
│ ├── fonts/
|
||
│ ├── installer/
|
||
│ ├── kde/
|
||
│ ├── konsole/
|
||
│ ├── plymouth/
|
||
│ ├── sddm/
|
||
│ └── wallpapers/
|
||
├── build/
|
||
│ ├── Containerfile
|
||
│ └── build-iso.sh
|
||
├── docs/
|
||
│ ├── research/
|
||
│ ├── BUILD.md
|
||
│ ├── CLI.md
|
||
│ ├── HARDENING.md
|
||
│ ├── INSTALL.md
|
||
│ ├── INSTALLER.md
|
||
│ ├── POWER.md
|
||
│ ├── ROADMAP.md
|
||
│ ├── STRATEGY.md
|
||
│ └── THREAT-MODEL.md
|
||
├── kickstart/
|
||
│ └── veilor-os.ks
|
||
├── overlay/
|
||
│ ├── etc/
|
||
│ └── usr/
|
||
├── scripts/
|
||
│ ├── apparmor/
|
||
│ ├── selinux/
|
||
│ ├── 10-harden-base.sh
|
||
│ ├── 20-harden-kernel.sh
|
||
│ ├── 30-apply-v03-theme.sh
|
||
│ ├── firstboot.sh
|
||
│ └── kde-theme-apply.sh
|
||
├── test/
|
||
│ ├── test-runs/
|
||
│ ├── METHOD-CHANGELOG.md
|
||
│ ├── README.md
|
||
│ ├── TESTING.md
|
||
│ ├── auto-install-keymap.sh
|
||
│ ├── auto-install.sh
|
||
│ ├── boot-checklist.md
|
||
│ └── run-vm.sh
|
||
├── upstream/
|
||
│ ├── fedora-kde-common.ks
|
||
│ ├── fedora-live-base.ks
|
||
│ ├── fedora-live-kde-base.ks
|
||
│ ├── fedora-live-kde.ks
|
||
│ ├── fedora-live-minimization.ks
|
||
│ ├── fedora-repo-not-rawhide.ks
|
||
│ └── fedora-repo.ks
|
||
├── .gitignore
|
||
├── CHANGELOG.md
|
||
├── CONTRIBUTING.md
|
||
├── LICENSE
|
||
└── README.md
|
||
```
|
||
|
||
### `veilor-org/veilor-server`
|
||
|
||
7 entries. Hardened-by-default Debian server-install ISO builder.
|
||
|
||
```
|
||
.
|
||
├── .gitignore
|
||
├── LICENSE
|
||
├── README.md
|
||
├── build.sh
|
||
├── flash.sh
|
||
├── post-install.sh
|
||
└── preseed.cfg.tpl
|
||
```
|
||
|
||
---
|
||
|
||
## 4. Anomalies
|
||
|
||
Items the operator should review.
|
||
|
||
### Forgejo-only repos with no GitHub mirror
|
||
|
||
These will diverge from GH if/when a GH counterpart is created later, and they currently have no off-site mirror at all. Both live in `veilor-org`.
|
||
|
||
| Repo | State | Recommendation |
|
||
|---|---|---|
|
||
| `veilor-org/veilor-server` | Public on Forgejo, 7 files (Debian preseed bootstrap), no push-mirror | Mirror to `github.com/veilor-org/veilor-server` to match the `veilor-os` policy (Forgejo primary, GH read-only). Memory entry `project_veilor_server_bootstrap` confirms this is intended sibling to veilor-os. |
|
||
| `veilor-org/infra` | Private on Forgejo, **empty repo** (no commits, no default branch tip), no push-mirror | Either initial-commit and add a push-mirror to GH, or delete if the canonical infra repo is intended to live elsewhere. Local `~/ai-lab/_github/infra/` has uncommitted content but no `.git/config` remote pointing at this repo. |
|
||
|
||
### Off-site backup gap
|
||
|
||
All five `s8n-ru/*` repos and `veilor-org/veilor-os` have a healthy
|
||
push-mirror to GH; the two anomalies above do not. If `git.s8n.ru` (on
|
||
nullstone) goes down, the two `veilor-org` Forgejo-only repos have **no
|
||
remote copy**. This is the only off-site-backup gap in the inventory.
|
||
|
||
### Missing GitHub org `racked-team`
|
||
|
||
CLAUDE.md / user memory references a `racked-team` GH org (separate
|
||
from `veilor-org`, for the racked.ru Minecraft brand). `gh api` confirms
|
||
the handle is **not registered** on github.com: "the owner handle
|
||
'racked-team' was not recognized as either a GitHub user or an
|
||
organization". The racked-related repos (`minecraft-launcher`,
|
||
`minecraft-server`, `auth-limbo`) all live under `s8n-ru/`, not under a
|
||
brand-scoped org.
|
||
|
||
Either:
|
||
- the org was never created (memory drift — should be reconciled), or
|
||
- the org has a different handle (e.g. `racked-ru`, `rackedteam`).
|
||
|
||
`gh api /user/orgs` returns only `veilor-org` for the active token; no
|
||
other org membership exists for `s8n-ru`.
|
||
|
||
### Missing/undetected licenses
|
||
|
||
| Repo | Tree has `LICENSE`? | GH SPDX detected | Note |
|
||
|---|---|---|---|
|
||
| `s8n-ru/x` | yes (`LICENSE` + `COPYING`) | AGPL-3.0 | OK |
|
||
| `s8n-ru/8bit-icons` | yes | AGPL-3.0 | OK |
|
||
| `s8n-ru/minecraft-server` | yes | AGPL-3.0 | OK |
|
||
| `s8n-ru/auth-limbo` | yes | AGPL-3.0 | OK |
|
||
| `s8n-ru/minecraft-launcher` | yes | GPL-3.0 | OK |
|
||
| `veilor-org/veilor-os` | yes | MIT | OK |
|
||
| `veilor-org/veilor-server` | yes | (no GH copy yet) | Will need GH detection once mirrored. |
|
||
| `veilor-org/infra` | n/a | n/a | Empty repo. |
|
||
|
||
No undetected-license repos. (All public repos surface the correct SPDX id on GitHub.)
|
||
|
||
### Default-branch hygiene
|
||
|
||
All repos: default branch matches the active dev branch. The
|
||
`s8n-ru/x` `master`-vs-`KisaragiEffective-patch-1` drift caught in the
|
||
previous migration run is still resolved (Forgejo & GH both report
|
||
`master` at SHA `a2c1ed2…`).
|
||
|
||
### Archived / dormant
|
||
|
||
No archived repos on either host. No repos with > 30 days since last
|
||
commit. Latest activity per repo (default branch tip):
|
||
|
||
```
|
||
veilor-org/veilor-server 2026-05-06 04:00
|
||
veilor-org/veilor-os 2026-05-06 02:01
|
||
s8n-ru/x 2026-05-05 13:46
|
||
s8n-ru/minecraft-launcher 2026-05-05 05:26
|
||
s8n-ru/auth-limbo 2026-05-05 05:09
|
||
s8n-ru/minecraft-server 2026-05-04 18:37
|
||
s8n-ru/8bit-icons 2026-05-01 21:31
|
||
veilor-org/infra (empty)
|
||
```
|
||
|
||
---
|
||
|
||
_Generated: 2026-05-05. Verifies state of git.s8n.ru and github.com as of the API responses captured during this run. Push-mirror SHAs verified equal between hosts (`s8n-ru/x` `a2c1ed23…`, `s8n-ru/minecraft-launcher` `ae760edd…`, `s8n-ru/auth-limbo` `b6863806…`, `s8n-ru/minecraft-server` `ede60294…`, `s8n-ru/8bit-icons` `42a3252d…`, `veilor-org/veilor-os` `b40e89a3…`)._
|