feat(ai): 建立 PixelRAG application portfolio
This commit is contained in:
86
tests/test_pixelrag_application_portfolio_service.py
Normal file
86
tests/test_pixelrag_application_portfolio_service.py
Normal file
@@ -0,0 +1,86 @@
|
||||
import json
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
|
||||
def test_pixelrag_application_portfolio_prioritizes_commerce_and_guardrails():
|
||||
from services.pixelrag_application_portfolio_service import (
|
||||
POLICY,
|
||||
build_pixelrag_application_portfolio,
|
||||
)
|
||||
|
||||
payload = build_pixelrag_application_portfolio(include_forbidden=True)
|
||||
lanes = {item["id"]: item for item in payload["lanes"]}
|
||||
|
||||
assert payload["policy"] == POLICY
|
||||
assert payload["status"] == "portfolio_ready"
|
||||
assert payload["summary"]["lane_count"] >= 10
|
||||
assert payload["summary"]["worker_required_count"] >= 1
|
||||
assert "commerce.marketplace_visual_offer_cards" in lanes
|
||||
assert lanes["commerce.marketplace_visual_offer_cards"]["priority"] == "P0"
|
||||
assert lanes["commerce.marketplace_visual_offer_cards"]["next_machine_action"] == (
|
||||
"run_ollama_first_vlm_replay_worker"
|
||||
)
|
||||
assert "Google Merchant product data" in lanes[
|
||||
"commerce.product_feed_and_structured_data_gap_check"
|
||||
]["integrates_with"]
|
||||
assert lanes["commerce.platform_barrier_classifier"]["status"] == (
|
||||
"production_contract_ready"
|
||||
)
|
||||
assert lanes["forbidden.personalized_or_private_state"]["status"] == "forbidden"
|
||||
assert payload["controlled_apply"]["db_write"] is False
|
||||
assert payload["controlled_apply"]["primary_human_gate_count"] == 0
|
||||
assert any(item["id"] == "pixelrag_visual_rag_pattern" for item in payload["source_basis"])
|
||||
assert payload["recommended_order"][0]["priority"] == "P0"
|
||||
|
||||
|
||||
def test_pixelrag_application_portfolio_filters_area_without_forbidden_by_default():
|
||||
from services.pixelrag_application_portfolio_service import build_pixelrag_application_portfolio
|
||||
|
||||
payload = build_pixelrag_application_portfolio(area="governance")
|
||||
|
||||
assert {item["area"] for item in payload["lanes"]} == {"governance"}
|
||||
assert all(item["status"] != "forbidden" for item in payload["lanes"])
|
||||
assert payload["summary"]["lane_count"] == 1
|
||||
assert payload["lanes"][0]["id"] == "commerce.platform_barrier_classifier"
|
||||
|
||||
|
||||
def test_pixelrag_application_portfolio_cli_outputs_machine_readable_json():
|
||||
completed = subprocess.run(
|
||||
[
|
||||
sys.executable,
|
||||
"scripts/ops/report_pixelrag_application_portfolio.py",
|
||||
"--area",
|
||||
"commerce",
|
||||
"--priority",
|
||||
"P1",
|
||||
],
|
||||
capture_output=True,
|
||||
check=False,
|
||||
text=True,
|
||||
)
|
||||
|
||||
assert completed.returncode == 0
|
||||
payload = json.loads(completed.stdout)
|
||||
assert payload["success"] is True
|
||||
assert payload["filters"]["area"] == "commerce"
|
||||
assert payload["filters"]["priority"] == "P1"
|
||||
assert {item["priority"] for item in payload["lanes"]} == {"P1"}
|
||||
assert payload["controlled_apply"]["network_call"] is False
|
||||
|
||||
|
||||
def test_pixelrag_application_portfolio_route_returns_readback():
|
||||
from flask import Flask
|
||||
from routes import system_public_routes as routes
|
||||
|
||||
app = Flask(__name__)
|
||||
with app.test_request_context(
|
||||
"/api/ai-automation/pixelrag-application-portfolio?area=rag"
|
||||
):
|
||||
response = routes.ai_automation_pixelrag_application_portfolio_api.__wrapped__()
|
||||
payload = response.get_json()
|
||||
|
||||
assert payload["policy"] == "read_only_pixelrag_application_portfolio_v1"
|
||||
assert payload["filters"]["area"] == "rag"
|
||||
assert {item["area"] for item in payload["lanes"]} == {"rag"}
|
||||
assert payload["next_machine_action"] == "run_ollama_first_vlm_replay_worker"
|
||||
Reference in New Issue
Block a user