Skip to content

refactor(ceres): introduce application/transport/bus layers and thin mono routers#2138

Merged
genedna merged 3 commits into
gitmono-dev:mainfrom
benjamin-747:main
Jun 30, 2026
Merged

refactor(ceres): introduce application/transport/bus layers and thin mono routers#2138
genedna merged 3 commits into
gitmono-dev:mainfrom
benjamin-747:main

Conversation

@benjamin-747

Copy link
Copy Markdown
Collaborator

No description provided.

…ervice/mono

Replace the monolithic mono_api_service.rs with focused modules for CL,
edit, buck, admin, sync, tag, and shared logic. Move admin/group/bot ops
into mono/admin, extract tag_ops for import repo APIs, and add mono ref
upsert helpers for sync and merge flows. Update call sites across ceres,
mono, and jupiter, and extract web sync path utilities with tests.
…mono routers

Reorganize ceres into transport (Git protocol/pack), application (API,
code_edit, build_trigger), infra, and bus, with legacy re-exports in
lib.rs for mono compatibility. Extract post-receive handlers, CL
lifecycle logic, and split jupiter converter into focused modules.
Delegate CL/merge-queue orchestration from mono routers to MonoApiService,
bump workspace deps, and document the new module layout in ceres/README.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ffa2a535d8

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment on lines +244 to +245
let resource_type_value = ResourceTypeValue::try_from(resource_type)
.map_err(|err| MegaError::Other(err.to_string()))?;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preserve bad-request status for invalid resource types

When a client calls the group-permission endpoints with an unknown resource_type, this now wraps the validation failure in MegaError::Other. The router maps this via ApiError::from, and ApiError treats Other errors without a [code:400] marker as HTTP 500 with a generic message; the previous router code returned ApiError::bad_request. Please keep this as a client validation error so invalid path parameters continue to return 400 instead of an internal-server-error response.

Useful? React with 👍 / 👎.

@genedna genedna added this pull request to the merge queue Jun 30, 2026
Merged via the queue into gitmono-dev:main with commit 14d677b Jun 30, 2026
9 checks passed
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.

2 participants