feat: re-enable aiohttp/psycopg2 and add falcon v3/sanic v2 plugins (#389)
## Summary
Re-enable previously skipped plugins, add new plugins for modern framework versions, fix E2E flaky tests, and improve plugin test stability.
### New Plugins
- `sw_falcon_v3.py`: Falcon 3.x/4.x plugin, hooks `falcon.App.__call__`. Replaces abandoned hug-based `sw_falcon` for modern Falcon.
- `sw_sanic_v2.py`: Sanic 21.9+ plugin, uses `@app.on_request`/`@app.on_response` signal listeners instead of monkey-patching `handle_request` (Sanic's touchup system recompiles patched methods via `compile()+exec()`, losing closure variables).
### Re-enabled Plugins
- `sw_aiohttp.py`: Was `>=3.8: []` (fully skipped). Now tests aiohttp 3.9/3.11. Fixed `_handle_request` signature (`*args` for forward compat). Fixed `request.url` ValueError with yarl >= 1.18 (fallback URL construction).
- `sw_psycopg2.py`: Was `>=3.10: []` (skipped). Now tests `2.9.*` on all supported Python versions.
### New Test Directories
- `tests/plugin/web/sw_falcon_v3/`: Full integration test with Falcon-native services using `wsgiref`.
- `tests/plugin/web/sw_sanic_v2/`: Full integration test with `single_process=True` Sanic services.
### E2E Flaky Fixes
- `tracing-cases.yaml`: `endpointnames[0]` → `endpointnames[]` in yq select (matches endpoint at any array position).
- `logging-cases.yaml`: Same fix.
- `traces-list.yml`: Hardcoded `/artist-provider` → `{{ regexp . "/artist-(consumer|provider)" }}` (endpoint name is non-deterministic from OAP).
### Test Stability
- `base.py`: Increased validation retry from 1×10s to 3× with backoff (5s/10s/15s = 30s total max). Fixes timing-sensitive tests (e.g., happybase) where segments haven't arrived at the collector yet.
### Docs
- `Plugins.md`: Regenerated with new plugins and updated versions.25 files changed