<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://ruzolut.dev</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog</loc>
</url>
<url>
<loc>https://ruzolut.dev/work</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/2</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/3</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/4</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/5</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/6</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/7</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/8</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/9</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/10</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/11</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/12</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/13</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/page/14</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/when-hypotheses-become-cheap-validation-becomes-the-product</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-error-stream-should-tune-the-machine</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-most-useful-autonomy-includes-a-stop-condition</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/capability-is-not-authority</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-trace-was-complete-and-unreadable</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-approval-was-valid-and-the-precondition-was-not</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-standard-protocol-did-not-standardize-effects</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-run-tree-made-divergence-visible</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/software-that-can-explain-its-work</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/evidence-should-survive-context-compaction</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-final-answer-did-not-match-the-world-state</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-agent-passed-the-test-by-deleting-the-test</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-missing-receipt-paused-the-workflow</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/tool-budgets-should-count-consequences-not-only-calls</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-policy-change-can-stop-an-old-run</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/network-disabled-is-a-product-decision</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-fixture-was-more-trustworthy-than-the-live-demo</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-harness-became-the-portable-unit</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-agent-changed-models-halfway-through</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-denied-path-belongs-in-the-benchmark</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-approval-view-should-show-recovery-limits</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-model-grader-needs-evidence-too</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-evaluator-cannot-overrule-a-hard-invariant</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/one-trace-three-clocks</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-sandbox-snapshot-made-the-diff-reviewable</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/replaying-a-run-should-not-resend-the-email</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-external-effect-needs-a-separate-identity</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-tool-call-is-a-proposal-before-it-is-an-action</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-long-running-task-needs-durable-state-not-a-long-context</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/agents-md-is-policy-only-when-execution-enforces-it</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/skills-are-progressive-disclosure-for-agents</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-workspace-is-part-of-the-prompt</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-most-capable-agent-got-the-smaller-tool-set</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/trace-grading-needs-deterministic-ground-truth</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-approval-expired-before-the-world-stood-still</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/mcp-discovery-needs-a-registry-snapshot</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-passing-answer-can-leave-a-broken-world</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-benchmark-passed-the-workflow-failed</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/tool-denial-should-improve-the-next-plan</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/counterfactual-replay-is-an-experiment-not-history</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-run-summary-omitted-the-duplicate-action</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-checkpoint-belongs-outside-the-provider-session</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/context-compaction-can-erase-a-safety-decision</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/cumulative-budgets-catch-polite-loops</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-policy-gate-belongs-immediately-before-execution</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-sandbox-is-a-constraint-not-a-guarantee</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/coding-agents-made-the-workspace-a-product-boundary</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-fixture-must-fail-closed</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/record-and-replay-are-different-modes</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-model-cannot-grant-itself-a-tool</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/approval-that-floats-is-not-approval</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-responses-api-made-traces-a-first-class-concern</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/one-idempotency-key-per-consequence</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/tool-schemas-need-effect-semantics</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-run-is-more-than-its-final-answer</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-agent-benchmark-ended-too-early</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-calmest-ai-interface-kept-the-document-in-charge</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-protocol-schema-is-not-a-permission</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-protocol-arrived-after-the-architecture</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/react-19-made-actions-ordinary-authority-stayed-hard</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/mcp-standardized-the-connection-not-the-trust</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/export-should-survive-the-assistant</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-author-is-allowed-to-reject-the-useful-paragraph</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/claim-review-should-not-rewrite-the-claim</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/generated-text-needs-an-undo-history</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/provider-adapters-should-expose-differences</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/tool-descriptions-are-untrusted-input</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/approval-must-bind-to-the-exact-patch</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/streaming-valid-operations-not-raw-tokens</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-model-output-is-not-product-state</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-evidence-graph-outlived-the-footnote</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/actions-do-not-remove-the-need-for-product-state</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/whole-section-rewrites-are-hard-to-review</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-task-needs-a-target-revision</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-model-may-propose-not-silently-author</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/copying-from-chat-erased-the-lineage</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-frontend-boundary-moved-the-responsibility-did-not</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-answer-record-should-not-silently-change</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/one-benchmark-score-hid-five-failures</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-prompt-is-not-a-security-boundary</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/raw-token-streaming-separated-claims-from-citations</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/server-components-moved-the-boundary</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-index-generation-is-part-of-provenance</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/search-permissions-belong-before-retrieval</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/refusal-needs-a-useful-page</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-citation-can-be-present-and-unsupported</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-evidence-set-should-exist-before-the-answer</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/reciprocal-rank-fusion-beat-score-alchemy</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-chunk-boundary-broke-the-citation</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/i-waited-for-the-app-router-to-become-stable</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-first-answer-was-fluent-and-wrong</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/new-react-docs-made-the-old-mental-model-visible</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/exact-identifiers-still-belong-to-lexical-search</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/retrieval-is-not-a-chat-feature</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/architecture-can-improve-by-becoming-less-visible</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-spinner-mirrored-the-service-map</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/streaming-without-spinner-theater</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/chatgpt-made-plausible-error-a-product-problem</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-transactional-outbox-is-not-eventual-consistency-everywhere</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-app-router-was-beta-and-i-treated-it-that-way</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-package-boundary-needs-a-test</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/removing-a-queue-is-part-of-the-feature</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-write-fence-is-kinder-than-permanent-dual-writes</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-data-copy-needed-a-classification</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/we-put-the-monolith-back-together</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/one-artifact-several-runtime-shapes</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-event-was-a-command-wearing-past-tense</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/concurrency-should-stay-behind-the-interface</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/co-change-is-not-proof-but-it-is-evidence</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-service-boundary-had-no-independent-life</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/context-is-a-budget-not-a-bag</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/reusable-automation-can-centralize-a-bad-assumption</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/copilot-and-the-assumption-budget</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/workflow-definitions-outlive-deployments</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-recovery-console-should-not-start-with-retry</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/compensation-is-another-side-effect</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/rate-limits-are-scheduling-data</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-generated-function-still-needed-a-test</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/unknown-outcome-deserves-its-own-state</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/idempotency-is-a-user-experience-feature</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-side-effect-crossed-the-transaction-boundary</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-lease-is-not-a-receipt</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/one-intent-several-attempts</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-queue-did-exactly-what-i-asked</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/server-components-were-research-and-that-mattered</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/remote-work-is-a-distributed-system</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-decision-needs-a-review-trigger</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/notifications-should-describe-changed-state</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-service-worker-should-have-one-job</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/last-write-wins-is-not-a-collaboration-strategy</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-outbox-needs-a-delivery-policy</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/core-web-vitals-are-field-measurements-not-a-score</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-tab-left-open-overnight</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/presence-is-not-collaboration</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/chat-preserved-messages-and-lost-decisions</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-handoff-to-tomorrows-version-of-me</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/webassembly-was-not-a-reason-to-rewrite</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/github-actions-and-the-danger-of-invisible-release-power</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/hooks-cleaned-up-the-component-not-the-data-flow</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-canary-incident-tested-the-incident-tool</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/green-traffic-did-not-close-the-incident</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-clock-correction-must-not-erase-the-clock</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-nine-minute-outage-that-lasted-six-hours</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-deployment-marker-is-not-a-cause</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/hooks-arrived-ownership-did-not</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/an-alert-is-a-claim-about-user-impact</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/privacy-made-the-architecture-smaller</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-audit-screen-was-designed-too-late</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/aggregate-is-not-a-synonym-for-anonymous</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/deletion-deserves-a-receipt</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/retention-without-a-job-is-documentation</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/withdrawal-has-a-race-condition</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-analytics-event-we-chose-not-to-collect</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-schema-closed-around-the-data</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/useful-someday-is-not-a-purpose</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-consent-banner-cannot-enforce-a-server</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-design-system-that-stayed-local-on-purpose</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/visual-regression-is-a-change-detector</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/grid-without-the-rewrite</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/breaking-changes-need-a-removal-path</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/typescript-without-the-rewrite</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/tokens-should-name-decisions</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-design-system-is-a-change-management-system</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-dialog-is-a-focus-contract</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/inventory-before-abstraction</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-component-library-nobody-adopted</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-universal-javascript-tax</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-health-check-that-proved-only-a-port-was-open</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/next-js-made-universal-javascript-feel-inevitable</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/expiry-is-part-of-provisioning</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-preview-must-not-know-production</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-manifest-was-more-stable-than-the-branch</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/every-branch-deserved-a-url</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/docker-packaged-the-app-not-the-lifecycle</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-shell-script-did-not-know-where-it-failed</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-branch-is-a-moving-name</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/https-was-the-easy-part</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-service-worker-without-an-offline-promise</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-redirect-map-is-content</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/atomic-deployment-in-four-boring-steps</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/preview-the-artifact-you-will-publish</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/es2015-made-old-async-habits-visible</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/http-2-did-not-fix-the-image</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/one-source-for-page-feed-and-archive</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/validation-should-speak-to-the-file</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-cms-was-too-much-and-ftp-was-too-little</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-receipt-made-retry-safe</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/containers-changed-what-i-could-reproduce</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/conflict-messages-should-name-the-work</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-timeout-is-not-a-failed-action</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-cache-was-the-product</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/last-write-wins-by-losing</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/indexeddb-migrations-carry-unsent-work</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/typescript-1-0-and-the-boundary-i-actually-needed</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-operation-came-before-the-record</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/local-storage-is-not-offline</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/react-was-interesting-the-state-model-mattered-more</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-performance-budget-before-i-knew-the-name</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-small-source-simulator-taught-me-more-than-production-like-data</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-browser-tab-that-ran-all-day</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/notes-are-observations-not-chat</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/i-removed-the-green-light</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/reconnect-is-a-data-operation</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/two-clocks-and-one-stale-number</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-dashboard-that-lied</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-socket-is-not-a-source</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/shipping-a-static-site-without-mixing-releases</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/a-print-stylesheet-is-a-product-decision</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/what-happened-when-javascript-did-not</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-breakpoint-belonged-to-the-sentence</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-page-is-not-960-pixels-wide</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/images-were-the-bandwidth</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-table-refused-to-become-cards</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/one-navigation-not-a-mobile-copy</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/content-before-chrome</loc>
</url>
<url>
<loc>https://ruzolut.dev/blog/the-comp-is-not-the-interface</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/n17q</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/v0m3</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/k81r</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/p6x4</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/z29c</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/d4u7</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/w93h</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/q2f8</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/j05n</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/r7k1</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/m31v</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/x8b6</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/t04p</loc>
</url>
<url>
<loc>https://ruzolut.dev/work/c62y</loc>
</url>
</urlset>
