2026-05-12 17:09:22 +00:00
---
name: codeberg-development-flow
2026-05-12 20:22:32 +00:00
description: Use when working in this repository on development flow, remotes, Forgejo or Codeberg CLI operations, Forgejo repo creation, branch tracking, commit signing, mirroring, npm trusted publishing, release validation, or publishing @peezy .tech/codex-flows.
2026-05-12 17:09:22 +00:00
---
2026-05-12 20:22:32 +00:00
# Forgejo Development Flow
2026-05-12 17:09:22 +00:00
## Overview
2026-05-12 20:22:32 +00:00
Use Forgejo at `jojo.build` as the primary development forge. Keep Codeberg as a push mirror. Keep GitHub for npm trusted publishing only.
2026-05-12 17:09:22 +00:00
## Core Rules
2026-05-12 20:22:32 +00:00
- Treat `origin` as Forgejo: `git@jojo.build:peezy-tech/codex-flows.git` .
- Treat `codeberg` as the Codeberg mirror: `git@codeberg.org:peezy-tech/codex-flows.git` .
- Treat `github` as the GitHub publishing remote: `https://github.com/peezy-tech/codex-flows.git` .
2026-05-12 17:18:57 +00:00
- Keep `main` tracking `origin/main` , not `github/main` .
2026-05-12 20:22:32 +00:00
- Push normal development to Forgejo.
- Configure Forgejo to push-mirror to Codeberg.
2026-05-12 17:09:22 +00:00
- Push to GitHub only when the release workflow must publish to npm.
- Do not add npm tokens to the repo or GitHub secrets. GitHub publishes through trusted publishing.
- Use package name `@peezy.tech/codex-flows` , not `@peezy-tech/codex-flows` .
## Setup Checks
When asked to set up or verify the repo, check:
```bash
git remote -v
2026-05-12 20:22:32 +00:00
ssh -T git@jojo .build
fj --host jojo.build auth list
2026-05-12 17:09:22 +00:00
gpg --list-secret-keys --keyid-format=long
2026-05-12 17:18:57 +00:00
git status --short --branch
2026-05-12 17:09:22 +00:00
```
Expected local key files:
```text
2026-05-12 20:22:32 +00:00
~/.ssh/id_ed25519_jojo_build.pub
~/.config/forgejo-keys/matamune-jojo-build-gpg.asc
2026-05-12 17:09:22 +00:00
```
## Release Workflow
2026-05-12 17:18:57 +00:00
Normal development:
```bash
git pull
git push
```
2026-05-12 17:09:22 +00:00
Before release, run:
```bash
bun run --filter @peezy .tech/codex-flows release:check
bun run check:types
bun run test
git diff --check
```
Then:
1. Bump `packages/codex-client/package.json` .
2. Commit.
2026-05-12 20:22:32 +00:00
3. Push to Forgejo: `git push` .
4. Confirm Codeberg mirror has received the commit.
5. Push to GitHub: `git push github main` .
6. Run GitHub workflow `.github/workflows/publish-codex-flows.yml` with `confirm_package=@peezy.tech/codex-flows` .
2026-05-12 17:09:22 +00:00
6. Verify `npm dist-tag ls @peezy.tech/codex-flows` .
## References
- Read `references/development-flow.md` for exact setup and command details.