Files

9.2 KiB

Migration backlog

Every repository that needs CI/CD on the new system, and its state. The old system (platform-ci, both ci-policy dispatchers, the Gitea publishers) was switched off on 2026-11-07, so repositories not marked done have no CI until migrated.

Done (on ci-workflows)

  • All 41 QRun-IO qbits, qqq, qqq-frontend-next, qbit-help, qbit-template-*, qbit-printing, qbit-record-files, qbit-scripting, qbit-document-generation, qqq-app-starter, qctl (verify)
  • KofTwentyTwo: kof22-agent-foundation, Website-Publisher, Cogniscor
  • npm publishing (2026-11-08, node.yaml publish: true, Gitea npm registry): QRun-IO qqq-frontend-core (0.40.27-RC.1), qqq-frontend-component-sequential-workflow (1.0.0-RC.1); callers on @main until v1 moves
  • No-CI batch (2026-11-07): QRun-IO qqq-frontend-core, qqq-frontend-component-sequential-workflow (node.yaml, verify); qqq-frontend-material-dashboard (maven.yaml + npm prebuild, Selenium ITs on browser runners, publishes); KofTwentyTwo obsidian-penny (node.yaml, verify)
  • Native (2026-11-08, callers pin @v1; they run once v1 includes the native workflows): QRun-IO qqq-android (android.yaml: unit tests, lint, APKs, emulator connected tests; AAR publish on vX.Y.Z); KofTwentyTwo AppKit, MarkdownViewr.Windows, windows-app-template (windows.yaml, Lore; .github kept for the GitHub mirror), MetalPOC, VoicePOC, PerfectCup (macos.yaml, grogu)
  • Small workflows (2026-11-08, go.yaml / gradle.yaml / lint.yaml; callers pin @v1 and run once v1 includes them):
    • go.yaml: KofTwentyTwo license-tool (gofmt, vet, golangci-lint, race tests, 100% coverage gate; v* tags attach 5 archives + SHA256SUMS to the Gitea release, proven with a throwaway tag)
    • gradle.yaml: QRun-IO qqq-app-developer-intellij-plugin, KofTwentyTwo intellij-commentator-plugin (verified wrapper; both had a non-official gradle-wrapper.jar, replaced)
    • lint.yaml: QRun-IO qqq-meta-manager (shellcheck), qqq-templates-hub (yamllint); KofTwentyTwo gamut (JSON, ruff), standards (markdownlint, yamllint, lychee internal links; plus conformance tests on windows.yaml), terraform-proxmox-talos (tofu fmt + validate), Praetor (shellcheck on ops/, tofu fmt; oracle/vendor fixtures excluded)
    • Checked and not Go (no go.yaml): gclo (.NET), kfmtbox (Rust), Munitor (CircleCI orb, shell/bats), Jarvis (Swift/Xcode), jarvis-file (Node), ArmariumMinutum (README and LICENSE only: no CI)
    • Not migrated: Galaxy-Cloud-Init (legacy, superseded by Praetor and cluster-gitops; ansible-lint reports ~250 findings in its authored roles, not worth fixing in a dormant repo: owner decision to retire or revive)

In progress

Repository Workflow State
KofTwentyTwo/Website-Backend container.yaml + GitOps Done: deploys from main (prod on run-74, 2026-11-07)
KofTwentyTwo/cluster-gitops manifests.yaml Done (#298, allowlist #299); maven-proxy fix #301 awaiting owner merge
KofTwentyTwo/investinginchester container.yaml + GitOps On Gitea image in prod (cluster-gitops #300); auto-deploy PR #12 needs GITOPS_TOKEN
KofTwentyTwo/nuncio-website container.yaml + GitOps Merged; image builds; deploy needs GITOPS_TOKEN
KofTwentyTwo/theimpactbuilding container.yaml + GitOps On develop; main PR #6 needs GITOPS_TOKEN first
QRun-IO/qqq-all, qqq-business-platform maven.yaml / container.yaml Being migrated
QRun-IO/qqq-print-agent windows.yaml + node.yaml PR #17 open: Defender on qqq-gitea-win-6218 quarantines the built Qqq.PrintAgent.Core.Tests.dll; needs an exclusion for C:\ProgramData\GiteaNative (or the disabled Lore QRun runner back)
KofTwentyTwo/markdownViewr, VisionPOC macos.yaml PRs #3 / #2 open: xcodebuild test cannot reach testmanagerd on grogu (runner is a launchd daemon, no GUI session); VisionPOC also needs git-lfs on grogu
KofTwentyTwo/CommandTabFree macos.yaml Not migrated: its tests are app-hosted xcodebuild test (same grogu block); guard.yml greps still need porting
QRun-IO/qqq-print-protocol node.yaml (publish, release-files) Done (2026-11-08): tag → Gitea release with bundle + SHA256SUMS + CHANGELOG notes (proof v1.1.1-rc.1); caller on @main until v1 moves
QRun-IO/qqq-cli node.yaml (verify) + own release.yaml Done (2026-11-08): tag v<CLI version> → gate, Linux/macOS/Windows binaries, Gitea release, Gitea npm, Homebrew/Scoop for finals (see its runbook)

To migrate (after the baseline is stable)

Repository Type Needs Notes
QRun-IO/qqq-android Android AAR new Gradle/Android workflow android-build runner label
QRun-IO/scoop-bucket Windows Scoop bucket small scoop workflow 4 old workflows removed
KofTwentyTwo/Lukes-Rocket-Launcher CMake/PlatformIO firmware small build workflow
QRun-IO/ci-qualification old CI qualification probably retire
QRun-IO/Voyage app image + deploy container.yaml + GitOps parked: app broken (replicas 0)

Plus: an inventory of every remaining repository that has no workflow at all (decide CI or none).

No-CI triage (2026-11-07, proposal for owner sign-off)

Inventory of every repository with no .gitea/workflows (sweep of both orgs, 178 repos). Proposed bucket per repo; the owner confirms or moves items. "Needs CI" items join the migration table above in this order.

Needs CI — ships code (by workflow type):

  • container (live or deployable apps): QRun-IO/Voyage (parked), Concilium apps if revived, KofTwentyTwo/Aestimare, Forma, Claritas, limen, opifex-ordinis, business-agents, kof22-post, notion-sql, nuncio (check: superseded by nuncio-website?)
  • node.yaml: KofTwentyTwo/Website-Content (content lint). Migrated: qqq-frontend-core, qqq-frontend-component-sequential-workflow, obsidian-penny (node.yaml) and qqq-frontend-material-dashboard (really Maven + npm: maven.yaml) — see Done.
  • Checked and not Node/Maven (2026-11-07), re-bucketed: QRun-IO/qqq-templates-hub (one templates.yaml: small YAML lint at most), new-qqq-application-template (Velocity-templated Maven project rendered by an interactive Python script, pins QQQ 4.0.0: needs a render-then-mvn verify job — owner decision), qqq-meta-manager (shell scripts and docs: small shellcheck workflow), qqq-maven-registry (README only: no CI); KofTwentyTwo/gamut (JSON schema + one Python tool: small lint at most), jarvisdoc (docs only: no CI), license-tool (Go: migrated, see Done)
  • Gradle: QRun-IO/qqq-app-developer-intellij-plugin, KofTwentyTwo/intellij-commentator-plugin (migrated, see Done)
  • native: done or blocked, see above (AppKit and CommandTabFree turned out to be .NET/Windows and Swift/macOS; gclo-macos is README-only: no CI). Checked 2026-11-08, none is Go: gclo (.NET: windows.yaml), kfmtbox (Rust: needs a Rust workflow), Munitor (CircleCI orb: retire with the orbs), Jarvis (Swift: macos.yaml), jarvis-file (Node: node.yaml), ArmariumMinutum (empty: no CI); firmware — Lukes-Rocket-Launcher
  • small lint workflows: standards, Praetor, terraform-proxmox-talos, gamut, qqq-meta-manager, qqq-templates-hub done (see Done); open: nix (nix flake check), synology-tools; Galaxy-Cloud-Init legacy (not migrated)

Package manifests (tiny validation at most): KofTwentyTwo/homebrew-tap, winget-pkgs; QRun-IO/homebrew-tap, homebrew-qctl, scoop-bucket

No CI needed (docs, config, profiles, forks, notes): KofTwentyTwo/.github, .profile, KofTwentyTwo, Books, ClaudeCode, SecondBrain, second-brain, dotfiles, DMDBrands-InitialAssessment, System-Assessments, DevOps, Jellyfin, GalaxyLan-CA, datagrip, cache, download-artifact, upload-artifact, obsidian-releases; QRun-IO/.github, .github-private, .profile, .profile-private, Company-Obsidian

Retire / archive (superseded or dead): -pre-recovery-20261031 copies (AppKit, nuncio-website, qqq-frontend-core, qbit-standard-process-trace), ci-policy (both), qqq-orb, ci-fleet-qualification (both), ci-qualification, carl, carl-CD, makers4, Concilium, Concilium-CD, UnifiedDev, Unified-Development-2, qqq-mcp-rag, qqq-mcp-rag-standard-policies, qbit-template (KOF duplicates), k8s-app-of-apps, Website-CD, bigcapital-cd, marketing-website-cd, voyage-cd (GitOps now lives in cluster-gitops)

Instance/org-level leftovers of the old system: the retired platform-ci ci.yaml / native.yaml instance or org workflows still run on repos; delete them in Gitea admin (Actions workflow settings).

Not migrating (owner decisions)

carl, qqq-mcp-rag (retired), qbit-standard-process-trace-pre-recovery-*, UnifiedDev, KOF qbit-template-extension (duplicate), makers4, Concilium.

Old system teardown

  • Gitea publishers suspended (cluster-gitops #297)
  • Both ci-policy dispatchers off (QRun-IO/ci-policy #45, KofTwentyTwo/ci-policy #22)
  • Old workflow files removed from all repositories
  • Stale CI branches deleted
  • Archive platform-ci, both ci-policy, qqq-orb
  • Delete publisher apps/namespaces; revoke publisher accounts and tokens (Praetor)
  • Move v1 to include go.yaml, gradle.yaml and lint.yaml (owner): the 2026-11-08 small-workflow callers pin @v1
  • Re-enable required status checks (pause_status_checks.py --restore, pointed at new checks)