Skip to content

Rename to Olympus (+ pantheon, roadmap, migration tooling)#8

Merged
vaderyang merged 6 commits into
mainfrom
docs/roadmap-v2
Jun 11, 2026
Merged

Rename to Olympus (+ pantheon, roadmap, migration tooling)#8
vaderyang merged 6 commits into
mainfrom
docs/roadmap-v2

Conversation

@vaderyang

Copy link
Copy Markdown
Contributor

Renames the mechanism agent-ops → Olympus and gives each loop surface the deity whose domain matches its function, plus the planning docs behind the move and a migration linter. Done now because the consumer count is zero (heron is still in-tree, self-dogfood dormant) — the one window where the breaking mechanism-layer rename costs a single self-contained change with no compatibility shims.

What's in it

Planning (docs)

  • docs/roadmap.md — rewritten as a 3-horizon open-source product roadmap (foundation/credibility → adoption/ecosystem → scale/fleet).
  • docs/improvement-plan.md — phased engineering plan (v0.2.x/v0.3/v0.4), each item tied to an audit finding + acceptance criterion.
  • docs/pantheon.md — the function→deity mapping, the two-layer rename scope, and the zero-consumer timing argument.

The rename (breaking, mechanism layer)

  • repo refs Netis/agent-opsNetis/olympus; workflow input agent_ops_refolympus_ref
  • config .agent-ops.json.olympus.json; schema/agent-ops.schema.jsonschema/olympus.schema.json
  • env prefixes AGENT_OPS_*OLYMPUS_*, MARA_*ARGUS_*; loader agent_ops_load_configolympus_load_config
  • pantheon (git mv keeps history): run_wiwi.shrun_hephaestus.sh, mara.sh/.service/.timerargus.*, test_mara.pytest_argus.py; default identities → themis/hephaestus

Folded-in identity fixes (improvement-plan 0.2-3, pure string→config var)

  • post_review.py footer reads OLYMPUS_REVIEW_BOT_LOGIN via a tested build_footer() helper — no hardcoded name
  • run_hephaestus.sh prompt + PR body use $OLYMPUS_DEV_AGENT_NAME / $OLYMPUS_REVIEW_BOT_LOGIN

Migration support

  • scripts/lint/check-legacy-naming.sh — flags pre-rename naming; runs in a consumer's repo as an upgrade pre-flight AND in this repo's CI as a regression guard (wired into ci.yml)
  • docs/migration.md — impact-by-pin-strategy: a wrapper pinned to a pre-rename tag keeps working (frozen tag + GitHub uses: redirect); a moving ref drifts to defaults; upgrading to an Olympus tag needs the mapping

Verification

  • shellcheck clean, bash -n clean
  • all unit + eval tests green; .olympus.json build_cmd runs green; every workflow-referenced path exists
  • leakage gate green (82 files)
  • legacy-naming self-check exits 0 on this repo; exits 1 with a correct change-list on a synthetic legacy consumer
  • rename re-verified clean with plain-substring greps across the full tree (git grep's regex engine has no \b, which initially gave a false-clean — see the linter commit)

Deliberately deferred

  • improvement-plan 0.2-3 remaining bullet: promote triage.yml's hardcoded agent:assess to a workflow input assess_label (changes the reusable-workflow input contract — kept separate from the pure rename)
  • improvement-plan 0.2-1 (P0 security): implement-agent sandboxing, prompt-injection containment, token stripping, actor gating

Operational follow-up (outside this PR, can't be done in-repo)

  • Rename the GitHub repo Netis/agent-opsNetis/olympus (settings) — GitHub then redirects old uses: paths
  • Rename/re-provision the review bot's GitHub account (review_bot_login: vivi→themis) and update AUTO_MERGE_TEAM / allowlists

🤖 Generated with Claude Code

Vader Yang and others added 6 commits June 11, 2026 16:33
…ent plan

Rewrite docs/roadmap.md as a three-horizon product roadmap for agent-ops
as an open-source multi-repo agentic maintenance product (foundation &
credibility → adoption & ecosystem → scale & fleet), absorbing the old
v0.2/v0.3+ items into Horizon 1. Add docs/improvement-plan.md with the
phased codebase-level breakdown (v0.2.x injection containment + prompt
generalization, v0.3 robustness + run-summary observability, v0.4
test/eval depth + community furniture), each item with rationale tied to
an audit finding and an acceptance criterion.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Add docs/pantheon.md: the function→deity mapping (Hermes triage,
Hephaestus implement/revise, Themis review, Argus observer, Cerberus
guard, Asclepius doctor, the Labours evals, Atlas fleet, Agora demo),
the two-layer rename scope (brand vs mechanism), and the zero-consumer
timing argument. Insert the rename as improvement-plan item 0.2-0 and
roadmap item H1.0, and switch all forward-looking references in both
docs to the Olympus names.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…heon

The zero-consumer window (improvement-plan 0.2-0): heron has not onboarded
and self-dogfood is dormant, so the breaking mechanism-layer rename costs one
self-contained change with no compatibility shims.

Brand + mechanism:
- repo refs Netis/agent-ops → Netis/olympus; workflow input agent_ops_ref →
  olympus_ref
- config file .agent-ops.json → .olympus.json; schema/agent-ops.schema.json →
  schema/olympus.schema.json
- env prefixes AGENT_OPS_* → OLYMPUS_*, MARA_* → ARGUS_*; loader
  agent_ops_load_config → olympus_load_config

Pantheon (function → deity):
- triage Hermes · implement/revise Hephaestus (run_wiwi.sh → run_hephaestus.sh)
  · review Themis · observer Argus (mara.sh/.service/.timer → argus.*,
  test_mara.py → test_argus.py)
- config.sh default identities → themis / hephaestus

Folds in improvement-plan 0.2-3 (pure string → config var):
- post_review.py footer now reads OLYMPUS_REVIEW_BOT_LOGIN via a tested
  build_footer() helper, never a hardcoded name
- run_hephaestus.sh prompt + PR body use $OLYMPUS_DEV_AGENT_NAME /
  $OLYMPUS_REVIEW_BOT_LOGIN
- argus systemd units de-heron-ed

Verified: shellcheck clean, bash -n clean, all unit + eval tests green,
leakage gate green, acceptance grep finds zero legacy tokens in the code tree.
(triage.yml assess_label input promotion — the remaining 0.2-3 bullet — and the
0.2-1 security work are deliberately left as follow-ups.)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Prose project name → Olympus; config/paths/env (.olympus.json, OLYMPUS_*,
olympus_ref, schema/olympus.schema.json) and runner labels/resource names
(self-hosted,olympus · olympus-runner) → lowercase olympus; agent names →
deities (run_hephaestus.sh, argus, themis). The pantheon/roadmap/improvement-plan
docs intentionally retain the legacy names where they document the rename.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…act doc

scripts/lint/check-legacy-naming.sh flags pre-rename naming (repo ref,
olympus_ref input, .olympus.json filename, env prefixes, runner label,
retired agent personas). Two users: a consumer upgrading to an Olympus tag
(run in repo root, prints exactly what to change), and this repo's own CI as
a regression guard so the rename can't silently leak back — wired into ci.yml.

docs/migration.md answers 'what breaks for an already-applied repo': a wrapper
pinned to a pre-rename tag keeps working (frozen tag content + GitHub uses:
redirect); a moving ref drifts to defaults; upgrading to an Olympus tag needs
the mapping. heron is unaffected — still in-tree, not a consumer yet.

Note: git grep's regex engine has no \b word-boundary support, so the linter
matches retired agent names by substring (COSMETIC) rather than \b; the rename
itself was re-verified clean with plain-substring greps across the full tree.

Verified: shellcheck clean; self-check exits 0 on this repo; exits 1 with a
correct change-list on a synthetic legacy consumer; leakage gate green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…@sha

The reusable workflows hardcoded `repository: Netis/olympus` for the
mechanism-scripts checkout. With the GitHub repo still named agent-ops, the
self-guard run failed: 'repository Netis/olympus not found'. Add an
`olympus_repo` input (default Netis/olympus — consumer behavior unchanged) and
have the self-*.yml wrappers pass `github.repository` + `github.sha`.

Self-dogfood now fetches THIS repo at THIS commit: name-agnostic (works before
and after the GitHub repo rename) and it tests the current branch's scripts
instead of main's (a pre-existing quirk). Applied to all six reusable workflows
and five self wrappers.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vaderyang
vaderyang merged commit 0131660 into main Jun 11, 2026
2 checks passed
@vaderyang
vaderyang deleted the docs/roadmap-v2 branch June 11, 2026 15:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant