3.2 KiB
3.2 KiB
| name | description |
|---|---|
| jojo-development-flow | Use when working in this repository on development flow, remotes, jojo.build operations, Codeberg mirroring, branch tracking, commit signing, jojo Actions, npm trusted publishing, release validation, or publishing @peezy.tech/codex-flows. |
Jojo Development Flow
Overview
Use jojo.build as the canonical development home for peezy-tech/codex-flows. Codeberg is a push mirror. GitHub is only for npm trusted publishing.
Current Structure
- Canonical repo:
https://jojo.build/peezy-tech/codex-flows - Git remote
origin:git@jojo.build:peezy-tech/codex-flows.git - Git remote
codeberg:git@codeberg.org:peezy-tech/codex-flows.git - Git remote
github:https://github.com/peezy-tech/codex-flows.git maintracksorigin/main.jojo.buildpush-mirrorsmainto Codeberg.- GitHub is pushed manually only when npm trusted publishing needs the release workflow.
Accounts And Access
- Human/admin account:
peezy - Host development worker account:
matamune - Organization:
peezy-tech - Both users are in the
peezy-techOwners team. matamuneis active but is not a site admin.peezyis the site admin account and has 2FA enabled.
Core Rules
- Push normal development to
origin. - Do not treat Codeberg as canonical; use it only as a mirror and recovery remote.
- Do not treat GitHub as a development remote.
- 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. - Before release work, verify
origin/mainandcodeberg/mainare aligned. - Keep commits signed when possible, but signed commits are not currently required by branch protection.
Setup Checks
When asked to set up or verify the repo, check:
git remote -v
git status --short --branch
ssh -T git@jojo.build
git ls-remote origin refs/heads/main
git ls-remote codeberg refs/heads/main
gpg --list-secret-keys --keyid-format=long
Expected local key files:
~/.ssh/id_ed25519_codeberg.pub
~/.config/forgejo-keys/matamune-jojo-build-ssh.pub
~/.config/forgejo-keys/matamune-jojo-build-gpg.asc
Jojo CI
main is protected on jojo.build.
- Owners can push and merge.
- Required status context:
ci / check (push) - The workflow lives at
.forgejo/workflows/ci.yml. - The runner is
jojo-build-runner-01.
The CI workflow runs:
bun install --frozen-lockfile
bun run check:types
bun run test
bun run --filter @peezy.tech/codex-flows release:check
Release Workflow
Normal development:
git pull
git push
Before release, run:
bun run --filter @peezy.tech/codex-flows release:check
bun run check:types
bun run test
git diff --check
Then:
- Bump
packages/codex-client/package.json. - Commit.
- Push to jojo:
git push. - Confirm Codeberg mirror has received the commit.
- Push to GitHub:
git push github main. - Run GitHub workflow
.github/workflows/publish-codex-flows.ymlwithconfirm_package=@peezy.tech/codex-flows. - Verify
npm dist-tag ls @peezy.tech/codex-flows.
References
- Read
references/development-flow.mdfor exact setup and command details.