<workflowRun _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmain _class='hudson.plugins.git.util.Build'><buildNumber>6</buildNumber><marked><SHA1>609039e5efb9e113068885c9f77973841070061e</SHA1><branch><SHA1>609039e5efb9e113068885c9f77973841070061e</SHA1><name>refs/remotes/origin/main</name></branch></marked><revision><SHA1>609039e5efb9e113068885c9f77973841070061e</SHA1><branch><SHA1>609039e5efb9e113068885c9f77973841070061e</SHA1><name>refs/remotes/origin/main</name></branch></revision></refsremotesoriginmain></buildsByBranchName><lastBuiltRevision><SHA1>609039e5efb9e113068885c9f77973841070061e</SHA1><branch><SHA1>609039e5efb9e113068885c9f77973841070061e</SHA1><name>refs/remotes/origin/main</name></branch></lastBuiltRevision><remoteUrl>https://github.com/younex1/deploy-younex-web.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'><environment><COMMIT>609039e</COMMIT><COMMIT_MSG>Caddy static assets: fonts 1y immutable, images/logos/icons 30d (was 1d for all)</COMMIT_MSG></environment></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'><artifactsUrl>https://jenkins.younex.de/job/paas-platform/6/artifact</artifactsUrl><changesUrl>https://jenkins.younex.de/job/paas-platform/changes</changesUrl><displayUrl>https://jenkins.younex.de/job/paas-platform/6/</displayUrl><testsUrl>https://jenkins.younex.de/job/paas-platform/6/testReport</testsUrl></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'><restartEnabled>false</restartEnabled><restartableStage>Checkout</restartableStage><restartableStage>Lint</restartableStage><restartableStage>Deploy</restartableStage></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'><node _class='org.jenkinsci.plugins.workflow.graph.FlowStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.graph.FlowEndNode'></node></action><action></action><action></action><action></action><building>false</building><description>609039e Caddy static assets: fonts 1y immutable, images/logos/icons 30d (was 1d </description><displayName>#6</displayName><duration>11905</duration><estimatedDuration>12371</estimatedDuration><fullDisplayName>paas-platform #6</fullDisplayName><id>6</id><keepLog>false</keepLog><number>6</number><queueId>5800</queueId><result>SUCCESS</result><timestamp>1791035707936</timestamp><url>https://jenkins.younex.de/job/paas-platform/6/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>bin/paas</affectedPath><commitId>609039e5efb9e113068885c9f77973841070061e</commitId><timestamp>1791035629000</timestamp><author><absoluteUrl>https://jenkins.younex.de/user/info</absoluteUrl><fullName>info</fullName></author><authorEmail>info@younex.de</authorEmail><comment>Caddy static assets: fonts 1y immutable, images/logos/icons 30d (was 1d for all)

PageSpeed flagged the 1-day TTL on every label (~110 KiB of woff2 re-fetched
daily per returning visitor). Font binaries never change in place, so they get
the same immutable policy as hashed build output; unhashed images/logos/icons
get 30 days + 1 day stale-while-revalidate. Stylesheets under /fonts/ stay on
the 30-day rule because they may be patched in place.

Co-Authored-By: Claude Fable 5.1 &lt;noreply@anthropic.com&gt;
</comment><date>2026-10-03 15:53:49 +0200</date><id>609039e5efb9e113068885c9f77973841070061e</id><msg>Caddy static assets: fonts 1y immutable, images/logos/icons 30d (was 1d for all)</msg><path><editType>edit</editType><file>bin/paas</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.younex.de/user/info</absoluteUrl><fullName>info</fullName><id>info</id></culprit><inProgress>false</inProgress><nextBuild><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmain _class='hudson.plugins.git.util.Build'><buildNumber>7</buildNumber><marked><SHA1>207a3bed6cb478630184ad0e04e8337e59609379</SHA1><branch><SHA1>207a3bed6cb478630184ad0e04e8337e59609379</SHA1><name>refs/remotes/origin/main</name></branch></marked><revision><SHA1>207a3bed6cb478630184ad0e04e8337e59609379</SHA1><branch><SHA1>207a3bed6cb478630184ad0e04e8337e59609379</SHA1><name>refs/remotes/origin/main</name></branch></revision></refsremotesoriginmain></buildsByBranchName><lastBuiltRevision><SHA1>207a3bed6cb478630184ad0e04e8337e59609379</SHA1><branch><SHA1>207a3bed6cb478630184ad0e04e8337e59609379</SHA1><name>refs/remotes/origin/main</name></branch></lastBuiltRevision><remoteUrl>https://github.com/younex1/deploy-younex-web.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><description>207a3be Caddy: match font files with path_regexp (infix path wildcard never cros</description><displayName>#7</displayName><duration>10820</duration><estimatedDuration>12371</estimatedDuration><fullDisplayName>paas-platform #7</fullDisplayName><id>7</id><keepLog>false</keepLog><number>7</number><queueId>5802</queueId><result>SUCCESS</result><timestamp>1791035947949</timestamp><url>https://jenkins.younex.de/job/paas-platform/7/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>bin/paas</affectedPath><commitId>207a3bed6cb478630184ad0e04e8337e59609379</commitId><timestamp>1791035866000</timestamp><author><absoluteUrl>https://jenkins.younex.de/user/info</absoluteUrl><fullName>info</fullName></author><authorEmail>info@younex.de</authorEmail><comment>Caddy: match font files with path_regexp (infix path wildcard never crosses /)

Co-Authored-By: Claude Fable 5.1 &lt;noreply@anthropic.com&gt;
</comment><date>2026-10-03 15:57:46 +0200</date><id>207a3bed6cb478630184ad0e04e8337e59609379</id><msg>Caddy: match font files with path_regexp (infix path wildcard never crosses /)</msg><path><editType>edit</editType><file>bin/paas</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.younex.de/user/info</absoluteUrl><fullName>info</fullName></culprit><inProgress>false</inProgress><nextBuild><number>8</number><url>https://jenkins.younex.de/job/paas-platform/8/</url></nextBuild><previousBuild><number>6</number><url>https://jenkins.younex.de/job/paas-platform/6/</url></previousBuild></nextBuild><previousBuild><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmain _class='hudson.plugins.git.util.Build'><buildNumber>5</buildNumber><marked><SHA1>b0789a3866dc7badcb1aa37a1ae42a558f3602bd</SHA1><branch><SHA1>b0789a3866dc7badcb1aa37a1ae42a558f3602bd</SHA1><name>refs/remotes/origin/main</name></branch></marked><revision><SHA1>b0789a3866dc7badcb1aa37a1ae42a558f3602bd</SHA1><branch><SHA1>b0789a3866dc7badcb1aa37a1ae42a558f3602bd</SHA1><name>refs/remotes/origin/main</name></branch></revision></refsremotesoriginmain></buildsByBranchName><lastBuiltRevision><SHA1>b0789a3866dc7badcb1aa37a1ae42a558f3602bd</SHA1><branch><SHA1>b0789a3866dc7badcb1aa37a1ae42a558f3602bd</SHA1><name>refs/remotes/origin/main</name></branch></lastBuiltRevision><remoteUrl>https://github.com/younex1/deploy-younex-web.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><description>b0789a3 clicks-writeback: once nightly (02:10 UTC) instead of 3x daily</description><displayName>#5</displayName><duration>11015</duration><estimatedDuration>12371</estimatedDuration><fullDisplayName>paas-platform #5</fullDisplayName><id>5</id><keepLog>false</keepLog><number>5</number><queueId>5734</queueId><result>SUCCESS</result><timestamp>1789728787900</timestamp><url>https://jenkins.younex.de/job/paas-platform/5/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>bin/paas-clicks-writeback</affectedPath><affectedPath>sql/schema.sql</affectedPath><affectedPath>infra/paas-clicks-writeback.timer</affectedPath><affectedPath>bootstrap.sh</affectedPath><commitId>b0789a3866dc7badcb1aa37a1ae42a558f3602bd</commitId><timestamp>1789728682000</timestamp><author><absoluteUrl>https://jenkins.younex.de/user/info</absoluteUrl><fullName>info</fullName></author><authorEmail>info@younex.de</authorEmail><comment>clicks-writeback: once nightly (02:10 UTC) instead of 3x daily

Click counts only feed "most read" hints; one run in the traffic trough is
enough and keeps the CMS load off the daytime entirely.

Co-Authored-By: Claude Fable 5.1 &lt;noreply@anthropic.com&gt;
</comment><date>2026-09-18 12:51:22 +0200</date><id>b0789a3866dc7badcb1aa37a1ae42a558f3602bd</id><msg>clicks-writeback: once nightly (02:10 UTC) instead of 3x daily</msg><path><editType>edit</editType><file>bootstrap.sh</file></path><path><editType>edit</editType><file>bin/paas-clicks-writeback</file></path><path><editType>edit</editType><file>infra/paas-clicks-writeback.timer</file></path><path><editType>edit</editType><file>sql/schema.sql</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.younex.de/user/info</absoluteUrl><fullName>info</fullName></culprit><inProgress>false</inProgress><nextBuild><number>6</number><url>https://jenkins.younex.de/job/paas-platform/6/</url></nextBuild><previousBuild><number>4</number><url>https://jenkins.younex.de/job/paas-platform/4/</url></previousBuild></previousBuild></workflowRun>