fix(#714): add action:help to top-level help json, render_export_help_json, render_help_topic_json, and resume repl help json

This commit is contained in:
YeonGyu-Kim
2026-05-26 04:03:34 +09:00
parent 7d6b2044d5
commit 7037d84d52
2 changed files with 8 additions and 1 deletions

View File

@@ -7593,3 +7593,5 @@ Original filing (2026-04-18): the session emitted `SessionStart hook (completed)
712. **`doctor`, `status`, `bootstrap-plan`, and `dump-manifests` `--output-format json` responses missing `action` field — consistent with batch of missing-action fixes in #710/#711** — dogfooded 2026-05-26 on `bae0099c`. `doctor` returned no `action`; `status` and `bootstrap-plan` same. `dump-manifests` had empty string. Fix: added `action:"doctor"` to doctor JSON, `action:"show"` to status and bootstrap-plan, `action:"dump"` to dump-manifests happy path. Source: Jobdori dogfood on `bae0099c`, 2026-05-26.
713. **`acp` and `config` (bare and section-show) `--output-format json` responses missing `action` field — continues sweep from #710#712** — dogfooded 2026-05-26 on `fdde5e45`. `acp` had no action; `config` bare had no action; `config <section>` and the unknown-section error path both had no action. Fix: added `action:"status"` to acp, `action:"list"` to config bare, `action:"show"` to config section-show and unknown-section error path. Source: Jobdori dogfood on `fdde5e45`, 2026-05-26.
714. **`help --output-format json` missing `action` field; resume `/help` JSON path also missing `action` and `status`** — dogfooded 2026-05-26 on `7d6b2044`. Top-level `claw help --output-format json` returned `{kind:"help", status:"ok"}` with no `action`. The `render_export_help_json` and `render_help_topic_json` resume-path helpers were also missing `action`. The resume REPL help JSON object had neither `action` nor `status`. Fix: added `action:"help"` (and `status:"ok"` where missing) to all 4 help JSON sites. Source: Jobdori dogfood on `7d6b2044`, 2026-05-26.

View File

@@ -3986,7 +3986,9 @@ fn run_resume_command(
SlashCommand::Help => Ok(ResumeCommandOutcome {
session: session.clone(),
message: Some(render_repl_help()),
json: Some(serde_json::json!({ "kind": "help", "text": render_repl_help() })),
json: Some(
serde_json::json!({ "kind": "help", "action": "help", "status": "ok", "text": render_repl_help() }),
),
}),
SlashCommand::Compact => {
let result = runtime::trident::trident_compact_session(
@@ -7231,6 +7233,7 @@ fn local_help_topic_command(topic: LocalHelpTopic) -> &'static str {
fn render_export_help_json() -> serde_json::Value {
json!({
"kind": "help",
"action": "help",
"status": "ok",
"topic": "export",
"command": "export",
@@ -7279,6 +7282,7 @@ fn render_help_topic_json(topic: LocalHelpTopic) -> serde_json::Value {
json!({
"kind": "help",
"action": "help",
"status": "ok",
"topic": local_help_topic_command(topic),
"command": local_help_topic_command(topic),
@@ -10615,6 +10619,7 @@ fn print_help(output_format: CliOutputFormat) -> Result<(), Box<dyn std::error::
"{}",
serde_json::to_string_pretty(&json!({
"kind": "help",
"action": "help",
"status": "ok",
"message": message,
}))?