/feedback opens the Kigi GitHub issues page
Feedback about an unofficial community build belongs on its own issue tracker, not Moonshot's feedback endpoint — and this mirrors the official kimi-cli, whose /feedback opens its repo's issues page (ISSUE_URL in ui/shell/slash.py). /feedback now returns Action::OpenUrl(https://github.com/ZacharyZhang-NY/Kigi-CLI/issues), the same battle-tested browser path /docs web uses. The now-dead TUI text-feedback pipeline is excised: PromptInputMode:: Feedback (~ prefix composer mode), Action::{EnterFeedbackMode, SendFeedback}, Effect::SendFeedback (the kigi/feedback ACP POST), TaskResult::{FeedbackComplete,FeedbackFailed}, and their dispatchers. The shell-side kigi/feedback ACP extension stays: it is protocol surface for editor embeddings, OAuth-gated, and shared with kigi/btw. Gates: workspace check/clippy --all-targets 0/0, fmt, kigi-tui lib 6621 passed / 0 failed.
This commit is contained in:
1 parent
0692198719
commit
0dc98a34a6
11 files changed
+74
-221
No files matched your search
@@ -2599,61 +2599,6 @@ pub(crate) fn execute(
|
||||
}
|
||||
});
|
||||
}
|
||||
Effect::SendFeedback { agent_id, session_id, feedback_text } => {
|
||||
use kigi_shell::session::ClientType;
|
||||
use kigi_shell::session::acp_types::ClientFeedbackInput;
|
||||
let terminal_info = Some(
|
||||
crate::terminal::terminal_context().feedback_info(),
|
||||
);
|
||||
let tx = acp_tx.clone();
|
||||
tasks
|
||||
.spawn(async move {
|
||||
let input = ClientFeedbackInput {
|
||||
session_id: session_id.0.to_string(),
|
||||
client_type: ClientType::Tui,
|
||||
rating_type: None,
|
||||
rating_value: None,
|
||||
feedback_text: Some(feedback_text),
|
||||
feedback_categories: vec![],
|
||||
context_type: None,
|
||||
turn_number: None,
|
||||
request_id: None,
|
||||
client_version: Some(kigi_version::VERSION.to_string()),
|
||||
metadata: None,
|
||||
terminal_info,
|
||||
};
|
||||
let raw_params = match serde_json::value::to_raw_value(&input) {
|
||||
Ok(v) => v,
|
||||
Err(e) => {
|
||||
return TaskResult::FeedbackFailed {
|
||||
agent_id,
|
||||
error: sanitize_user_error(
|
||||
&format!("couldn't serialize feedback: {e}"),
|
||||
),
|
||||
};
|
||||
}
|
||||
};
|
||||
let request = acp::ExtRequest::new(
|
||||
"kigi/feedback",
|
||||
raw_params.into(),
|
||||
);
|
||||
match acp_send(request, &tx).await {
|
||||
Ok(_) => {
|
||||
TaskResult::FeedbackComplete {
|
||||
agent_id,
|
||||
}
|
||||
}
|
||||
Err(e) => {
|
||||
TaskResult::FeedbackFailed {
|
||||
agent_id,
|
||||
error: sanitize_user_error(
|
||||
&format!("couldn't send feedback: {e}"),
|
||||
),
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
Effect::RewriteMemoryNote {
|
||||
agent_id,
|
||||
session_id,
|
||||
|
||||
Reference in new issue
Block a user