// Step 1917: Sprint 277 Integration // poly-api project: Go HTTP server + TypeScript client. // The orchestrator opens both files, handles cross-language goto-definition // (TS client calls Go handler), aggregates diagnostics from both servers, // and merges completions from both LSPs. // // t1: poly-api symbol table loads Go+TS boundary // t2: orchestrator opens Go+TS docs via didOpen messages // t3: TS→Go cross-language goto-definition resolves through orchestrator // t4: diagnostics from gopls + tsserver aggregated per URI // t5: completions merged from gopls + tsserver, deduped; summary accurate // t6 (bonus): Sprint277IntegrationSummary reports complete #include "LSPOrchestrator.h" #include "ABIBoundaryExtractor.h" #include "CrossLanguageSymbolTable.h" #include "Sprint277IntegrationSummary.h" #include #include using json = nlohmann::json; namespace ws = whetstone; static int p=0,f=0; #define T(n) { std::cout<<" "<<#n<<"... "; } #define P() { std::cout<<"PASS\n"; ++p; } #define F(m) { std::cout<<"FAIL: "< 0 ? 1 : 0; }