{
"event": "PreToolUse",
"tool_name": "Write",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/crawler\/src\/interfaces\/cli\/commands\/diff.py",
"content": "from __future__ import annotations\n\nimport json\n\nfrom src.interfaces.cli.wiring import Container\n\n\ndef diff_as_json(container: Container, *, from_crawl_id: int, to_crawl_id: int) -> str:\n diff = container.diff().execute(from_crawl_id=from_crawl_id, to_crawl_id=to_crawl_id)\n payload = {\n \"from_crawl_id\": diff.from_crawl_id,\n \"to_crawl_id\": diff.to_crawl_id,\n \"added_urls\": list(diff.added_urls),\n \"removed_urls\": list(diff.removed_urls),\n \"status_changed\": [\n {\"url\": u, \"old\": o, \"new\": n} for u, o, n in diff.status_changed\n ],\n \"title_changed\": [\n {\"url\": u, \"old\": o, \"new\": n} for u, o, n in diff.title_changed\n ],\n }\n return json.dumps(payload, ensure_ascii=False, indent=2)\n"
}
}
{
"tool_response": {
"type": "create",
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/crawler\/src\/interfaces\/cli\/commands\/diff.py",
"content": "from __future__ import annotations\n\nimport json\n\nfrom src.interfaces.cli.wiring import Container\n\n\ndef diff_as_json(container: Container, *, from_crawl_id: int, to_crawl_id: int) -> str:\n diff = container.diff().execute(from_crawl_id=from_crawl_id, to_crawl_id=to_crawl_id)\n payload = {\n \"from_crawl_id\": diff.from_crawl_id,\n \"to_crawl_id\": diff.to_crawl_id,\n \"added_urls\": list(diff.added_urls),\n \"removed_urls\": list(diff.removed_urls),\n \"status_changed\": [\n {\"url\": u, \"old\": o, \"new\": n} for u, o, n in diff.status_changed\n ],\n \"title_changed\": [\n {\"url\": u, \"old\": o, \"new\": n} for u, o, n in diff.title_changed\n ],\n }\n return json.dumps(payload, ensure_ascii=False, indent=2)\n",
"structuredPatch": [],
"originalFile": null,
"userModified": false
}
}