feat: Implement returns_result and improve HTTP plugin stability

- Add returns_result=true configuration for HTTP server methods
- Fix ResultBox downcasting in interpreter calls
- Improve HTTP plugin with server_id tracking and response ID hints
- Add TCP connection support with fallback to stub mode
- Implement response ID mapping improvements
- Fix various race conditions in concurrent request handling

This partially addresses the HTTP response body empty issue, though
ID mapping still needs further refinement.

Co-Authored-By: ChatGPT5 <noreply@openai.com>
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Moe Charm
2025-08-22 09:57:07 +09:00
parent a5d5c19c1d
commit 0915815340
3 changed files with 350 additions and 131 deletions

View File

@ -270,7 +270,7 @@ impl NyashInterpreter {
*/
// ResultBox method calls
if let Some(result_box) = obj_value.as_any().downcast_ref::<crate::box_trait::ResultBox>() {
if let Some(result_box) = obj_value.as_any().downcast_ref::<crate::boxes::ResultBox>() {
return self.execute_result_method(result_box, method, arguments);
}