6c9c7fe7f3
CI / integration tests (3.13) (push) Failing after 1s
Commit lint / pull request title (push) Has been skipped
Docs / links (push) Failing after 1s
CI / unit tests (3.13) (push) Failing after 1s
CI / lint (push) Failing after 1s
CI / integration tests (push) Failing after 1s
CI / package build (push) Failing after 1s
Commit lint / commit messages (push) Failing after 1s
CI / unit tests (push) Failing after 1s
5.1 KiB
5.1 KiB
GitHub Sync Guard
This page records the rules for refreshing the public GitHub repository (EverMind-AI/EverOS) from the internal GitLab source.
Core Principle
GitLab dev is the source of truth. GitHub main is the public release
mirror. The two repos have no shared commit history — GitHub receives
packaged exports, not git pushes.
1. Must Delete on GitHub
These files exist on GitHub but are obsolete — delete them during sync:
| File | Reason |
|---|---|
docs/locomo_benchmark.md |
Replaced by benchmarks/README.md |
tests/run_locomo_10x3.sh |
Replaced by benchmarks/run.py |
tests/run_locomo_batch.sh |
Replaced by benchmarks/run.py |
tests/run_locomo_full.sh |
Replaced by benchmarks/run.py |
tests/test_locomo.py |
Replaced by benchmarks/run.py |
src/everos/memory/strategies/_partition_locks.py |
Wrong path; correct location is src/everos/memory/_partition_locks.py |
2. Must Preserve on GitHub (Do NOT Overwrite)
These files have GitHub-specific content (branch model, PR workflow, community-facing text). Keep the GitHub versions:
Workflow & CI
CLAUDE.md— saysmainbranch, notdev/masterCONTRIBUTING.md— says "curated PR contributions", not "no external PRs".github/PULL_REQUEST_TEMPLATE.md— GitHub PR template.github/BRANCH_PROTECTION.md— GitHub branch protection rules.github/workflows/ci.yml— targetsmain, usesactions/checkout@v6.github/workflows/docs.yml— GitHub-only doc checks.github/workflows/commits.yml— GitHub-only commit lint.github/ISSUE_TEMPLATE/**—.ymlformat (GitLab uses.md).github/dependabot.yml— GitHub-only dependency scanning
Claude Code rules & skills
.claude/rules/*.md— GitHub versions are simplified for contributors.claude/skills/commit/SKILL.md— Conventional Commits (vs Gitmoji).claude/skills/new-branch/SKILL.md— branches frommain(vsdev).claude/skills/pr/SKILL.md— GitHub PR (vs GitLab MR).claude/settings.json— GitHub permission set (includesgh pr)
GitHub-only scripts & tests
scripts/check_commit_messages.pyscripts/check_deprecated_names.pyscripts/check_docs.pyscripts/check_github_contributor_docs.pyscripts/check_pr_title.pyscripts/check_repo_assets.pytests/unit/test_scripts/test_check_*.py
Root docs (GitHub version has different content)
README.md— GitHub version has banner, badges, use-case galleryMakefile— GitHub version has extra targets (docs-check, package, etc.)
3. Overwrite from GitLab
Everything not in sections 1 or 2 should be overwritten from GitLab, including but not limited to:
- All
src/everos/**source code - All
tests/unit/**andtests/integration/**andtests/e2e/** pyproject.toml,uv.lockQUICKSTART.md,SECURITY.mdCHANGELOG.md,CITATION.md,ACKNOWLEDGMENTS.mddocs/*.md(except those listed in Must Delete)docs/openapi.jsonbenchmarks/**.gitignore.gitlab-ci.yml(harmless on GitHub, good to keep in sync)
4. Do NOT Sync to GitHub
These files are GitLab-internal and should not appear on GitHub:
| File | Reason |
|---|---|
.gitlab/merge_request_templates/ |
GitLab-only |
.vscode/ |
IDE preference |
.claude/skills/release/SKILL.md |
Internal release workflow |
local/ |
Temporary design docs |
evaluation/ |
Empty module |
5. Do NOT Sync to GitLab
These files are GitHub-only and should stay only on GitHub:
| Category | Files |
|---|---|
| use-cases/ | 90 files (claude-code-plugin, game-of-throne-demo, openher) |
| GitHub CI scripts | scripts/check_*.py + tests |
| GitHub CI workflows | commits.yml, docs.yml |
| Config | .gitlint, .env.example (root level) |
| Docs | docs/use-cases.md |
Safe Sync Pattern
# 1. Clone both repos
git clone <gitlab> gitlab-export
git clone <github> github-checkout
# 2. Sync with excludes
rsync -a --delete \
--exclude '.git' \
--exclude 'CLAUDE.md' \
--exclude 'CONTRIBUTING.md' \
--exclude 'README.md' \
--exclude 'Makefile' \
--exclude '.github/' \
--exclude '.claude/rules/' \
--exclude '.claude/skills/' \
--exclude '.claude/settings.json' \
--exclude 'scripts/check_*.py' \
--exclude 'tests/unit/test_scripts/' \
--exclude 'use-cases/' \
--exclude 'local/' \
--exclude 'evaluation/' \
--exclude '.vscode/' \
--exclude '.gitlab/' \
--exclude '.gitlab-ci.yml' \
gitlab-export/ github-checkout/
# 3. Delete obsolete files
cd github-checkout
rm -f docs/locomo_benchmark.md
rm -f tests/run_locomo_10x3.sh tests/run_locomo_batch.sh tests/run_locomo_full.sh
rm -f tests/test_locomo.py
rm -f src/everos/memory/strategies/_partition_locks.py
# 4. Verify
make lint
make test
Review Checklist
Before opening the sync PR on GitHub:
CLAUDE.mdsays branches are created frommain.claude/skills/pr/SKILL.mdcreates PRs with--base mainCONTRIBUTING.mdsays "GitHub pull request", not internal terminology- Obsolete files from section 1 are deleted
make lintandmake testpass- No
.gitlab-ci.yml,.vscode/,local/,evaluation/leaked in