feat(ai): add PixelRAG marketplace PromotionGate replay

This commit is contained in:
ogt
2026-07-10 12:11:46 +08:00
parent e2c8baf7ea
commit d0b14577cb
10 changed files with 1162 additions and 7 deletions

View File

@@ -1053,6 +1053,43 @@ def ai_automation_pixelrag_marketplace_identity_matcher_replay_api():
))
@system_public_bp.route('/api/ai-automation/pixelrag-marketplace-promotion-gate-replay')
@login_required
def ai_automation_pixelrag_marketplace_promotion_gate_replay_api():
"""Controlled PixelRAG marketplace PromotionGate replay readback."""
from services.pixelrag_marketplace_promotion_gate_replay_service import (
run_pixelrag_marketplace_promotion_gate_replay,
)
platforms = tuple(
str(item or '').strip()
for item in request.args.getlist('platform')
if str(item or '').strip()
)
execute = str(request.args.get('execute') or '').strip().lower() in {
'1',
'true',
'yes',
}
write_receipt = str(request.args.get('write_receipt') or '').strip().lower() in {
'1',
'true',
'yes',
}
max_age_hours = request.args.get('max_age_hours', 168, type=int)
limit = request.args.get('limit', 25, type=int)
return jsonify(run_pixelrag_marketplace_promotion_gate_replay(
identity_matcher_receipt_root=str(
request.args.get('identity_matcher_receipt_root') or ''
).strip() or None,
platform=platforms,
max_age_hours=max(1, min(max_age_hours or 168, 720)),
limit=max(1, min(limit or 25, 250)),
execute=execute,
write_receipt=bool(execute and write_receipt),
))
@system_public_bp.route('/api/ai-automation/external-mcp-rag-integration')
@login_required
def ai_automation_external_mcp_rag_integration_api():