mirror of
https://github.com/pchuan98/codex.git
synced 2026-07-01 00:31:56 +08:00
b77fe8fefe
## Why Once the repo-local lint exists, `codex-rs` needs to follow the checked-in convention and CI needs to keep it from drifting. This commit applies the fallback `/*param*/` style consistently across existing positional literal call sites without changing those APIs. The longer-term preference is still to avoid APIs that require comments by choosing clearer parameter types and call shapes. This PR is intentionally the mechanical follow-through for the places where the existing signatures stay in place. After rebasing onto newer `main`, the rollout also had to cover newly introduced `tui_app_server` call sites. That made it clear the first cut of the CI job was too expensive for the common path: it was spending almost as much time installing `cargo-dylint` and re-testing the lint crate as a representative test job spends running product tests. The CI update keeps the full workspace enforcement but trims that extra overhead from ordinary `codex-rs` PRs. ## What changed - keep a dedicated `argument_comment_lint` job in `rust-ci` - mechanically annotate remaining opaque positional literals across `codex-rs` with exact `/*param*/` comments, including the rebased `tui_app_server` call sites that now fall under the lint - keep the checked-in style aligned with the lint policy by using `/*param*/` and leaving string and char literals uncommented - cache `cargo-dylint`, `dylint-link`, and the relevant Cargo registry/git metadata in the lint job - split changed-path detection so the lint crate's own `cargo test` step runs only when `tools/argument-comment-lint/*` or `rust-ci.yml` changes - continue to run the repo wrapper over the `codex-rs` workspace, so product-code enforcement is unchanged Most of the code changes in this commit are intentionally mechanical comment rewrites or insertions driven by the lint itself. ## Verification - `./tools/argument-comment-lint/run.sh --workspace` - `cargo test -p codex-tui-app-server -p codex-tui` - parsed `.github/workflows/rust-ci.yml` locally with PyYAML --- * -> #14652 * #14651
36 lines
833 B
Rust
36 lines
833 B
Rust
use codex_tui::ComposerInput;
|
|
|
|
pub struct NewTaskPage {
|
|
pub composer: ComposerInput,
|
|
pub submitting: bool,
|
|
pub env_id: Option<String>,
|
|
pub best_of_n: usize,
|
|
}
|
|
|
|
impl NewTaskPage {
|
|
pub fn new(env_id: Option<String>, best_of_n: usize) -> Self {
|
|
let mut composer = ComposerInput::new();
|
|
composer.set_hint_items(vec![
|
|
("⏎", "send"),
|
|
("Shift+⏎", "newline"),
|
|
("Ctrl+O", "env"),
|
|
("Ctrl+N", "attempts"),
|
|
("Ctrl+C", "quit"),
|
|
]);
|
|
Self {
|
|
composer,
|
|
submitting: false,
|
|
env_id,
|
|
best_of_n,
|
|
}
|
|
}
|
|
|
|
// Additional helpers can be added as usage evolves.
|
|
}
|
|
|
|
impl Default for NewTaskPage {
|
|
fn default() -> Self {
|
|
Self::new(/*env_id*/ None, /*best_of_n*/ 1)
|
|
}
|
|
}
|