a2a-source-edit: write agent.py
This commit is contained in:
4
agent.py
4
agent.py
@@ -374,7 +374,7 @@ class AgentComplianceAuditor(A2AAgent[AgentComplianceAuditorConfig, NoAuth]):
|
|||||||
output_dir = _output_dir(audit_id)
|
output_dir = _output_dir(audit_id)
|
||||||
files = await _write_json_bundle(ctx, output_dir, {"risk-summary.json": summary, "findings.json": {"findings": [_dump(f) for f in all_findings]}}, [])
|
files = await _write_json_bundle(ctx, output_dir, {"risk-summary.json": summary, "findings.json": {"findings": [_dump(f) for f in all_findings]}}, [])
|
||||||
await _event(ctx, "audit_completed", audit_id=audit_id, skill="assess_risk", findings=len(all_findings), score=summary["risk_score"])
|
await _event(ctx, "audit_completed", audit_id=audit_id, skill="assess_risk", findings=len(all_findings), score=summary["risk_score"])
|
||||||
return RiskSummaryResult(audit_id=audit_id, target=request.target, status="ok", output_dir=output_dir, generated_files=files, risk_summary=summary, findings=all_findings)
|
return {"audit_id": audit_id, "target": _dump(request.target), "status": "ok", "output_dir": output_dir, "generated_files": [_dump(f) for f in files], "risk_summary": summary, "findings": [_dump(f) for f in all_findings], "warnings": [], "mutations_performed": False}
|
||||||
|
|
||||||
@a2a.tool(description="Generate actionable remediation and a machine-readable SARIF report for compliance findings", timeout_seconds=120, idempotent=True, cost_class="read-only", input_schema=_tool_schema("remediation"))
|
@a2a.tool(description="Generate actionable remediation and a machine-readable SARIF report for compliance findings", timeout_seconds=120, idempotent=True, cost_class="read-only", input_schema=_tool_schema("remediation"))
|
||||||
async def generate_remediation(self, ctx: RunContext[NoAuth], request: GenerateRemediationRequest) -> dict[str, Any]:
|
async def generate_remediation(self, ctx: RunContext[NoAuth], request: GenerateRemediationRequest) -> dict[str, Any]:
|
||||||
@@ -387,7 +387,7 @@ class AgentComplianceAuditor(A2AAgent[AgentComplianceAuditorConfig, NoAuth]):
|
|||||||
output_dir = _output_dir(audit_id)
|
output_dir = _output_dir(audit_id)
|
||||||
files = await _write_json_bundle(ctx, output_dir, {"remediation.md": markdown, "sarif.json": sarif, "risk-summary.json": risk_summary}, [])
|
files = await _write_json_bundle(ctx, output_dir, {"remediation.md": markdown, "sarif.json": sarif, "risk-summary.json": risk_summary}, [])
|
||||||
await _event(ctx, "audit_completed", audit_id=audit_id, skill="generate_remediation", findings=len(findings))
|
await _event(ctx, "audit_completed", audit_id=audit_id, skill="generate_remediation", findings=len(findings))
|
||||||
return {"audit_id": audit_id, "target": _dump(request.target), "status": "ok", "output_dir": output_dir, "generated_files": [_dump(f) for f in files], "remediation_markdown": markdown, "sarif": sarif, "warnings": [], "mutations_performed": False}
|
return RemediationResult(audit_id=audit_id, target=request.target, status="ok", output_dir=output_dir, generated_files=files, remediation_markdown=markdown, sarif=sarif)
|
||||||
|
|
||||||
|
|
||||||
async def _collect_inventory(agent: AgentComplianceAuditor, ctx: RunContext[NoAuth], target: AuditTarget, options: AuditOptions, audit_id: str) -> tuple[dict[str, Any], list[Evidence], list[str], Literal["ok", "partial", "unreachable", "setup_required"]]:
|
async def _collect_inventory(agent: AgentComplianceAuditor, ctx: RunContext[NoAuth], target: AuditTarget, options: AuditOptions, audit_id: str) -> tuple[dict[str, Any], list[Evidence], list[str], Literal["ok", "partial", "unreachable", "setup_required"]]:
|
||||||
|
|||||||
Reference in New Issue
Block a user