plano/tests/e2e
Adil Hafeez 1df43872a6
Fix code scanning and dependabot security alerts (#756)
* Fix code scanning and dependabot security alerts

Code scanning fixes (14 alerts):
- Fix XSS in OG image route by validating request origin against allowlist
- Fix incomplete URL sanitization in blog layout using exact hostname matching
- Bind port-check socket to 127.0.0.1 instead of 0.0.0.0
- Add explicit permissions to 7 GitHub Actions workflows

Dependabot fixes:
- Update @isaacs/brace-expansion 5.0.0 -> 5.0.1 (CVE-2026-25547)
- Update bytes 1.10.1 -> 1.11.1 (CVE-2026-25541)
- Update time 0.3.41 -> 0.3.47 (CVE-2026-25727)
- Update cryptography 45.0.7 -> 46.0.5 (CVE-2026-26007)
- Update python-multipart 0.0.20 -> 0.0.22 (CVE-2026-24486)
- Update urllib3 2.6.2 -> 2.6.3 in test lockfiles (CVE-2026-21441)
- Update Werkzeug 3.1.4 -> 3.1.5 (CVE-2026-21860)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Address PR review feedback

- Replace plano.katanemo.com with planoai.dev in allowed hosts
- Add planoai.dev to OG route and blog layout allowlists
- Revert socket bind to 0.0.0.0 (intentional for port-in-use check)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 12:27:07 -08:00
..
.vscode better model names (#517) 2025-07-11 16:42:16 -07:00
common.py Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
common_scripts.sh Use intent model from archfc to pick prompt gateway (#328) 2024-12-20 13:25:01 -08:00
config_memory_state_v1_responses.yaml rename cli to plano (#647) 2025-12-23 18:37:58 -08:00
docker-compose.yaml Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
pyproject.toml improve e2e tests (#731) 2026-02-09 13:20:06 -08:00
README.md Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
response.hex Add support for Amazon Bedrock Converse and ConverseStream (#588) 2025-10-22 11:31:21 -07:00
response_with_tools.hex Add support for Amazon Bedrock Converse and ConverseStream (#588) 2025-10-22 11:31:21 -07:00
run_e2e_tests.sh Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
run_model_alias_tests.sh Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
run_prompt_gateway_tests.sh Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
run_responses_state_tests.sh Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
test_model_alias_routing.py Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
test_openai_responses_api_client.py disable bedrock tests (#732) 2026-02-10 00:34:00 -08:00
test_openai_responses_api_client_with_state.py enable state management for v1/responses (#631) 2025-12-17 12:18:38 -08:00
test_prompt_gateway.py Rename all arch references to plano (#745) 2026-02-13 15:16:56 -08:00
uv.lock Fix code scanning and dependabot security alerts (#756) 2026-02-14 12:27:07 -08:00

e2e tests

e2e tests for arch llm gateway and prompt gateway

To be able to run e2e tests successfully run_e2e_script prepares environment in following way,

  1. build and start weather_forecast demo (using docker compose)
  2. build, install and start model server async (using uv)
  3. build and start Plano gateway (using docker compose)
  4. wait for model server to be ready
  5. wait for Plano gateway to be ready
  6. start e2e tests (using uv)
    1. runs llm gateway tests for llm routing
    2. runs prompt gateway tests to test function calling, parameter gathering and summarization
  7. cleanup
    1. stops Plano gateway
    2. stops model server
    3. stops weather_forecast demo

How to run

To run locally make sure that following requirements are met.

Requirements

  • Python 3.10
  • uv
  • Docker

Running tests locally

sh run_e2e_test.sh