{
"event": "PreToolUse",
"tool_name": "Write",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Crawler\/CrawlSummary.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Crawler;\n\n\/\/ @responsibility: Read-Model fuer Crawl-Listeneintrag\n\nfinal class CrawlSummary\n{\n public function __construct(\n public readonly int $id,\n public readonly string $baseUrl,\n public readonly string $mode,\n public readonly string $status,\n public readonly string $startedAt,\n public readonly ?string $finishedAt,\n public readonly int $totalUrls,\n public readonly int $totalErrors,\n public readonly string $triggerSource,\n ) {\n }\n\n public function durationSeconds(): ?int\n {\n if ($this->finishedAt === null) {\n return null;\n }\n $start = strtotime($this->startedAt);\n $end = strtotime($this->finishedAt);\n if ($start === false || $end === false) {\n return null;\n }\n return $end - $start;\n }\n}\n"
}
}
{
"tool_response": {
"type": "create",
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Domain\/Crawler\/CrawlSummary.php",
"content": "<?php\n\ndeclare(strict_types=1);\n\nnamespace Domain\\Crawler;\n\n\/\/ @responsibility: Read-Model fuer Crawl-Listeneintrag\n\nfinal class CrawlSummary\n{\n public function __construct(\n public readonly int $id,\n public readonly string $baseUrl,\n public readonly string $mode,\n public readonly string $status,\n public readonly string $startedAt,\n public readonly ?string $finishedAt,\n public readonly int $totalUrls,\n public readonly int $totalErrors,\n public readonly string $triggerSource,\n ) {\n }\n\n public function durationSeconds(): ?int\n {\n if ($this->finishedAt === null) {\n return null;\n }\n $start = strtotime($this->startedAt);\n $end = strtotime($this->finishedAt);\n if ($start === false || $end === false) {\n return null;\n }\n return $end - $start;\n }\n}\n",
"structuredPatch": [],
"originalFile": null,
"userModified": false
}
}