mirror of
https://github.com/pchuan98/codex.git
synced 2026-07-01 00:31:56 +08:00
e93dc98a48
## Summary PR 1 of 5 in the cloud-managed config client stack. Adds the generated backend models and client transport surface for the config bundle endpoint. This bundle endpoint is the replacement backend surface for legacy cloud requirements; the final PR in the stack switches runtime consumers over to it. ## Details - This is transport-only plumbing: no runtime config behavior changes in this PR. - The bundle endpoint is the new shared backend surface for cloud-delivered config and requirements data. - Both supported path styles are wired here: `/api/codex/config/bundle` and `/wham/config/bundle`. - The response types come from generated backend models so later PRs consume the backend contract directly instead of maintaining hand-written mirror structs. ## Validation Validated through the targeted stack checks after rebasing onto current `main`: - Rust crate tests for config/hooks/cloud-config/backend-client/app-server-protocol - Filtered `codex-core` and `codex-app-server` `cloud_config_bundle` tests - Python generated-file contract test - `cargo shear --deny-warnings` - Targeted `argument-comment-lint` for config/hooks
41 lines
1002 B
Rust
41 lines
1002 B
Rust
/*
|
|
* codex-backend
|
|
*
|
|
* codex-backend
|
|
*
|
|
* The version of the OpenAPI document: 0.0.1
|
|
*
|
|
* Generated by: https://openapi-generator.tech
|
|
*/
|
|
|
|
use crate::models;
|
|
use serde::Deserialize;
|
|
use serde::Serialize;
|
|
|
|
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
|
|
pub struct ConfigBundleResponse {
|
|
#[serde(
|
|
rename = "config_toml",
|
|
default,
|
|
with = "::serde_with::rust::double_option",
|
|
skip_serializing_if = "Option::is_none"
|
|
)]
|
|
pub config_toml: Option<Option<Box<models::DeliveredConfigToml>>>,
|
|
#[serde(
|
|
rename = "requirements_toml",
|
|
default,
|
|
with = "::serde_with::rust::double_option",
|
|
skip_serializing_if = "Option::is_none"
|
|
)]
|
|
pub requirements_toml: Option<Option<Box<models::DeliveredRequirementsToml>>>,
|
|
}
|
|
|
|
impl ConfigBundleResponse {
|
|
pub fn new() -> ConfigBundleResponse {
|
|
ConfigBundleResponse {
|
|
config_toml: None,
|
|
requirements_toml: None,
|
|
}
|
|
}
|
|
}
|