<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://codingstairs.duckdns.org/</loc>
<priority>1</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes</loc>
<priority>0.9</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu</loc>
<priority>0.9</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/life</loc>
<priority>0.9</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms</loc>
<priority>0.8</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/contact</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/legal</loc>
<priority>0.3</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en</loc>
<priority>0.9</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes</loc>
<priority>0.8</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu</loc>
<priority>0.8</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/life</loc>
<priority>0.8</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/contact</loc>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/legal</loc>
<priority>0.3</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning</loc>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/19-webrtc-cost-gated-voice-review</loc>
<lastmod>2026-08-11T12:58:07.631Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/18-grpc-voice-boundary</loc>
<lastmod>2026-08-11T12:48:29.155Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/17-scheduler-result-contract</loc>
<lastmod>2026-08-11T12:48:29.146Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/16-request-id-and-kafka</loc>
<lastmod>2026-08-11T12:48:29.138Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/19-complete-member-set-upsert</loc>
<lastmod>2026-08-11T12:48:28.759Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/18-trigram-search-index</loc>
<lastmod>2026-08-11T12:48:28.751Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/17-rag-completed-file-boundary</loc>
<lastmod>2026-08-11T12:48:28.742Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/18-tauri-capability-boundary</loc>
<lastmod>2026-08-11T12:48:28.484Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/10-capability-readiness</loc>
<lastmod>2026-08-11T12:48:28.322Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/09-red-metrics-and-slo</loc>
<lastmod>2026-08-11T12:48:28.311Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/08-compose-readiness-rollback</loc>
<lastmod>2026-08-11T12:48:28.300Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/11-fail-closed-migration-replay</loc>
<lastmod>2026-08-11T12:48:27.982Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/10-cms-static-build-contract</loc>
<lastmod>2026-08-11T12:48:27.970Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/09-admin-init-advisory-lock</loc>
<lastmod>2026-08-11T12:48:27.961Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/08-release-smoke-rollback</loc>
<lastmod>2026-08-11T12:48:27.953Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/09-upload-signature-atomicity</loc>
<lastmod>2026-08-11T12:48:27.884Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/16-idempotent-migration-recovery</loc>
<lastmod>2026-08-11T12:48:28.730Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/07-acceptance-evidence</loc>
<lastmod>2026-08-11T12:48:27.943Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/17-content-continuity-ux</loc>
<lastmod>2026-08-11T12:48:28.477Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/15-public-api-as-bff</loc>
<lastmod>2026-08-11T12:48:29.128Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/22-metadata-template-single-source</loc>
<lastmod>2026-08-11T12:48:28.965Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/15-seed-from-monorepo-root</loc>
<lastmod>2026-08-11T12:48:28.721Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/16-dashboard-widget-uniformity</loc>
<lastmod>2026-08-11T12:48:28.469Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/08-public-route-whitelist</loc>
<lastmod>2026-08-11T12:48:27.874Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/14-email-otp</loc>
<lastmod>2026-08-11T12:48:29.119Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/14-supabase-storage</loc>
<lastmod>2026-08-11T12:48:28.709Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/13-kafka-topics</loc>
<lastmod>2026-08-11T12:48:28.701Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/15-google-stitch</loc>
<lastmod>2026-08-11T12:48:29.381Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/09-notebooklm</loc>
<lastmod>2026-08-11T12:48:29.241Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/14-ai-web-ides</loc>
<lastmod>2026-08-11T12:48:29.370Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/08-google-ai-studio</loc>
<lastmod>2026-08-11T12:48:29.233Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/21-github-pages</loc>
<lastmod>2026-08-11T12:48:28.957Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/20-replit</loc>
<lastmod>2026-08-11T12:48:28.949Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/13-audit-log-pattern</loc>
<lastmod>2026-08-11T12:48:29.107Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/12-multi-pg-pool-orchestration</loc>
<lastmod>2026-08-11T12:48:28.692Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/15-admin-table-ssot</loc>
<lastmod>2026-08-11T12:48:28.461Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/06-e2e-equivalence-manifest</loc>
<lastmod>2026-08-11T12:48:27.935Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/07-anonymous-form-hardening</loc>
<lastmod>2026-08-11T12:48:27.865Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/13-ai-browser-assistants</loc>
<lastmod>2026-08-11T12:48:29.360Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/12-ai-workflow-tools</loc>
<lastmod>2026-08-11T12:48:29.351Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/11-ai-cli-tools</loc>
<lastmod>2026-08-11T12:48:29.342Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/10-ai-coding-ides</loc>
<lastmod>2026-08-11T12:48:29.334Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/09-claude-md-pattern</loc>
<lastmod>2026-08-11T12:48:29.326Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/08-hooks-settings</loc>
<lastmod>2026-08-11T12:48:29.318Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/07-subagents</loc>
<lastmod>2026-08-11T12:48:29.309Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/06-claude-code-skills</loc>
<lastmod>2026-08-11T12:48:29.300Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/05-google-adk</loc>
<lastmod>2026-08-11T12:48:29.292Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/04-mcp-figma</loc>
<lastmod>2026-08-11T12:48:29.283Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/03-mcp-context7</loc>
<lastmod>2026-08-11T12:48:29.274Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/02-mcp-clients</loc>
<lastmod>2026-08-11T12:48:29.265Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/01-mcp</loc>
<lastmod>2026-08-11T12:48:29.251Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/07-llm-landscape</loc>
<lastmod>2026-08-11T12:48:29.225Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/06-agents-overview</loc>
<lastmod>2026-08-11T12:48:29.216Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/05-embeddings-deep</loc>
<lastmod>2026-08-11T12:48:29.207Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/04-gemini-api</loc>
<lastmod>2026-08-11T12:48:29.198Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/03-prompt-design</loc>
<lastmod>2026-08-11T12:48:29.189Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/02-rag-pgvector</loc>
<lastmod>2026-08-11T12:48:29.181Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/01-local-llm-lmstudio</loc>
<lastmod>2026-08-11T12:48:29.173Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/12-websocket-sse</loc>
<lastmod>2026-08-11T12:48:29.098Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/11-rest-api-intro</loc>
<lastmod>2026-08-11T12:48:29.088Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/10-openapi-spec</loc>
<lastmod>2026-08-11T12:48:29.072Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/09-crawler-ethics</loc>
<lastmod>2026-08-11T12:48:29.060Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/08-typeorm-readonly</loc>
<lastmod>2026-08-11T12:48:29.050Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/07-jobs-apscheduler</loc>
<lastmod>2026-08-11T12:48:29.040Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/06-api-handler-pattern</loc>
<lastmod>2026-08-11T12:48:29.025Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/05-sql-as-ssot</loc>
<lastmod>2026-08-11T12:48:29.013Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/04-python-folder-philosophy</loc>
<lastmod>2026-08-11T12:48:29.003Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/03-fastapi-philosophy</loc>
<lastmod>2026-08-11T12:48:28.994Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/02-spring-webflux-vs-mvc</loc>
<lastmod>2026-08-11T12:48:28.982Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/01-spring-multi-module</loc>
<lastmod>2026-08-11T12:48:28.973Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/19-api-mocking-wiremock</loc>
<lastmod>2026-08-11T12:48:28.941Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/18-firebase-emulator</loc>
<lastmod>2026-08-11T12:48:28.932Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/17-supabase-self-hosted</loc>
<lastmod>2026-08-11T12:48:28.925Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/16-localstack-and-ministack</loc>
<lastmod>2026-08-11T12:48:28.916Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/15-ecs-fargate</loc>
<lastmod>2026-08-11T12:48:28.908Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/14-load-balancers</loc>
<lastmod>2026-08-11T12:48:28.900Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/13-route53</loc>
<lastmod>2026-08-11T12:48:28.892Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/12-lambda</loc>
<lastmod>2026-08-11T12:48:28.883Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/11-cloudfront</loc>
<lastmod>2026-08-11T12:48:28.874Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/10-rds</loc>
<lastmod>2026-08-11T12:48:28.865Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/09-s3</loc>
<lastmod>2026-08-11T12:48:28.856Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/08-iam</loc>
<lastmod>2026-08-11T12:48:28.848Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/07-flyio</loc>
<lastmod>2026-08-11T12:48:28.839Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/06-deploying-options</loc>
<lastmod>2026-08-11T12:48:28.825Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/05-ec2</loc>
<lastmod>2026-08-11T12:48:28.813Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/04-security-group</loc>
<lastmod>2026-08-11T12:48:28.796Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/03-internet-gateway-route-table</loc>
<lastmod>2026-08-11T12:48:28.786Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/02-vpc-and-subnet</loc>
<lastmod>2026-08-11T12:48:28.777Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/01-aws-overview</loc>
<lastmod>2026-08-11T12:48:28.769Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/11-backup-restore</loc>
<lastmod>2026-08-11T12:48:28.684Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/10-image-pipeline</loc>
<lastmod>2026-08-11T12:48:28.675Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/09-fcm-push</loc>
<lastmod>2026-08-11T12:48:28.667Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/08-supabase</loc>
<lastmod>2026-08-11T12:48:28.657Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/07-pgvector-rag</loc>
<lastmod>2026-08-11T12:48:28.648Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/06-kafka-when</loc>
<lastmod>2026-08-11T12:48:28.640Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/05-data-pipeline</loc>
<lastmod>2026-08-11T12:48:28.632Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/04-redis-roles</loc>
<lastmod>2026-08-11T12:48:28.624Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/03-three-layer-cache</loc>
<lastmod>2026-08-11T12:48:28.615Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/02-postgres-deep</loc>
<lastmod>2026-08-11T12:48:28.608Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/01-postgres-first</loc>
<lastmod>2026-08-11T12:48:28.599Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/00-sql-basics</loc>
<lastmod>2026-08-11T12:48:28.591Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/11-wsl2</loc>
<lastmod>2026-08-11T12:48:28.577Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/10-data-formats</loc>
<lastmod>2026-08-11T12:48:28.567Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/09-first-terminal-day</loc>
<lastmod>2026-08-11T12:48:28.559Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/08-text-encoding-line-endings</loc>
<lastmod>2026-08-11T12:48:28.550Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/07-markdown</loc>
<lastmod>2026-08-11T12:48:28.542Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/06-cross-platform-scripts</loc>
<lastmod>2026-08-11T12:48:28.532Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/05-cmd-and-bat</loc>
<lastmod>2026-08-11T12:48:28.524Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/04-powershell-basics</loc>
<lastmod>2026-08-11T12:48:28.516Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/03-bash-and-sh</loc>
<lastmod>2026-08-11T12:48:28.508Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/02-shells-overview</loc>
<lastmod>2026-08-11T12:48:28.500Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/01-windows-vs-mac</loc>
<lastmod>2026-08-11T12:48:28.492Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/14-loading-ux</loc>
<lastmod>2026-08-11T12:48:28.453Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/13-native-integrations</loc>
<lastmod>2026-08-11T12:48:28.445Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/12-ocr-stt-tts</loc>
<lastmod>2026-08-11T12:48:28.436Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/11-sqlite-local</loc>
<lastmod>2026-08-11T12:48:28.426Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/10-tauri-mobile-admob</loc>
<lastmod>2026-08-11T12:48:28.418Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/09-bundlers</loc>
<lastmod>2026-08-11T12:48:28.409Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/08-forms-zod</loc>
<lastmod>2026-08-11T12:48:28.399Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/07-material3-tokens</loc>
<lastmod>2026-08-11T12:48:28.390Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/06-i18n-korean-first</loc>
<lastmod>2026-08-11T12:48:28.382Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/05-tauri-over-electron</loc>
<lastmod>2026-08-11T12:48:28.371Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/04-styling-tailwind</loc>
<lastmod>2026-08-11T12:48:28.360Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/03-state-philosophy</loc>
<lastmod>2026-08-11T12:48:28.349Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/02-nextjs-app-router</loc>
<lastmod>2026-08-11T12:48:28.340Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/01-react19-compiler</loc>
<lastmod>2026-08-11T12:48:28.331Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/07-cloud-emulator-stack</loc>
<lastmod>2026-08-11T12:48:28.293Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/06-local-https-mkcert</loc>
<lastmod>2026-08-11T12:48:28.283Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/05-single-server-philosophy</loc>
<lastmod>2026-08-11T12:48:28.274Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/04-loopback-ssh-tunnel</loc>
<lastmod>2026-08-11T12:48:28.266Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/03-caddy-not-nginx</loc>
<lastmod>2026-08-11T12:48:28.254Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/02-docker-compose-patterns</loc>
<lastmod>2026-08-11T12:48:28.245Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/01-docker-basics</loc>
<lastmod>2026-08-11T12:48:28.238Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages/04-rust-for-tauri</loc>
<lastmod>2026-08-11T12:48:28.229Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages/03-python-async</loc>
<lastmod>2026-08-11T12:48:28.220Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages/02-java21-modern</loc>
<lastmod>2026-08-11T12:48:28.212Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages/01-typescript-strict</loc>
<lastmod>2026-08-11T12:48:28.204Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/05-debugging-mindset</loc>
<lastmod>2026-08-11T12:48:28.195Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/04-learning-roadmap</loc>
<lastmod>2026-08-11T12:48:28.187Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/03-how-to-ask-good-questions</loc>
<lastmod>2026-08-11T12:48:28.177Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/02-how-to-read-docs</loc>
<lastmod>2026-08-11T12:48:28.167Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/01-how-to-search</loc>
<lastmod>2026-08-11T12:48:28.157Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/00-getting-started</loc>
<lastmod>2026-08-11T12:48:28.147Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile/04-ios-build</loc>
<lastmod>2026-08-11T12:48:28.138Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile/03-android-build-apk</loc>
<lastmod>2026-08-11T12:48:28.126Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile/02-flutter-basics</loc>
<lastmod>2026-08-11T12:48:28.118Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile/01-cross-platform-options</loc>
<lastmod>2026-08-11T12:48:28.109Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/10-naming-readability</loc>
<lastmod>2026-08-11T12:48:28.101Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/09-feature-flag-skeptic</loc>
<lastmod>2026-08-11T12:48:28.092Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/08-no-ai-credit</loc>
<lastmod>2026-08-11T12:48:28.083Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/07-korean-first</loc>
<lastmod>2026-08-11T12:48:28.075Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/06-docs-for-agent-and-human</loc>
<lastmod>2026-08-11T12:48:28.067Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/05-progressive-refactor</loc>
<lastmod>2026-08-11T12:48:28.058Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/04-tradeoff-not-bestpractice</loc>
<lastmod>2026-08-11T12:48:28.050Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/03-folder-as-contract</loc>
<lastmod>2026-08-11T12:48:28.042Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/02-ssot-everywhere</loc>
<lastmod>2026-08-11T12:48:28.033Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/01-kiss-dry-yagni</loc>
<lastmod>2026-08-11T12:48:28.025Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming/04-oop-vs-functional</loc>
<lastmod>2026-08-11T12:48:28.017Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming/03-design-patterns</loc>
<lastmod>2026-08-11T12:48:28.009Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming/02-big-o</loc>
<lastmod>2026-08-11T12:48:28.001Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming/01-data-structures</loc>
<lastmod>2026-08-11T12:48:27.991Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/05-vitest-pytest-infra</loc>
<lastmod>2026-08-11T12:48:27.926Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/04-github-actions</loc>
<lastmod>2026-08-11T12:48:27.919Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/03-observability-minimal</loc>
<lastmod>2026-08-11T12:48:27.910Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/02-vitest-philosophy</loc>
<lastmod>2026-08-11T12:48:27.901Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/01-testcontainers</loc>
<lastmod>2026-08-11T12:48:27.892Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/06-headers-and-cors</loc>
<lastmod>2026-08-11T12:48:27.855Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/05-password-hashing</loc>
<lastmod>2026-08-11T12:48:27.847Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/04-input-validation-zod</loc>
<lastmod>2026-08-11T12:48:27.838Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/03-rate-limit-redis</loc>
<lastmod>2026-08-11T12:48:27.829Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/02-oauth-state-pkce</loc>
<lastmod>2026-08-11T12:48:27.821Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/01-jwt-rotation</loc>
<lastmod>2026-08-11T12:48:27.812Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/12-git-submodule-lfs</loc>
<lastmod>2026-08-11T12:48:27.802Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/11-regex</loc>
<lastmod>2026-08-11T12:48:27.792Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/10-python-venv-poetry-history</loc>
<lastmod>2026-08-11T12:48:27.784Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/09-linting-formatting</loc>
<lastmod>2026-08-11T12:48:27.774Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/08-editor-setup</loc>
<lastmod>2026-08-11T12:48:27.763Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/07-gradle</loc>
<lastmod>2026-08-11T12:48:27.751Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/06-git-workflow</loc>
<lastmod>2026-08-11T12:48:27.730Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/05-version-managers</loc>
<lastmod>2026-08-11T12:48:27.721Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/04-env-and-secrets</loc>
<lastmod>2026-08-11T12:48:27.709Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/03-python-uv</loc>
<lastmod>2026-08-11T12:48:27.696Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/02-monorepo-light</loc>
<lastmod>2026-08-11T12:48:27.686Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/01-pnpm</loc>
<lastmod>2026-08-11T12:48:27.676Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/07-browser-devtools</loc>
<lastmod>2026-08-11T12:48:27.665Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/06-internet-how-it-works</loc>
<lastmod>2026-08-11T12:48:27.656Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/05-url-anatomy</loc>
<lastmod>2026-08-11T12:48:27.646Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/04-http-rest</loc>
<lastmod>2026-08-11T12:48:27.637Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/03-javascript-basics</loc>
<lastmod>2026-08-11T12:48:27.628Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/02-css</loc>
<lastmod>2026-08-11T12:48:27.618Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/01-html</loc>
<lastmod>2026-08-11T12:48:27.609Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/19-webrtc-cost-gated-voice-review</loc>
<lastmod>2026-08-11T12:48:29.159Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/18-grpc-voice-boundary</loc>
<lastmod>2026-08-11T12:48:29.151Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/17-scheduler-result-contract</loc>
<lastmod>2026-08-11T12:48:29.142Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/16-request-id-and-kafka</loc>
<lastmod>2026-08-11T12:48:29.133Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/19-complete-member-set-upsert</loc>
<lastmod>2026-08-11T12:48:28.755Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/18-trigram-search-index</loc>
<lastmod>2026-08-11T12:48:28.746Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/17-rag-completed-file-boundary</loc>
<lastmod>2026-08-11T12:48:28.735Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/18-tauri-capability-boundary</loc>
<lastmod>2026-08-11T12:48:28.481Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/10-capability-readiness</loc>
<lastmod>2026-08-11T12:48:28.315Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/09-red-metrics-and-slo</loc>
<lastmod>2026-08-11T12:48:28.304Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/08-compose-readiness-rollback</loc>
<lastmod>2026-08-11T12:48:28.297Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/11-fail-closed-migration-replay</loc>
<lastmod>2026-08-11T12:48:27.974Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/10-cms-static-build-contract</loc>
<lastmod>2026-08-11T12:48:27.965Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/09-admin-init-advisory-lock</loc>
<lastmod>2026-08-11T12:48:27.957Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/08-release-smoke-rollback</loc>
<lastmod>2026-08-11T12:48:27.948Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/09-upload-signature-atomicity</loc>
<lastmod>2026-08-11T12:48:27.880Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/16-idempotent-migration-recovery</loc>
<lastmod>2026-08-11T12:48:28.725Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/07-acceptance-evidence</loc>
<lastmod>2026-08-11T12:48:27.939Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/17-content-continuity-ux</loc>
<lastmod>2026-08-11T12:48:28.473Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/15-public-api-as-bff</loc>
<lastmod>2026-08-11T12:48:29.123Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/22-metadata-template-single-source</loc>
<lastmod>2026-08-11T12:48:28.962Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/15-seed-from-monorepo-root</loc>
<lastmod>2026-08-11T12:48:28.717Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/16-dashboard-widget-uniformity</loc>
<lastmod>2026-08-11T12:48:28.465Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/08-public-route-whitelist</loc>
<lastmod>2026-08-11T12:48:27.869Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/14-email-otp</loc>
<lastmod>2026-08-11T12:48:29.114Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/14-supabase-storage</loc>
<lastmod>2026-08-11T12:48:28.705Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/13-kafka-topics</loc>
<lastmod>2026-08-11T12:48:28.697Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/15-google-stitch</loc>
<lastmod>2026-08-11T12:48:29.375Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/09-notebooklm</loc>
<lastmod>2026-08-11T12:48:29.237Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/14-ai-web-ides</loc>
<lastmod>2026-08-11T12:48:29.365Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/08-google-ai-studio</loc>
<lastmod>2026-08-11T12:48:29.229Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/21-github-pages</loc>
<lastmod>2026-08-11T12:48:28.953Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/20-replit</loc>
<lastmod>2026-08-11T12:48:28.945Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/13-audit-log-pattern</loc>
<lastmod>2026-08-11T12:48:29.103Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/12-multi-pg-pool-orchestration</loc>
<lastmod>2026-08-11T12:48:28.688Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/15-admin-table-ssot</loc>
<lastmod>2026-08-11T12:48:28.457Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/06-e2e-equivalence-manifest</loc>
<lastmod>2026-08-11T12:48:27.930Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/07-anonymous-form-hardening</loc>
<lastmod>2026-08-11T12:48:27.860Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/13-ai-browser-assistants</loc>
<lastmod>2026-08-11T12:48:29.356Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/12-ai-workflow-tools</loc>
<lastmod>2026-08-11T12:48:29.346Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/11-ai-cli-tools</loc>
<lastmod>2026-08-11T12:48:29.338Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/10-ai-coding-ides</loc>
<lastmod>2026-08-11T12:48:29.330Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/09-claude-md-pattern</loc>
<lastmod>2026-08-11T12:48:29.322Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/08-hooks-settings</loc>
<lastmod>2026-08-11T12:48:29.314Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/07-subagents</loc>
<lastmod>2026-08-11T12:48:29.304Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/06-claude-code-skills</loc>
<lastmod>2026-08-11T12:48:29.296Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/05-google-adk</loc>
<lastmod>2026-08-11T12:48:29.287Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/04-mcp-figma</loc>
<lastmod>2026-08-11T12:48:29.278Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/03-mcp-context7</loc>
<lastmod>2026-08-11T12:48:29.269Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/02-mcp-clients</loc>
<lastmod>2026-08-11T12:48:29.255Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/01-mcp</loc>
<lastmod>2026-08-11T12:48:29.246Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/07-llm-landscape</loc>
<lastmod>2026-08-11T12:48:29.220Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/06-agents-overview</loc>
<lastmod>2026-08-11T12:48:29.211Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/05-embeddings-deep</loc>
<lastmod>2026-08-11T12:48:29.203Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/04-gemini-api</loc>
<lastmod>2026-08-11T12:48:29.194Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/03-prompt-design</loc>
<lastmod>2026-08-11T12:48:29.186Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/02-rag-pgvector</loc>
<lastmod>2026-08-11T12:48:29.177Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/01-local-llm-lmstudio</loc>
<lastmod>2026-08-11T12:48:29.168Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/12-websocket-sse</loc>
<lastmod>2026-08-11T12:48:29.093Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/11-rest-api-intro</loc>
<lastmod>2026-08-11T12:48:29.080Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/10-openapi-spec</loc>
<lastmod>2026-08-11T12:48:29.066Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/09-crawler-ethics</loc>
<lastmod>2026-08-11T12:48:29.055Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/08-typeorm-readonly</loc>
<lastmod>2026-08-11T12:48:29.045Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/07-jobs-apscheduler</loc>
<lastmod>2026-08-11T12:48:29.033Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/06-api-handler-pattern</loc>
<lastmod>2026-08-11T12:48:29.018Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/05-sql-as-ssot</loc>
<lastmod>2026-08-11T12:48:29.009Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/04-python-folder-philosophy</loc>
<lastmod>2026-08-11T12:48:28.998Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/03-fastapi-philosophy</loc>
<lastmod>2026-08-11T12:48:28.989Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/02-spring-webflux-vs-mvc</loc>
<lastmod>2026-08-11T12:48:28.977Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/01-spring-multi-module</loc>
<lastmod>2026-08-11T12:48:28.969Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/19-api-mocking-wiremock</loc>
<lastmod>2026-08-11T12:48:28.936Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/18-firebase-emulator</loc>
<lastmod>2026-08-11T12:48:28.928Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/17-supabase-self-hosted</loc>
<lastmod>2026-08-11T12:48:28.920Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/16-localstack-and-ministack</loc>
<lastmod>2026-08-11T12:48:28.912Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/15-ecs-fargate</loc>
<lastmod>2026-08-11T12:48:28.904Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/14-load-balancers</loc>
<lastmod>2026-08-11T12:48:28.896Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/13-route53</loc>
<lastmod>2026-08-11T12:48:28.887Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/12-lambda</loc>
<lastmod>2026-08-11T12:48:28.879Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/11-cloudfront</loc>
<lastmod>2026-08-11T12:48:28.870Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/10-rds</loc>
<lastmod>2026-08-11T12:48:28.861Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/09-s3</loc>
<lastmod>2026-08-11T12:48:28.852Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/08-iam</loc>
<lastmod>2026-08-11T12:48:28.843Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/07-flyio</loc>
<lastmod>2026-08-11T12:48:28.834Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/06-deploying-options</loc>
<lastmod>2026-08-11T12:48:28.821Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/05-ec2</loc>
<lastmod>2026-08-11T12:48:28.801Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/04-security-group</loc>
<lastmod>2026-08-11T12:48:28.791Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/03-internet-gateway-route-table</loc>
<lastmod>2026-08-11T12:48:28.781Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/02-vpc-and-subnet</loc>
<lastmod>2026-08-11T12:48:28.773Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/01-aws-overview</loc>
<lastmod>2026-08-11T12:48:28.763Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/11-backup-restore</loc>
<lastmod>2026-08-11T12:48:28.679Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/10-image-pipeline</loc>
<lastmod>2026-08-11T12:48:28.671Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/09-fcm-push</loc>
<lastmod>2026-08-11T12:48:28.661Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/08-supabase</loc>
<lastmod>2026-08-11T12:48:28.653Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/07-pgvector-rag</loc>
<lastmod>2026-08-11T12:48:28.644Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/06-kafka-when</loc>
<lastmod>2026-08-11T12:48:28.636Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/05-data-pipeline</loc>
<lastmod>2026-08-11T12:48:28.628Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/04-redis-roles</loc>
<lastmod>2026-08-11T12:48:28.619Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/03-three-layer-cache</loc>
<lastmod>2026-08-11T12:48:28.612Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/02-postgres-deep</loc>
<lastmod>2026-08-11T12:48:28.604Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/01-postgres-first</loc>
<lastmod>2026-08-11T12:48:28.595Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/00-sql-basics</loc>
<lastmod>2026-08-11T12:48:28.582Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/11-wsl2</loc>
<lastmod>2026-08-11T12:48:28.572Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/10-data-formats</loc>
<lastmod>2026-08-11T12:48:28.563Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/09-first-terminal-day</loc>
<lastmod>2026-08-11T12:48:28.555Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/08-text-encoding-line-endings</loc>
<lastmod>2026-08-11T12:48:28.546Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/07-markdown</loc>
<lastmod>2026-08-11T12:48:28.538Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/06-cross-platform-scripts</loc>
<lastmod>2026-08-11T12:48:28.528Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/05-cmd-and-bat</loc>
<lastmod>2026-08-11T12:48:28.520Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/04-powershell-basics</loc>
<lastmod>2026-08-11T12:48:28.512Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/03-bash-and-sh</loc>
<lastmod>2026-08-11T12:48:28.504Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/02-shells-overview</loc>
<lastmod>2026-08-11T12:48:28.496Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/01-windows-vs-mac</loc>
<lastmod>2026-08-11T12:48:28.488Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/14-loading-ux</loc>
<lastmod>2026-08-11T12:48:28.449Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/13-native-integrations</loc>
<lastmod>2026-08-11T12:48:28.441Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/12-ocr-stt-tts</loc>
<lastmod>2026-08-11T12:48:28.430Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/11-sqlite-local</loc>
<lastmod>2026-08-11T12:48:28.422Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/10-tauri-mobile-admob</loc>
<lastmod>2026-08-11T12:48:28.415Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/09-bundlers</loc>
<lastmod>2026-08-11T12:48:28.405Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/08-forms-zod</loc>
<lastmod>2026-08-11T12:48:28.395Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/07-material3-tokens</loc>
<lastmod>2026-08-11T12:48:28.386Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/06-i18n-korean-first</loc>
<lastmod>2026-08-11T12:48:28.377Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/05-tauri-over-electron</loc>
<lastmod>2026-08-11T12:48:28.365Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/04-styling-tailwind</loc>
<lastmod>2026-08-11T12:48:28.357Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/03-state-philosophy</loc>
<lastmod>2026-08-11T12:48:28.344Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/02-nextjs-app-router</loc>
<lastmod>2026-08-11T12:48:28.335Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/01-react19-compiler</loc>
<lastmod>2026-08-11T12:48:28.326Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/07-cloud-emulator-stack</loc>
<lastmod>2026-08-11T12:48:28.288Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/06-local-https-mkcert</loc>
<lastmod>2026-08-11T12:48:28.279Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/05-single-server-philosophy</loc>
<lastmod>2026-08-11T12:48:28.270Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/04-loopback-ssh-tunnel</loc>
<lastmod>2026-08-11T12:48:28.262Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/03-caddy-not-nginx</loc>
<lastmod>2026-08-11T12:48:28.250Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/02-docker-compose-patterns</loc>
<lastmod>2026-08-11T12:48:28.242Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/01-docker-basics</loc>
<lastmod>2026-08-11T12:48:28.234Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages/04-rust-for-tauri</loc>
<lastmod>2026-08-11T12:48:28.224Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages/03-python-async</loc>
<lastmod>2026-08-11T12:48:28.216Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages/02-java21-modern</loc>
<lastmod>2026-08-11T12:48:28.208Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages/01-typescript-strict</loc>
<lastmod>2026-08-11T12:48:28.200Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/05-debugging-mindset</loc>
<lastmod>2026-08-11T12:48:28.191Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/04-learning-roadmap</loc>
<lastmod>2026-08-11T12:48:28.181Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/03-how-to-ask-good-questions</loc>
<lastmod>2026-08-11T12:48:28.171Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/02-how-to-read-docs</loc>
<lastmod>2026-08-11T12:48:28.161Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/01-how-to-search</loc>
<lastmod>2026-08-11T12:48:28.151Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/00-getting-started</loc>
<lastmod>2026-08-11T12:48:28.142Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile/04-ios-build</loc>
<lastmod>2026-08-11T12:48:28.133Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile/03-android-build-apk</loc>
<lastmod>2026-08-11T12:48:28.122Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile/02-flutter-basics</loc>
<lastmod>2026-08-11T12:48:28.113Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile/01-cross-platform-options</loc>
<lastmod>2026-08-11T12:48:28.105Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/10-naming-readability</loc>
<lastmod>2026-08-11T12:48:28.096Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/09-feature-flag-skeptic</loc>
<lastmod>2026-08-11T12:48:28.088Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/08-no-ai-credit</loc>
<lastmod>2026-08-11T12:48:28.079Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/07-korean-first</loc>
<lastmod>2026-08-11T12:48:28.071Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/06-docs-for-agent-and-human</loc>
<lastmod>2026-08-11T12:48:28.062Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/05-progressive-refactor</loc>
<lastmod>2026-08-11T12:48:28.054Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/04-tradeoff-not-bestpractice</loc>
<lastmod>2026-08-11T12:48:28.046Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/03-folder-as-contract</loc>
<lastmod>2026-08-11T12:48:28.037Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/02-ssot-everywhere</loc>
<lastmod>2026-08-11T12:48:28.029Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/01-kiss-dry-yagni</loc>
<lastmod>2026-08-11T12:48:28.021Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming/04-oop-vs-functional</loc>
<lastmod>2026-08-11T12:48:28.013Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming/03-design-patterns</loc>
<lastmod>2026-08-11T12:48:28.006Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming/02-big-o</loc>
<lastmod>2026-08-11T12:48:27.996Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming/01-data-structures</loc>
<lastmod>2026-08-11T12:48:27.986Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/05-vitest-pytest-infra</loc>
<lastmod>2026-08-11T12:48:27.923Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/04-github-actions</loc>
<lastmod>2026-08-11T12:48:27.914Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/03-observability-minimal</loc>
<lastmod>2026-08-11T12:48:27.906Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/02-vitest-philosophy</loc>
<lastmod>2026-08-11T12:48:27.896Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/01-testcontainers</loc>
<lastmod>2026-08-11T12:48:27.888Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/06-headers-and-cors</loc>
<lastmod>2026-08-11T12:48:27.851Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/05-password-hashing</loc>
<lastmod>2026-08-11T12:48:27.843Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/04-input-validation-zod</loc>
<lastmod>2026-08-11T12:48:27.834Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/03-rate-limit-redis</loc>
<lastmod>2026-08-11T12:48:27.825Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/02-oauth-state-pkce</loc>
<lastmod>2026-08-11T12:48:27.816Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/01-jwt-rotation</loc>
<lastmod>2026-08-11T12:48:27.807Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/12-git-submodule-lfs</loc>
<lastmod>2026-08-11T12:48:27.797Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/11-regex</loc>
<lastmod>2026-08-11T12:48:27.788Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/10-python-venv-poetry-history</loc>
<lastmod>2026-08-11T12:48:27.779Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/09-linting-formatting</loc>
<lastmod>2026-08-11T12:48:27.769Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/08-editor-setup</loc>
<lastmod>2026-08-11T12:48:27.757Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/07-gradle</loc>
<lastmod>2026-08-11T12:48:27.744Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/06-git-workflow</loc>
<lastmod>2026-08-11T12:48:27.725Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/05-version-managers</loc>
<lastmod>2026-08-11T12:48:27.714Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/04-env-and-secrets</loc>
<lastmod>2026-08-11T12:48:27.702Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/03-python-uv</loc>
<lastmod>2026-08-11T12:48:27.691Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/02-monorepo-light</loc>
<lastmod>2026-08-11T12:48:27.681Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/01-pnpm</loc>
<lastmod>2026-08-11T12:48:27.670Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/07-browser-devtools</loc>
<lastmod>2026-08-11T12:48:27.660Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/06-internet-how-it-works</loc>
<lastmod>2026-08-11T12:48:27.650Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/05-url-anatomy</loc>
<lastmod>2026-08-11T12:48:27.642Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/04-http-rest</loc>
<lastmod>2026-08-11T12:48:27.632Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/03-javascript-basics</loc>
<lastmod>2026-08-11T12:48:27.623Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/02-css</loc>
<lastmod>2026-08-11T12:48:27.614Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/01-html</loc>
<lastmod>2026-08-11T12:48:27.592Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/1</loc>
<lastmod>2026-08-11T12:48:32.635Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/2</loc>
<lastmod>2026-08-11T12:48:32.644Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/3</loc>
<lastmod>2026-08-11T12:48:32.652Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/4</loc>
<lastmod>2026-08-11T12:48:32.661Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/5</loc>
<lastmod>2026-08-11T12:48:32.669Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/6</loc>
<lastmod>2026-08-11T12:48:32.677Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/7</loc>
<lastmod>2026-08-11T12:48:32.686Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/8</loc>
<lastmod>2026-08-11T12:48:32.694Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/9</loc>
<lastmod>2026-08-11T12:48:32.702Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/10</loc>
<lastmod>2026-08-11T12:48:32.709Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/11</loc>
<lastmod>2026-08-11T12:48:32.717Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/12</loc>
<lastmod>2026-08-11T12:48:32.726Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/13</loc>
<lastmod>2026-08-11T12:48:32.736Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/14</loc>
<lastmod>2026-08-11T12:48:32.746Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/1</loc>
<lastmod>2026-08-11T12:48:32.457Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/2</loc>
<lastmod>2026-08-11T12:48:32.465Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/3</loc>
<lastmod>2026-08-11T12:48:32.473Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/4</loc>
<lastmod>2026-08-11T12:48:32.483Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/5</loc>
<lastmod>2026-08-11T12:48:32.491Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/1</loc>
<lastmod>2026-08-11T12:48:32.342Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/2</loc>
<lastmod>2026-08-11T12:48:32.351Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/3</loc>
<lastmod>2026-08-11T12:48:32.359Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/4</loc>
<lastmod>2026-08-11T12:48:32.367Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/5</loc>
<lastmod>2026-08-11T12:48:32.377Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/6</loc>
<lastmod>2026-08-11T12:48:32.385Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/7</loc>
<lastmod>2026-08-11T12:48:32.393Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/8</loc>
<lastmod>2026-08-11T12:48:32.400Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/9</loc>
<lastmod>2026-08-11T12:48:32.409Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/10</loc>
<lastmod>2026-08-11T12:48:32.419Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/11</loc>
<lastmod>2026-08-11T12:48:32.428Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/12</loc>
<lastmod>2026-08-11T12:48:32.437Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/nextjs-fullstack</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/nextjs-fullstack/1</loc>
<lastmod>2026-08-11T12:48:32.587Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/nextjs-fullstack/2</loc>
<lastmod>2026-08-11T12:48:32.596Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/nextjs-fullstack/3</loc>
<lastmod>2026-08-11T12:48:32.604Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/nextjs-fullstack/4</loc>
<lastmod>2026-08-11T12:48:32.614Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/1</loc>
<lastmod>2026-08-11T12:48:31.966Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/2</loc>
<lastmod>2026-08-11T12:48:31.977Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/3</loc>
<lastmod>2026-08-11T12:48:31.986Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/4</loc>
<lastmod>2026-08-11T12:48:31.995Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/5</loc>
<lastmod>2026-08-11T12:48:32.006Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/6</loc>
<lastmod>2026-08-11T12:48:32.016Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/7</loc>
<lastmod>2026-08-11T12:48:32.025Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/8</loc>
<lastmod>2026-08-11T12:48:32.034Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/1</loc>
<lastmod>2026-08-11T12:48:32.771Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/2</loc>
<lastmod>2026-08-11T12:48:32.780Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/3</loc>
<lastmod>2026-08-11T12:48:32.789Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/4</loc>
<lastmod>2026-08-11T12:48:32.808Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/5</loc>
<lastmod>2026-08-11T12:48:32.822Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/6</loc>
<lastmod>2026-08-11T12:48:32.835Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/7</loc>
<lastmod>2026-08-11T12:48:32.846Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/8</loc>
<lastmod>2026-08-11T12:48:32.858Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/1</loc>
<lastmod>2026-08-11T12:48:31.820Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/2</loc>
<lastmod>2026-08-11T12:48:31.830Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/3</loc>
<lastmod>2026-08-11T12:48:31.840Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/4</loc>
<lastmod>2026-08-11T12:48:31.849Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/5</loc>
<lastmod>2026-08-11T12:48:31.857Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/6</loc>
<lastmod>2026-08-11T12:48:31.866Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/7</loc>
<lastmod>2026-08-11T12:48:31.876Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/1</loc>
<lastmod>2026-08-11T12:48:32.238Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/2</loc>
<lastmod>2026-08-11T12:48:32.248Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/3</loc>
<lastmod>2026-08-11T12:48:32.255Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/4</loc>
<lastmod>2026-08-11T12:48:32.263Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/5</loc>
<lastmod>2026-08-11T12:48:32.274Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/6</loc>
<lastmod>2026-08-11T12:48:32.282Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/7</loc>
<lastmod>2026-08-11T12:48:32.290Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/8</loc>
<lastmod>2026-08-11T12:48:32.301Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/9</loc>
<lastmod>2026-08-11T12:48:32.310Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/10</loc>
<lastmod>2026-08-11T12:48:32.323Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/1</loc>
<lastmod>2026-08-11T12:48:31.724Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/2</loc>
<lastmod>2026-08-11T12:48:31.736Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/3</loc>
<lastmod>2026-08-11T12:48:31.748Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/4</loc>
<lastmod>2026-08-11T12:48:31.759Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/5</loc>
<lastmod>2026-08-11T12:48:31.769Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/6</loc>
<lastmod>2026-08-11T12:48:31.779Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/7</loc>
<lastmod>2026-08-11T12:48:31.789Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/8</loc>
<lastmod>2026-08-11T12:48:31.799Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/1</loc>
<lastmod>2026-08-11T12:48:32.509Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/2</loc>
<lastmod>2026-08-11T12:48:32.517Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/3</loc>
<lastmod>2026-08-11T12:48:32.525Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/4</loc>
<lastmod>2026-08-11T12:48:32.534Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/5</loc>
<lastmod>2026-08-11T12:48:32.542Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/6</loc>
<lastmod>2026-08-11T12:48:32.550Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/7</loc>
<lastmod>2026-08-11T12:48:32.559Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/8</loc>
<lastmod>2026-08-11T12:48:32.569Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/1</loc>
<lastmod>2026-08-11T12:48:33.128Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/2</loc>
<lastmod>2026-08-11T12:48:33.136Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/3</loc>
<lastmod>2026-08-11T12:48:33.144Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/4</loc>
<lastmod>2026-08-11T12:48:33.153Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/5</loc>
<lastmod>2026-08-11T12:48:33.161Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/6</loc>
<lastmod>2026-08-11T12:48:33.168Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/7</loc>
<lastmod>2026-08-11T12:48:33.177Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/1</loc>
<lastmod>2026-08-11T12:48:32.877Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/2</loc>
<lastmod>2026-08-11T12:48:32.886Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/3</loc>
<lastmod>2026-08-11T12:48:32.895Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/4</loc>
<lastmod>2026-08-11T12:48:32.905Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/5</loc>
<lastmod>2026-08-11T12:48:32.914Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/6</loc>
<lastmod>2026-08-11T12:48:32.924Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/7</loc>
<lastmod>2026-08-11T12:48:32.934Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/8</loc>
<lastmod>2026-08-11T12:48:32.941Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/1</loc>
<lastmod>2026-08-11T12:48:32.958Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/2</loc>
<lastmod>2026-08-11T12:48:32.967Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/3</loc>
<lastmod>2026-08-11T12:48:32.975Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/4</loc>
<lastmod>2026-08-11T12:48:33.068Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/5</loc>
<lastmod>2026-08-11T12:48:33.078Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/6</loc>
<lastmod>2026-08-11T12:48:33.088Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/7</loc>
<lastmod>2026-08-11T12:48:33.100Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/8</loc>
<lastmod>2026-08-11T12:48:33.109Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/1</loc>
<lastmod>2026-08-11T12:48:32.115Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/2</loc>
<lastmod>2026-08-11T12:48:32.124Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/3</loc>
<lastmod>2026-08-11T12:48:32.133Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/4</loc>
<lastmod>2026-08-11T12:48:32.142Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/5</loc>
<lastmod>2026-08-11T12:48:32.153Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/6</loc>
<lastmod>2026-08-11T12:48:32.170Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/7</loc>
<lastmod>2026-08-11T12:48:32.181Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/8</loc>
<lastmod>2026-08-11T12:48:32.191Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/9</loc>
<lastmod>2026-08-11T12:48:32.202Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/10</loc>
<lastmod>2026-08-11T12:48:32.214Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/1</loc>
<lastmod>2026-08-11T12:48:32.053Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/2</loc>
<lastmod>2026-08-11T12:48:32.061Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/3</loc>
<lastmod>2026-08-11T12:48:32.069Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/4</loc>
<lastmod>2026-08-11T12:48:32.078Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/5</loc>
<lastmod>2026-08-11T12:48:32.087Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/6</loc>
<lastmod>2026-08-11T12:48:32.096Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/1</loc>
<lastmod>2026-08-11T12:48:31.896Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/2</loc>
<lastmod>2026-08-11T12:48:31.905Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/3</loc>
<lastmod>2026-08-11T12:48:31.916Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/4</loc>
<lastmod>2026-08-11T12:48:31.927Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/5</loc>
<lastmod>2026-08-11T12:48:31.937Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/6</loc>
<lastmod>2026-08-11T12:48:31.947Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/1</loc>
<lastmod>2026-08-11T12:48:32.630Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/2</loc>
<lastmod>2026-08-11T12:48:32.639Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/3</loc>
<lastmod>2026-08-11T12:48:32.648Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/4</loc>
<lastmod>2026-08-11T12:48:32.657Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/5</loc>
<lastmod>2026-08-11T12:48:32.665Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/6</loc>
<lastmod>2026-08-11T12:48:32.673Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/7</loc>
<lastmod>2026-08-11T12:48:32.681Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/8</loc>
<lastmod>2026-08-11T12:48:32.690Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/9</loc>
<lastmod>2026-08-11T12:48:32.698Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/10</loc>
<lastmod>2026-08-11T12:48:32.706Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/11</loc>
<lastmod>2026-08-11T12:48:32.713Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/12</loc>
<lastmod>2026-08-11T12:48:32.721Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/13</loc>
<lastmod>2026-08-11T12:48:32.730Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/14</loc>
<lastmod>2026-08-11T12:48:32.742Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/1</loc>
<lastmod>2026-08-11T12:48:32.452Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/2</loc>
<lastmod>2026-08-11T12:48:32.461Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/3</loc>
<lastmod>2026-08-11T12:48:32.469Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/4</loc>
<lastmod>2026-08-11T12:48:32.478Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/5</loc>
<lastmod>2026-08-11T12:48:32.487Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/1</loc>
<lastmod>2026-08-11T12:48:32.338Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/2</loc>
<lastmod>2026-08-11T12:48:32.347Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/3</loc>
<lastmod>2026-08-11T12:48:32.356Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/4</loc>
<lastmod>2026-08-11T12:48:32.363Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/5</loc>
<lastmod>2026-08-11T12:48:32.372Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/6</loc>
<lastmod>2026-08-11T12:48:32.381Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/7</loc>
<lastmod>2026-08-11T12:48:32.390Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/8</loc>
<lastmod>2026-08-11T12:48:32.397Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/9</loc>
<lastmod>2026-08-11T12:48:32.405Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/10</loc>
<lastmod>2026-08-11T12:48:32.414Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/11</loc>
<lastmod>2026-08-11T12:48:32.424Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/12</loc>
<lastmod>2026-08-11T12:48:32.433Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/nextjs-fullstack</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/nextjs-fullstack/1</loc>
<lastmod>2026-08-11T12:48:32.583Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/nextjs-fullstack/2</loc>
<lastmod>2026-08-11T12:48:32.592Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/nextjs-fullstack/3</loc>
<lastmod>2026-08-11T12:48:32.600Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/nextjs-fullstack/4</loc>
<lastmod>2026-08-11T12:48:32.610Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/1</loc>
<lastmod>2026-08-11T12:48:31.962Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/2</loc>
<lastmod>2026-08-11T12:48:31.972Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/3</loc>
<lastmod>2026-08-11T12:48:31.982Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/4</loc>
<lastmod>2026-08-11T12:48:31.991Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/5</loc>
<lastmod>2026-08-11T12:48:32.001Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/6</loc>
<lastmod>2026-08-11T12:48:32.011Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/7</loc>
<lastmod>2026-08-11T12:48:32.020Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/8</loc>
<lastmod>2026-08-11T12:48:32.029Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/1</loc>
<lastmod>2026-08-11T12:48:32.762Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/2</loc>
<lastmod>2026-08-11T12:48:32.777Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/3</loc>
<lastmod>2026-08-11T12:48:32.783Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/4</loc>
<lastmod>2026-08-11T12:48:32.798Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/5</loc>
<lastmod>2026-08-11T12:48:32.814Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/6</loc>
<lastmod>2026-08-11T12:48:32.829Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/7</loc>
<lastmod>2026-08-11T12:48:32.840Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/8</loc>
<lastmod>2026-08-11T12:48:32.852Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/1</loc>
<lastmod>2026-08-11T12:48:31.815Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/2</loc>
<lastmod>2026-08-11T12:48:31.826Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/3</loc>
<lastmod>2026-08-11T12:48:31.835Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/4</loc>
<lastmod>2026-08-11T12:48:31.844Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/5</loc>
<lastmod>2026-08-11T12:48:31.853Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/6</loc>
<lastmod>2026-08-11T12:48:31.862Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/7</loc>
<lastmod>2026-08-11T12:48:31.871Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/1</loc>
<lastmod>2026-08-11T12:48:32.234Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/2</loc>
<lastmod>2026-08-11T12:48:32.243Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/3</loc>
<lastmod>2026-08-11T12:48:32.251Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/4</loc>
<lastmod>2026-08-11T12:48:32.260Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/5</loc>
<lastmod>2026-08-11T12:48:32.267Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/6</loc>
<lastmod>2026-08-11T12:48:32.278Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/7</loc>
<lastmod>2026-08-11T12:48:32.286Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/8</loc>
<lastmod>2026-08-11T12:48:32.296Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/9</loc>
<lastmod>2026-08-11T12:48:32.305Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/10</loc>
<lastmod>2026-08-11T12:48:32.317Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/1</loc>
<lastmod>2026-08-11T12:48:31.714Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/2</loc>
<lastmod>2026-08-11T12:48:31.732Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/3</loc>
<lastmod>2026-08-11T12:48:31.741Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/4</loc>
<lastmod>2026-08-11T12:48:31.754Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/5</loc>
<lastmod>2026-08-11T12:48:31.764Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/6</loc>
<lastmod>2026-08-11T12:48:31.774Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/7</loc>
<lastmod>2026-08-11T12:48:31.784Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/8</loc>
<lastmod>2026-08-11T12:48:31.794Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/1</loc>
<lastmod>2026-08-11T12:48:32.504Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/2</loc>
<lastmod>2026-08-11T12:48:32.513Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/3</loc>
<lastmod>2026-08-11T12:48:32.521Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/4</loc>
<lastmod>2026-08-11T12:48:32.530Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/5</loc>
<lastmod>2026-08-11T12:48:32.538Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/6</loc>
<lastmod>2026-08-11T12:48:32.546Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/7</loc>
<lastmod>2026-08-11T12:48:32.554Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/8</loc>
<lastmod>2026-08-11T12:48:32.563Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/1</loc>
<lastmod>2026-08-11T12:48:33.123Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/2</loc>
<lastmod>2026-08-11T12:48:33.132Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/3</loc>
<lastmod>2026-08-11T12:48:33.140Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/4</loc>
<lastmod>2026-08-11T12:48:33.149Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/5</loc>
<lastmod>2026-08-11T12:48:33.157Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/6</loc>
<lastmod>2026-08-11T12:48:33.164Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/7</loc>
<lastmod>2026-08-11T12:48:33.173Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/1</loc>
<lastmod>2026-08-11T12:48:32.873Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/2</loc>
<lastmod>2026-08-11T12:48:32.882Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/3</loc>
<lastmod>2026-08-11T12:48:32.891Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/4</loc>
<lastmod>2026-08-11T12:48:32.900Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/5</loc>
<lastmod>2026-08-11T12:48:32.909Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/6</loc>
<lastmod>2026-08-11T12:48:32.919Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/7</loc>
<lastmod>2026-08-11T12:48:32.929Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/8</loc>
<lastmod>2026-08-11T12:48:32.937Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/1</loc>
<lastmod>2026-08-11T12:48:32.954Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/2</loc>
<lastmod>2026-08-11T12:48:32.962Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/3</loc>
<lastmod>2026-08-11T12:48:32.971Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/4</loc>
<lastmod>2026-08-11T12:48:33.064Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/5</loc>
<lastmod>2026-08-11T12:48:33.073Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/6</loc>
<lastmod>2026-08-11T12:48:33.083Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/7</loc>
<lastmod>2026-08-11T12:48:33.094Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/8</loc>
<lastmod>2026-08-11T12:48:33.106Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/1</loc>
<lastmod>2026-08-11T12:48:32.111Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/2</loc>
<lastmod>2026-08-11T12:48:32.120Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/3</loc>
<lastmod>2026-08-11T12:48:32.129Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/4</loc>
<lastmod>2026-08-11T12:48:32.137Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/5</loc>
<lastmod>2026-08-11T12:48:32.146Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/6</loc>
<lastmod>2026-08-11T12:48:32.160Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/7</loc>
<lastmod>2026-08-11T12:48:32.176Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/8</loc>
<lastmod>2026-08-11T12:48:32.187Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/9</loc>
<lastmod>2026-08-11T12:48:32.196Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/10</loc>
<lastmod>2026-08-11T12:48:32.207Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/1</loc>
<lastmod>2026-08-11T12:48:32.048Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/2</loc>
<lastmod>2026-08-11T12:48:32.057Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/3</loc>
<lastmod>2026-08-11T12:48:32.065Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/4</loc>
<lastmod>2026-08-11T12:48:32.074Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/5</loc>
<lastmod>2026-08-11T12:48:32.083Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/6</loc>
<lastmod>2026-08-11T12:48:32.092Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns</loc>
<priority>0.7</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/1</loc>
<lastmod>2026-08-11T12:48:31.891Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/2</loc>
<lastmod>2026-08-11T12:48:31.901Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/3</loc>
<lastmod>2026-08-11T12:48:31.911Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/4</loc>
<lastmod>2026-08-11T12:48:31.921Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/5</loc>
<lastmod>2026-08-11T12:48:31.932Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/6</loc>
<lastmod>2026-08-11T12:48:31.941Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/api-contract</loc>
<lastmod>2026-08-11T12:48:31.496Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/idempotency</loc>
<lastmod>2026-08-11T12:48:31.534Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/ssot</loc>
<lastmod>2026-08-11T12:48:31.643Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/database-migration</loc>
<lastmod>2026-08-11T12:48:31.517Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/rate-limit</loc>
<lastmod>2026-08-11T12:48:31.613Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/cache</loc>
<lastmod>2026-08-11T12:48:31.505Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/sse</loc>
<lastmod>2026-08-11T12:48:31.638Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/webrtc-cost-gate</loc>
<lastmod>2026-08-11T12:48:31.674Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/test-fixture</loc>
<lastmod>2026-08-11T12:48:31.661Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/object-storage</loc>
<lastmod>2026-08-11T12:48:31.556Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/tauri-capability</loc>
<lastmod>2026-08-11T12:48:31.652Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/postgresql</loc>
<lastmod>2026-08-11T12:48:31.577Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/sqlite</loc>
<lastmod>2026-08-11T12:48:31.634Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/audit-log</loc>
<lastmod>2026-08-11T12:48:31.501Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/grpc</loc>
<lastmod>2026-08-11T12:48:31.529Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/websocket</loc>
<lastmod>2026-08-11T12:48:31.683Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/webrtc</loc>
<lastmod>2026-08-11T12:48:31.679Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/cloud-ai-cost-gate</loc>
<lastmod>2026-08-11T12:48:31.513Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/rag</loc>
<lastmod>2026-08-11T12:48:31.609Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/pgvector</loc>
<lastmod>2026-08-11T12:48:31.569Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/vite</loc>
<lastmod>2026-08-11T12:48:31.669Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/tauri</loc>
<lastmod>2026-08-11T12:48:31.656Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/zustand</loc>
<lastmod>2026-08-11T12:48:31.688Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/tanstack-query</loc>
<lastmod>2026-08-11T12:48:31.647Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/indexeddb</loc>
<lastmod>2026-08-11T12:48:31.540Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/fastapi</loc>
<lastmod>2026-08-11T12:48:31.525Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/spring-mvc</loc>
<lastmod>2026-08-11T12:48:31.629Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/row-level-security</loc>
<lastmod>2026-08-11T12:48:31.625Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/playwright</loc>
<lastmod>2026-08-11T12:48:31.574Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/testcontainers</loc>
<lastmod>2026-08-11T12:48:31.665Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/lm-studio</loc>
<lastmod>2026-08-11T12:48:31.548Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/onnx-runtime-web</loc>
<lastmod>2026-08-11T12:48:31.564Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/react</loc>
<lastmod>2026-08-11T12:48:31.616Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/nextjs</loc>
<lastmod>2026-08-11T12:48:31.552Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/redis</loc>
<lastmod>2026-08-11T12:48:31.620Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/kafka</loc>
<lastmod>2026-08-11T12:48:31.544Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/ocr</loc>
<lastmod>2026-08-11T12:48:31.560Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/caddy</loc>
<lastmod>2026-08-11T12:48:31.509Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/docker-compose</loc>
<lastmod>2026-08-11T12:48:31.521Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/terms/prometheus</loc>
<lastmod>2026-08-11T12:48:31.581Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/api-contract</loc>
<lastmod>2026-08-11T12:48:31.492Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/idempotency</loc>
<lastmod>2026-08-11T12:48:31.532Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/ssot</loc>
<lastmod>2026-08-11T12:48:31.641Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/database-migration</loc>
<lastmod>2026-08-11T12:48:31.515Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/rate-limit</loc>
<lastmod>2026-08-11T12:48:31.611Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/cache</loc>
<lastmod>2026-08-11T12:48:31.503Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/sse</loc>
<lastmod>2026-08-11T12:48:31.636Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/webrtc-cost-gate</loc>
<lastmod>2026-08-11T12:48:31.671Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/test-fixture</loc>
<lastmod>2026-08-11T12:48:31.659Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/object-storage</loc>
<lastmod>2026-08-11T12:48:31.554Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/tauri-capability</loc>
<lastmod>2026-08-11T12:48:31.649Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/postgresql</loc>
<lastmod>2026-08-11T12:48:31.576Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/sqlite</loc>
<lastmod>2026-08-11T12:48:31.632Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/audit-log</loc>
<lastmod>2026-08-11T12:48:31.498Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/grpc</loc>
<lastmod>2026-08-11T12:48:31.527Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/websocket</loc>
<lastmod>2026-08-11T12:48:31.681Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/webrtc</loc>
<lastmod>2026-08-11T12:48:31.676Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/cloud-ai-cost-gate</loc>
<lastmod>2026-08-11T12:48:31.511Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/rag</loc>
<lastmod>2026-08-11T12:48:31.607Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/pgvector</loc>
<lastmod>2026-08-11T12:48:31.567Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/vite</loc>
<lastmod>2026-08-11T12:48:31.667Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/tauri</loc>
<lastmod>2026-08-11T12:48:31.654Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/zustand</loc>
<lastmod>2026-08-11T12:48:31.686Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/tanstack-query</loc>
<lastmod>2026-08-11T12:48:31.645Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/indexeddb</loc>
<lastmod>2026-08-11T12:48:31.537Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/fastapi</loc>
<lastmod>2026-08-11T12:48:31.523Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/spring-mvc</loc>
<lastmod>2026-08-11T12:48:31.627Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/row-level-security</loc>
<lastmod>2026-08-11T12:48:31.622Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/playwright</loc>
<lastmod>2026-08-11T12:48:31.571Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/testcontainers</loc>
<lastmod>2026-08-11T12:48:31.663Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/lm-studio</loc>
<lastmod>2026-08-11T12:48:31.546Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/onnx-runtime-web</loc>
<lastmod>2026-08-11T12:48:31.562Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/react</loc>
<lastmod>2026-08-11T12:48:31.614Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/nextjs</loc>
<lastmod>2026-08-11T12:48:31.550Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/redis</loc>
<lastmod>2026-08-11T12:48:31.618Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/kafka</loc>
<lastmod>2026-08-11T12:48:31.542Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/ocr</loc>
<lastmod>2026-08-11T12:48:31.558Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/caddy</loc>
<lastmod>2026-08-11T12:48:31.507Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/docker-compose</loc>
<lastmod>2026-08-11T12:48:31.519Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/terms/prometheus</loc>
<lastmod>2026-08-11T12:48:31.579Z</lastmod>
<priority>0.5</priority>
</url>
</urlset>
