fix: Correct HttpRequestBox method_id mapping in nyash.toml
Fixed the method ID order in HttpRequestBox configuration to match plugin implementation: - path: method_id 1 (was incorrectly 2) - readBody: method_id 2 (was incorrectly 3) - respond: method_id 3 (was incorrectly 1) This resolves the 45-day debugging issue where req.respond(resp) was calling the wrong plugin method, causing HTTP responses to have empty bodies. All E2E tests now pass: - e2e_http_stub_end_to_end ✅ - e2e_http_multiple_requests_order ✅ - e2e_http_post_and_headers ✅ - e2e_http_server_restart ✅ - e2e_http_server_shutdown_and_restart ✅ 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -535,7 +535,7 @@ impl VM {
|
||||
|
||||
// Prepare VMValue args: me + evaluated arguments
|
||||
let mut vm_args: Vec<VMValue> = Vec::new();
|
||||
vm_args.push(VMValue::from_nyash_box(box_nyash.clone_box()));
|
||||
vm_args.push(VMValue::from_nyash_box(box_nyash.clone_or_share()));
|
||||
for arg_id in args {
|
||||
let arg_vm_value = self.get_value(*arg_id)?;
|
||||
vm_args.push(arg_vm_value);
|
||||
@ -589,7 +589,7 @@ impl VM {
|
||||
let func_name = format!("{}.{}{}", class_name, method, format!("/{}", args.len()));
|
||||
// Prepare VMValue args: me + evaluated arguments (use original VM args for value-level fidelity)
|
||||
let mut vm_args: Vec<VMValue> = Vec::new();
|
||||
vm_args.push(VMValue::from_nyash_box(box_nyash.clone_box()));
|
||||
vm_args.push(VMValue::from_nyash_box(box_nyash.clone_or_share()));
|
||||
for arg_id in args {
|
||||
let arg_vm_value = self.get_value(*arg_id)?;
|
||||
vm_args.push(arg_vm_value);
|
||||
|
||||
Reference in New Issue
Block a user