<?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/glossary</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/glossary</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-13T07:54:13.285Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/18-grpc-voice-boundary</loc>
<lastmod>2026-08-13T07:54:13.276Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/17-scheduler-result-contract</loc>
<lastmod>2026-08-13T07:54:13.266Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/16-request-id-and-kafka</loc>
<lastmod>2026-08-13T07:54:13.255Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/19-complete-member-set-upsert</loc>
<lastmod>2026-08-13T07:54:12.804Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/18-trigram-search-index</loc>
<lastmod>2026-08-13T07:54:12.795Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/17-rag-completed-file-boundary</loc>
<lastmod>2026-08-13T07:54:12.786Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/18-tauri-capability-boundary</loc>
<lastmod>2026-08-13T07:54:12.396Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/10-capability-readiness</loc>
<lastmod>2026-08-13T07:54:12.162Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/09-red-metrics-and-slo</loc>
<lastmod>2026-08-13T07:54:12.147Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/08-compose-readiness-rollback</loc>
<lastmod>2026-08-13T07:54:12.136Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/11-fail-closed-migration-replay</loc>
<lastmod>2026-08-13T07:54:11.586Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/10-cms-static-build-contract</loc>
<lastmod>2026-08-13T07:54:11.571Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/09-admin-init-advisory-lock</loc>
<lastmod>2026-08-13T07:54:11.549Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/08-release-smoke-rollback</loc>
<lastmod>2026-08-13T07:54:11.536Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/09-upload-signature-atomicity</loc>
<lastmod>2026-08-13T07:54:11.413Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/16-idempotent-migration-recovery</loc>
<lastmod>2026-08-13T07:54:12.773Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/07-acceptance-evidence</loc>
<lastmod>2026-08-13T07:54:11.522Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/17-content-continuity-ux</loc>
<lastmod>2026-08-13T07:54:12.386Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/15-public-api-as-bff</loc>
<lastmod>2026-08-13T07:54:13.245Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/22-metadata-template-single-source</loc>
<lastmod>2026-08-13T07:54:13.076Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/15-seed-from-monorepo-root</loc>
<lastmod>2026-08-13T07:54:12.761Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/16-dashboard-widget-uniformity</loc>
<lastmod>2026-08-13T07:54:12.374Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/08-public-route-whitelist</loc>
<lastmod>2026-08-13T07:54:11.399Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/14-email-otp</loc>
<lastmod>2026-08-13T07:54:13.235Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/14-supabase-storage</loc>
<lastmod>2026-08-13T07:54:12.748Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/13-kafka-topics</loc>
<lastmod>2026-08-13T07:54:12.735Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/15-google-stitch</loc>
<lastmod>2026-08-13T07:54:13.565Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/09-notebooklm</loc>
<lastmod>2026-08-13T07:54:13.387Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/14-ai-web-ides</loc>
<lastmod>2026-08-13T07:54:13.551Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/08-google-ai-studio</loc>
<lastmod>2026-08-13T07:54:13.377Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/21-github-pages</loc>
<lastmod>2026-08-13T07:54:13.064Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/20-replit</loc>
<lastmod>2026-08-13T07:54:13.052Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/13-audit-log-pattern</loc>
<lastmod>2026-08-13T07:54:13.224Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/12-multi-pg-pool-orchestration</loc>
<lastmod>2026-08-13T07:54:12.721Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/15-admin-table-ssot</loc>
<lastmod>2026-08-13T07:54:12.363Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/06-e2e-equivalence-manifest</loc>
<lastmod>2026-08-13T07:54:11.505Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/07-anonymous-form-hardening</loc>
<lastmod>2026-08-13T07:54:11.388Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/13-ai-browser-assistants</loc>
<lastmod>2026-08-13T07:54:13.540Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/12-ai-workflow-tools</loc>
<lastmod>2026-08-13T07:54:13.528Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/11-ai-cli-tools</loc>
<lastmod>2026-08-13T07:54:13.517Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/10-ai-coding-ides</loc>
<lastmod>2026-08-13T07:54:13.505Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/09-claude-md-pattern</loc>
<lastmod>2026-08-13T07:54:13.493Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/08-hooks-settings</loc>
<lastmod>2026-08-13T07:54:13.478Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/07-subagents</loc>
<lastmod>2026-08-13T07:54:13.468Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/06-claude-code-skills</loc>
<lastmod>2026-08-13T07:54:13.454Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/05-google-adk</loc>
<lastmod>2026-08-13T07:54:13.442Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/04-mcp-figma</loc>
<lastmod>2026-08-13T07:54:13.431Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/03-mcp-context7</loc>
<lastmod>2026-08-13T07:54:13.418Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/02-mcp-clients</loc>
<lastmod>2026-08-13T07:54:13.406Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/agent-tooling/01-mcp</loc>
<lastmod>2026-08-13T07:54:13.395Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/07-llm-landscape</loc>
<lastmod>2026-08-13T07:54:13.366Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/06-agents-overview</loc>
<lastmod>2026-08-13T07:54:13.356Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/05-embeddings-deep</loc>
<lastmod>2026-08-13T07:54:13.345Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/04-gemini-api</loc>
<lastmod>2026-08-13T07:54:13.330Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/03-prompt-design</loc>
<lastmod>2026-08-13T07:54:13.318Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/02-rag-pgvector</loc>
<lastmod>2026-08-13T07:54:13.307Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/ai/01-local-llm-lmstudio</loc>
<lastmod>2026-08-13T07:54:13.295Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/12-websocket-sse</loc>
<lastmod>2026-08-13T07:54:13.214Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/11-rest-api-intro</loc>
<lastmod>2026-08-13T07:54:13.204Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/10-openapi-spec</loc>
<lastmod>2026-08-13T07:54:13.191Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/09-crawler-ethics</loc>
<lastmod>2026-08-13T07:54:13.180Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/08-typeorm-readonly</loc>
<lastmod>2026-08-13T07:54:13.170Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/07-jobs-apscheduler</loc>
<lastmod>2026-08-13T07:54:13.160Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/06-api-handler-pattern</loc>
<lastmod>2026-08-13T07:54:13.149Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/05-sql-as-ssot</loc>
<lastmod>2026-08-13T07:54:13.138Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/04-python-folder-philosophy</loc>
<lastmod>2026-08-13T07:54:13.127Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/03-fastapi-philosophy</loc>
<lastmod>2026-08-13T07:54:13.115Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/02-spring-webflux-vs-mvc</loc>
<lastmod>2026-08-13T07:54:13.101Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/backend/01-spring-multi-module</loc>
<lastmod>2026-08-13T07:54:13.089Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/19-api-mocking-wiremock</loc>
<lastmod>2026-08-13T07:54:13.039Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/18-firebase-emulator</loc>
<lastmod>2026-08-13T07:54:13.025Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/17-supabase-self-hosted</loc>
<lastmod>2026-08-13T07:54:13.014Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/16-localstack-and-ministack</loc>
<lastmod>2026-08-13T07:54:13.003Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/15-ecs-fargate</loc>
<lastmod>2026-08-13T07:54:12.990Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/14-load-balancers</loc>
<lastmod>2026-08-13T07:54:12.976Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/13-route53</loc>
<lastmod>2026-08-13T07:54:12.966Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/12-lambda</loc>
<lastmod>2026-08-13T07:54:12.955Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/11-cloudfront</loc>
<lastmod>2026-08-13T07:54:12.940Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/10-rds</loc>
<lastmod>2026-08-13T07:54:12.925Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/09-s3</loc>
<lastmod>2026-08-13T07:54:12.912Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/08-iam</loc>
<lastmod>2026-08-13T07:54:12.900Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/07-flyio</loc>
<lastmod>2026-08-13T07:54:12.890Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/06-deploying-options</loc>
<lastmod>2026-08-13T07:54:12.873Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/05-ec2</loc>
<lastmod>2026-08-13T07:54:12.861Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/04-security-group</loc>
<lastmod>2026-08-13T07:54:12.851Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/03-internet-gateway-route-table</loc>
<lastmod>2026-08-13T07:54:12.840Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/02-vpc-and-subnet</loc>
<lastmod>2026-08-13T07:54:12.830Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/cloud/01-aws-overview</loc>
<lastmod>2026-08-13T07:54:12.818Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/11-backup-restore</loc>
<lastmod>2026-08-13T07:54:12.709Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/10-image-pipeline</loc>
<lastmod>2026-08-13T07:54:12.697Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/09-fcm-push</loc>
<lastmod>2026-08-13T07:54:12.682Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/08-supabase</loc>
<lastmod>2026-08-13T07:54:12.668Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/07-pgvector-rag</loc>
<lastmod>2026-08-13T07:54:12.656Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/06-kafka-when</loc>
<lastmod>2026-08-13T07:54:12.646Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/05-data-pipeline</loc>
<lastmod>2026-08-13T07:54:12.634Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/04-redis-roles</loc>
<lastmod>2026-08-13T07:54:12.623Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/03-three-layer-cache</loc>
<lastmod>2026-08-13T07:54:12.608Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/02-postgres-deep</loc>
<lastmod>2026-08-13T07:54:12.593Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/01-postgres-first</loc>
<lastmod>2026-08-13T07:54:12.579Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/data/00-sql-basics</loc>
<lastmod>2026-08-13T07:54:12.562Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/11-wsl2</loc>
<lastmod>2026-08-13T07:54:12.537Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/10-data-formats</loc>
<lastmod>2026-08-13T07:54:12.520Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/09-first-terminal-day</loc>
<lastmod>2026-08-13T07:54:12.507Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/08-text-encoding-line-endings</loc>
<lastmod>2026-08-13T07:54:12.494Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/07-markdown</loc>
<lastmod>2026-08-13T07:54:12.484Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/06-cross-platform-scripts</loc>
<lastmod>2026-08-13T07:54:12.472Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/05-cmd-and-bat</loc>
<lastmod>2026-08-13T07:54:12.460Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/04-powershell-basics</loc>
<lastmod>2026-08-13T07:54:12.448Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/03-bash-and-sh</loc>
<lastmod>2026-08-13T07:54:12.431Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/02-shells-overview</loc>
<lastmod>2026-08-13T07:54:12.421Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/environment/01-windows-vs-mac</loc>
<lastmod>2026-08-13T07:54:12.409Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/14-loading-ux</loc>
<lastmod>2026-08-13T07:54:12.352Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/13-native-integrations</loc>
<lastmod>2026-08-13T07:54:12.338Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/12-ocr-stt-tts</loc>
<lastmod>2026-08-13T07:54:12.328Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/11-sqlite-local</loc>
<lastmod>2026-08-13T07:54:12.315Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/10-tauri-mobile-admob</loc>
<lastmod>2026-08-13T07:54:12.301Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/09-bundlers</loc>
<lastmod>2026-08-13T07:54:12.289Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/08-forms-zod</loc>
<lastmod>2026-08-13T07:54:12.276Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/07-material3-tokens</loc>
<lastmod>2026-08-13T07:54:12.262Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/06-i18n-korean-first</loc>
<lastmod>2026-08-13T07:54:12.244Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/05-tauri-over-electron</loc>
<lastmod>2026-08-13T07:54:12.232Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/04-styling-tailwind</loc>
<lastmod>2026-08-13T07:54:12.220Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/03-state-philosophy</loc>
<lastmod>2026-08-13T07:54:12.202Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/02-nextjs-app-router</loc>
<lastmod>2026-08-13T07:54:12.188Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/frontend/01-react19-compiler</loc>
<lastmod>2026-08-13T07:54:12.175Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/07-cloud-emulator-stack</loc>
<lastmod>2026-08-13T07:54:12.121Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/06-local-https-mkcert</loc>
<lastmod>2026-08-13T07:54:12.107Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/05-single-server-philosophy</loc>
<lastmod>2026-08-13T07:54:12.094Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/04-loopback-ssh-tunnel</loc>
<lastmod>2026-08-13T07:54:12.076Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/03-caddy-not-nginx</loc>
<lastmod>2026-08-13T07:54:12.063Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/02-docker-compose-patterns</loc>
<lastmod>2026-08-13T07:54:12.046Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/infra/01-docker-basics</loc>
<lastmod>2026-08-13T07:54:12.035Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages/04-rust-for-tauri</loc>
<lastmod>2026-08-13T07:54:12.021Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages/03-python-async</loc>
<lastmod>2026-08-13T07:54:12.009Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages/02-java21-modern</loc>
<lastmod>2026-08-13T07:54:11.991Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/languages/01-typescript-strict</loc>
<lastmod>2026-08-13T07:54:11.977Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/05-debugging-mindset</loc>
<lastmod>2026-08-13T07:54:11.963Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/04-learning-roadmap</loc>
<lastmod>2026-08-13T07:54:11.947Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/03-how-to-ask-good-questions</loc>
<lastmod>2026-08-13T07:54:11.926Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/02-how-to-read-docs</loc>
<lastmod>2026-08-13T07:54:11.909Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/01-how-to-search</loc>
<lastmod>2026-08-13T07:54:11.896Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/learning/00-getting-started</loc>
<lastmod>2026-08-13T07:54:11.882Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile/04-ios-build</loc>
<lastmod>2026-08-13T07:54:11.865Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile/03-android-build-apk</loc>
<lastmod>2026-08-13T07:54:11.848Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile/02-flutter-basics</loc>
<lastmod>2026-08-13T07:54:11.830Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/mobile/01-cross-platform-options</loc>
<lastmod>2026-08-13T07:54:11.803Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/10-naming-readability</loc>
<lastmod>2026-08-13T07:54:11.783Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/09-feature-flag-skeptic</loc>
<lastmod>2026-08-13T07:54:11.766Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/08-no-ai-credit</loc>
<lastmod>2026-08-13T07:54:11.753Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/07-korean-first</loc>
<lastmod>2026-08-13T07:54:11.738Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/06-docs-for-agent-and-human</loc>
<lastmod>2026-08-13T07:54:11.726Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/05-progressive-refactor</loc>
<lastmod>2026-08-13T07:54:11.711Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/04-tradeoff-not-bestpractice</loc>
<lastmod>2026-08-13T07:54:11.698Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/03-folder-as-contract</loc>
<lastmod>2026-08-13T07:54:11.685Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/02-ssot-everywhere</loc>
<lastmod>2026-08-13T07:54:11.671Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/philosophy/01-kiss-dry-yagni</loc>
<lastmod>2026-08-13T07:54:11.658Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming/04-oop-vs-functional</loc>
<lastmod>2026-08-13T07:54:11.644Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming/03-design-patterns</loc>
<lastmod>2026-08-13T07:54:11.631Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming/02-big-o</loc>
<lastmod>2026-08-13T07:54:11.615Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/programming/01-data-structures</loc>
<lastmod>2026-08-13T07:54:11.602Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/05-vitest-pytest-infra</loc>
<lastmod>2026-08-13T07:54:11.492Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/04-github-actions</loc>
<lastmod>2026-08-13T07:54:11.480Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/03-observability-minimal</loc>
<lastmod>2026-08-13T07:54:11.462Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/02-vitest-philosophy</loc>
<lastmod>2026-08-13T07:54:11.448Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/quality/01-testcontainers</loc>
<lastmod>2026-08-13T07:54:11.429Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/06-headers-and-cors</loc>
<lastmod>2026-08-13T07:54:11.372Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/05-password-hashing</loc>
<lastmod>2026-08-13T07:54:11.359Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/04-input-validation-zod</loc>
<lastmod>2026-08-13T07:54:11.345Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/03-rate-limit-redis</loc>
<lastmod>2026-08-13T07:54:11.330Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/02-oauth-state-pkce</loc>
<lastmod>2026-08-13T07:54:11.316Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/security/01-jwt-rotation</loc>
<lastmod>2026-08-13T07:54:11.298Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/12-git-submodule-lfs</loc>
<lastmod>2026-08-13T07:54:11.283Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/11-regex</loc>
<lastmod>2026-08-13T07:54:11.264Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/10-python-venv-poetry-history</loc>
<lastmod>2026-08-13T07:54:11.250Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/09-linting-formatting</loc>
<lastmod>2026-08-13T07:54:11.236Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/08-editor-setup</loc>
<lastmod>2026-08-13T07:54:11.218Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/07-gradle</loc>
<lastmod>2026-08-13T07:54:11.202Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/06-git-workflow</loc>
<lastmod>2026-08-13T07:54:11.186Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/05-version-managers</loc>
<lastmod>2026-08-13T07:54:11.168Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/04-env-and-secrets</loc>
<lastmod>2026-08-13T07:54:11.155Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/03-python-uv</loc>
<lastmod>2026-08-13T07:54:11.139Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/02-monorepo-light</loc>
<lastmod>2026-08-13T07:54:11.124Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/tools/01-pnpm</loc>
<lastmod>2026-08-13T07:54:11.106Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/07-browser-devtools</loc>
<lastmod>2026-08-13T07:54:11.088Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/06-internet-how-it-works</loc>
<lastmod>2026-08-13T07:54:11.062Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/05-url-anatomy</loc>
<lastmod>2026-08-13T07:54:11.039Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/04-http-rest</loc>
<lastmod>2026-08-13T07:54:11.021Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/03-javascript-basics</loc>
<lastmod>2026-08-13T07:54:10.998Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/02-css</loc>
<lastmod>2026-08-13T07:54:10.972Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/notes/web-fundamentals/01-html</loc>
<lastmod>2026-08-13T07:54:10.954Z</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-13T07:54:13.280Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/18-grpc-voice-boundary</loc>
<lastmod>2026-08-13T07:54:13.270Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/17-scheduler-result-contract</loc>
<lastmod>2026-08-13T07:54:13.260Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/16-request-id-and-kafka</loc>
<lastmod>2026-08-13T07:54:13.250Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/19-complete-member-set-upsert</loc>
<lastmod>2026-08-13T07:54:12.800Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/18-trigram-search-index</loc>
<lastmod>2026-08-13T07:54:12.791Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/17-rag-completed-file-boundary</loc>
<lastmod>2026-08-13T07:54:12.779Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/18-tauri-capability-boundary</loc>
<lastmod>2026-08-13T07:54:12.391Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/10-capability-readiness</loc>
<lastmod>2026-08-13T07:54:12.156Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/09-red-metrics-and-slo</loc>
<lastmod>2026-08-13T07:54:12.142Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/08-compose-readiness-rollback</loc>
<lastmod>2026-08-13T07:54:12.130Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/11-fail-closed-migration-replay</loc>
<lastmod>2026-08-13T07:54:11.581Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/10-cms-static-build-contract</loc>
<lastmod>2026-08-13T07:54:11.560Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/09-admin-init-advisory-lock</loc>
<lastmod>2026-08-13T07:54:11.541Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/08-release-smoke-rollback</loc>
<lastmod>2026-08-13T07:54:11.530Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/09-upload-signature-atomicity</loc>
<lastmod>2026-08-13T07:54:11.407Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/16-idempotent-migration-recovery</loc>
<lastmod>2026-08-13T07:54:12.767Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/07-acceptance-evidence</loc>
<lastmod>2026-08-13T07:54:11.514Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/17-content-continuity-ux</loc>
<lastmod>2026-08-13T07:54:12.380Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/15-public-api-as-bff</loc>
<lastmod>2026-08-13T07:54:13.240Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/22-metadata-template-single-source</loc>
<lastmod>2026-08-13T07:54:13.070Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/15-seed-from-monorepo-root</loc>
<lastmod>2026-08-13T07:54:12.754Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/16-dashboard-widget-uniformity</loc>
<lastmod>2026-08-13T07:54:12.368Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/08-public-route-whitelist</loc>
<lastmod>2026-08-13T07:54:11.393Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/14-email-otp</loc>
<lastmod>2026-08-13T07:54:13.230Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/14-supabase-storage</loc>
<lastmod>2026-08-13T07:54:12.740Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/13-kafka-topics</loc>
<lastmod>2026-08-13T07:54:12.729Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/15-google-stitch</loc>
<lastmod>2026-08-13T07:54:13.557Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/09-notebooklm</loc>
<lastmod>2026-08-13T07:54:13.382Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/14-ai-web-ides</loc>
<lastmod>2026-08-13T07:54:13.545Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/08-google-ai-studio</loc>
<lastmod>2026-08-13T07:54:13.371Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/21-github-pages</loc>
<lastmod>2026-08-13T07:54:13.058Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/20-replit</loc>
<lastmod>2026-08-13T07:54:13.046Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/13-audit-log-pattern</loc>
<lastmod>2026-08-13T07:54:13.219Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/12-multi-pg-pool-orchestration</loc>
<lastmod>2026-08-13T07:54:12.715Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/15-admin-table-ssot</loc>
<lastmod>2026-08-13T07:54:12.357Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/06-e2e-equivalence-manifest</loc>
<lastmod>2026-08-13T07:54:11.499Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/07-anonymous-form-hardening</loc>
<lastmod>2026-08-13T07:54:11.378Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/13-ai-browser-assistants</loc>
<lastmod>2026-08-13T07:54:13.534Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/12-ai-workflow-tools</loc>
<lastmod>2026-08-13T07:54:13.522Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/11-ai-cli-tools</loc>
<lastmod>2026-08-13T07:54:13.511Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/10-ai-coding-ides</loc>
<lastmod>2026-08-13T07:54:13.500Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/09-claude-md-pattern</loc>
<lastmod>2026-08-13T07:54:13.486Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/08-hooks-settings</loc>
<lastmod>2026-08-13T07:54:13.472Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/07-subagents</loc>
<lastmod>2026-08-13T07:54:13.461Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/06-claude-code-skills</loc>
<lastmod>2026-08-13T07:54:13.447Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/05-google-adk</loc>
<lastmod>2026-08-13T07:54:13.436Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/04-mcp-figma</loc>
<lastmod>2026-08-13T07:54:13.426Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/03-mcp-context7</loc>
<lastmod>2026-08-13T07:54:13.412Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/02-mcp-clients</loc>
<lastmod>2026-08-13T07:54:13.400Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/agent-tooling/01-mcp</loc>
<lastmod>2026-08-13T07:54:13.391Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/07-llm-landscape</loc>
<lastmod>2026-08-13T07:54:13.361Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/06-agents-overview</loc>
<lastmod>2026-08-13T07:54:13.350Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/05-embeddings-deep</loc>
<lastmod>2026-08-13T07:54:13.339Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/04-gemini-api</loc>
<lastmod>2026-08-13T07:54:13.323Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/03-prompt-design</loc>
<lastmod>2026-08-13T07:54:13.312Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/02-rag-pgvector</loc>
<lastmod>2026-08-13T07:54:13.300Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/ai/01-local-llm-lmstudio</loc>
<lastmod>2026-08-13T07:54:13.290Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/12-websocket-sse</loc>
<lastmod>2026-08-13T07:54:13.209Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/11-rest-api-intro</loc>
<lastmod>2026-08-13T07:54:13.197Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/10-openapi-spec</loc>
<lastmod>2026-08-13T07:54:13.185Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/09-crawler-ethics</loc>
<lastmod>2026-08-13T07:54:13.174Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/08-typeorm-readonly</loc>
<lastmod>2026-08-13T07:54:13.164Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/07-jobs-apscheduler</loc>
<lastmod>2026-08-13T07:54:13.154Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/06-api-handler-pattern</loc>
<lastmod>2026-08-13T07:54:13.144Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/05-sql-as-ssot</loc>
<lastmod>2026-08-13T07:54:13.132Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/04-python-folder-philosophy</loc>
<lastmod>2026-08-13T07:54:13.121Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/03-fastapi-philosophy</loc>
<lastmod>2026-08-13T07:54:13.108Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/02-spring-webflux-vs-mvc</loc>
<lastmod>2026-08-13T07:54:13.095Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/backend/01-spring-multi-module</loc>
<lastmod>2026-08-13T07:54:13.081Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/19-api-mocking-wiremock</loc>
<lastmod>2026-08-13T07:54:13.033Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/18-firebase-emulator</loc>
<lastmod>2026-08-13T07:54:13.020Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/17-supabase-self-hosted</loc>
<lastmod>2026-08-13T07:54:13.008Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/16-localstack-and-ministack</loc>
<lastmod>2026-08-13T07:54:12.995Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/15-ecs-fargate</loc>
<lastmod>2026-08-13T07:54:12.984Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/14-load-balancers</loc>
<lastmod>2026-08-13T07:54:12.971Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/13-route53</loc>
<lastmod>2026-08-13T07:54:12.960Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/12-lambda</loc>
<lastmod>2026-08-13T07:54:12.947Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/11-cloudfront</loc>
<lastmod>2026-08-13T07:54:12.932Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/10-rds</loc>
<lastmod>2026-08-13T07:54:12.918Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/09-s3</loc>
<lastmod>2026-08-13T07:54:12.904Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/08-iam</loc>
<lastmod>2026-08-13T07:54:12.894Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/07-flyio</loc>
<lastmod>2026-08-13T07:54:12.878Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/06-deploying-options</loc>
<lastmod>2026-08-13T07:54:12.866Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/05-ec2</loc>
<lastmod>2026-08-13T07:54:12.857Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/04-security-group</loc>
<lastmod>2026-08-13T07:54:12.846Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/03-internet-gateway-route-table</loc>
<lastmod>2026-08-13T07:54:12.835Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/02-vpc-and-subnet</loc>
<lastmod>2026-08-13T07:54:12.824Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/cloud/01-aws-overview</loc>
<lastmod>2026-08-13T07:54:12.810Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/11-backup-restore</loc>
<lastmod>2026-08-13T07:54:12.703Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/10-image-pipeline</loc>
<lastmod>2026-08-13T07:54:12.690Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/09-fcm-push</loc>
<lastmod>2026-08-13T07:54:12.674Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/08-supabase</loc>
<lastmod>2026-08-13T07:54:12.663Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/07-pgvector-rag</loc>
<lastmod>2026-08-13T07:54:12.651Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/06-kafka-when</loc>
<lastmod>2026-08-13T07:54:12.640Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/05-data-pipeline</loc>
<lastmod>2026-08-13T07:54:12.629Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/04-redis-roles</loc>
<lastmod>2026-08-13T07:54:12.615Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/03-three-layer-cache</loc>
<lastmod>2026-08-13T07:54:12.602Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/02-postgres-deep</loc>
<lastmod>2026-08-13T07:54:12.585Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/01-postgres-first</loc>
<lastmod>2026-08-13T07:54:12.573Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/data/00-sql-basics</loc>
<lastmod>2026-08-13T07:54:12.547Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/11-wsl2</loc>
<lastmod>2026-08-13T07:54:12.527Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/10-data-formats</loc>
<lastmod>2026-08-13T07:54:12.513Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/09-first-terminal-day</loc>
<lastmod>2026-08-13T07:54:12.501Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/08-text-encoding-line-endings</loc>
<lastmod>2026-08-13T07:54:12.489Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/07-markdown</loc>
<lastmod>2026-08-13T07:54:12.478Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/06-cross-platform-scripts</loc>
<lastmod>2026-08-13T07:54:12.466Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/05-cmd-and-bat</loc>
<lastmod>2026-08-13T07:54:12.455Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/04-powershell-basics</loc>
<lastmod>2026-08-13T07:54:12.443Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/03-bash-and-sh</loc>
<lastmod>2026-08-13T07:54:12.426Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/02-shells-overview</loc>
<lastmod>2026-08-13T07:54:12.415Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/environment/01-windows-vs-mac</loc>
<lastmod>2026-08-13T07:54:12.404Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/14-loading-ux</loc>
<lastmod>2026-08-13T07:54:12.345Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/13-native-integrations</loc>
<lastmod>2026-08-13T07:54:12.333Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/12-ocr-stt-tts</loc>
<lastmod>2026-08-13T07:54:12.321Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/11-sqlite-local</loc>
<lastmod>2026-08-13T07:54:12.310Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/10-tauri-mobile-admob</loc>
<lastmod>2026-08-13T07:54:12.295Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/09-bundlers</loc>
<lastmod>2026-08-13T07:54:12.283Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/08-forms-zod</loc>
<lastmod>2026-08-13T07:54:12.268Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/07-material3-tokens</loc>
<lastmod>2026-08-13T07:54:12.254Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/06-i18n-korean-first</loc>
<lastmod>2026-08-13T07:54:12.239Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/05-tauri-over-electron</loc>
<lastmod>2026-08-13T07:54:12.226Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/04-styling-tailwind</loc>
<lastmod>2026-08-13T07:54:12.209Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/03-state-philosophy</loc>
<lastmod>2026-08-13T07:54:12.195Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/02-nextjs-app-router</loc>
<lastmod>2026-08-13T07:54:12.181Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/frontend/01-react19-compiler</loc>
<lastmod>2026-08-13T07:54:12.167Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/07-cloud-emulator-stack</loc>
<lastmod>2026-08-13T07:54:12.113Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/06-local-https-mkcert</loc>
<lastmod>2026-08-13T07:54:12.101Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/05-single-server-philosophy</loc>
<lastmod>2026-08-13T07:54:12.088Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/04-loopback-ssh-tunnel</loc>
<lastmod>2026-08-13T07:54:12.071Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/03-caddy-not-nginx</loc>
<lastmod>2026-08-13T07:54:12.054Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/02-docker-compose-patterns</loc>
<lastmod>2026-08-13T07:54:12.041Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/infra/01-docker-basics</loc>
<lastmod>2026-08-13T07:54:12.028Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages/04-rust-for-tauri</loc>
<lastmod>2026-08-13T07:54:12.015Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages/03-python-async</loc>
<lastmod>2026-08-13T07:54:11.997Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages/02-java21-modern</loc>
<lastmod>2026-08-13T07:54:11.983Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/languages/01-typescript-strict</loc>
<lastmod>2026-08-13T07:54:11.970Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/05-debugging-mindset</loc>
<lastmod>2026-08-13T07:54:11.954Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/04-learning-roadmap</loc>
<lastmod>2026-08-13T07:54:11.940Z</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-13T07:54:11.915Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/02-how-to-read-docs</loc>
<lastmod>2026-08-13T07:54:11.903Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/01-how-to-search</loc>
<lastmod>2026-08-13T07:54:11.889Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/learning/00-getting-started</loc>
<lastmod>2026-08-13T07:54:11.874Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile/04-ios-build</loc>
<lastmod>2026-08-13T07:54:11.858Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile/03-android-build-apk</loc>
<lastmod>2026-08-13T07:54:11.840Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile/02-flutter-basics</loc>
<lastmod>2026-08-13T07:54:11.813Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/mobile/01-cross-platform-options</loc>
<lastmod>2026-08-13T07:54:11.793Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/10-naming-readability</loc>
<lastmod>2026-08-13T07:54:11.774Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/09-feature-flag-skeptic</loc>
<lastmod>2026-08-13T07:54:11.760Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/08-no-ai-credit</loc>
<lastmod>2026-08-13T07:54:11.746Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/07-korean-first</loc>
<lastmod>2026-08-13T07:54:11.732Z</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-13T07:54:11.719Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/05-progressive-refactor</loc>
<lastmod>2026-08-13T07:54:11.704Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/04-tradeoff-not-bestpractice</loc>
<lastmod>2026-08-13T07:54:11.691Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/03-folder-as-contract</loc>
<lastmod>2026-08-13T07:54:11.678Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/02-ssot-everywhere</loc>
<lastmod>2026-08-13T07:54:11.664Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/philosophy/01-kiss-dry-yagni</loc>
<lastmod>2026-08-13T07:54:11.651Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming/04-oop-vs-functional</loc>
<lastmod>2026-08-13T07:54:11.638Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming/03-design-patterns</loc>
<lastmod>2026-08-13T07:54:11.623Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming/02-big-o</loc>
<lastmod>2026-08-13T07:54:11.610Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/programming/01-data-structures</loc>
<lastmod>2026-08-13T07:54:11.593Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/05-vitest-pytest-infra</loc>
<lastmod>2026-08-13T07:54:11.486Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/04-github-actions</loc>
<lastmod>2026-08-13T07:54:11.472Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/03-observability-minimal</loc>
<lastmod>2026-08-13T07:54:11.455Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/02-vitest-philosophy</loc>
<lastmod>2026-08-13T07:54:11.439Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/quality/01-testcontainers</loc>
<lastmod>2026-08-13T07:54:11.420Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/06-headers-and-cors</loc>
<lastmod>2026-08-13T07:54:11.366Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/05-password-hashing</loc>
<lastmod>2026-08-13T07:54:11.353Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/04-input-validation-zod</loc>
<lastmod>2026-08-13T07:54:11.338Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/03-rate-limit-redis</loc>
<lastmod>2026-08-13T07:54:11.323Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/02-oauth-state-pkce</loc>
<lastmod>2026-08-13T07:54:11.306Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/security/01-jwt-rotation</loc>
<lastmod>2026-08-13T07:54:11.290Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/12-git-submodule-lfs</loc>
<lastmod>2026-08-13T07:54:11.275Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/11-regex</loc>
<lastmod>2026-08-13T07:54:11.258Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/10-python-venv-poetry-history</loc>
<lastmod>2026-08-13T07:54:11.243Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/09-linting-formatting</loc>
<lastmod>2026-08-13T07:54:11.226Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/08-editor-setup</loc>
<lastmod>2026-08-13T07:54:11.209Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/07-gradle</loc>
<lastmod>2026-08-13T07:54:11.194Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/06-git-workflow</loc>
<lastmod>2026-08-13T07:54:11.177Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/05-version-managers</loc>
<lastmod>2026-08-13T07:54:11.162Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/04-env-and-secrets</loc>
<lastmod>2026-08-13T07:54:11.147Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/03-python-uv</loc>
<lastmod>2026-08-13T07:54:11.133Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/02-monorepo-light</loc>
<lastmod>2026-08-13T07:54:11.114Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/tools/01-pnpm</loc>
<lastmod>2026-08-13T07:54:11.099Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/07-browser-devtools</loc>
<lastmod>2026-08-13T07:54:11.072Z</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-13T07:54:11.053Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/05-url-anatomy</loc>
<lastmod>2026-08-13T07:54:11.032Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/04-http-rest</loc>
<lastmod>2026-08-13T07:54:11.008Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/03-javascript-basics</loc>
<lastmod>2026-08-13T07:54:10.981Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/02-css</loc>
<lastmod>2026-08-13T07:54:10.966Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/notes/web-fundamentals/01-html</loc>
<lastmod>2026-08-13T07:54:10.918Z</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-13T07:54:17.499Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/2</loc>
<lastmod>2026-08-13T07:54:17.509Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/3</loc>
<lastmod>2026-08-13T07:54:17.521Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/4</loc>
<lastmod>2026-08-13T07:54:17.532Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/5</loc>
<lastmod>2026-08-13T07:54:17.541Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/6</loc>
<lastmod>2026-08-13T07:54:17.551Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/7</loc>
<lastmod>2026-08-13T07:54:17.558Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/8</loc>
<lastmod>2026-08-13T07:54:17.567Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/9</loc>
<lastmod>2026-08-13T07:54:17.576Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/10</loc>
<lastmod>2026-08-13T07:54:17.585Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/11</loc>
<lastmod>2026-08-13T07:54:17.597Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/12</loc>
<lastmod>2026-08-13T07:54:17.606Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/13</loc>
<lastmod>2026-08-13T07:54:17.617Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/production-engineering/14</loc>
<lastmod>2026-08-13T07:54:17.631Z</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-13T07:54:17.262Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/2</loc>
<lastmod>2026-08-13T07:54:17.273Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/3</loc>
<lastmod>2026-08-13T07:54:17.287Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/4</loc>
<lastmod>2026-08-13T07:54:17.298Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/getting-started/5</loc>
<lastmod>2026-08-13T07:54:17.310Z</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-13T07:54:17.112Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/2</loc>
<lastmod>2026-08-13T07:54:17.123Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/3</loc>
<lastmod>2026-08-13T07:54:17.136Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/4</loc>
<lastmod>2026-08-13T07:54:17.147Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/5</loc>
<lastmod>2026-08-13T07:54:17.159Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/6</loc>
<lastmod>2026-08-13T07:54:17.169Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/7</loc>
<lastmod>2026-08-13T07:54:17.178Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/8</loc>
<lastmod>2026-08-13T07:54:17.191Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/9</loc>
<lastmod>2026-08-13T07:54:17.202Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/10</loc>
<lastmod>2026-08-13T07:54:17.214Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/11</loc>
<lastmod>2026-08-13T07:54:17.229Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/frontend-foundations/12</loc>
<lastmod>2026-08-13T07:54:17.239Z</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-13T07:54:17.435Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/nextjs-fullstack/2</loc>
<lastmod>2026-08-13T07:54:17.449Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/nextjs-fullstack/3</loc>
<lastmod>2026-08-13T07:54:17.460Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/nextjs-fullstack/4</loc>
<lastmod>2026-08-13T07:54:17.473Z</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-13T07:54:16.623Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/2</loc>
<lastmod>2026-08-13T07:54:16.639Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/3</loc>
<lastmod>2026-08-13T07:54:16.656Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/4</loc>
<lastmod>2026-08-13T07:54:16.670Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/5</loc>
<lastmod>2026-08-13T07:54:16.683Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/6</loc>
<lastmod>2026-08-13T07:54:16.695Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/7</loc>
<lastmod>2026-08-13T07:54:16.707Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/backend-with-spring/8</loc>
<lastmod>2026-08-13T07:54:16.720Z</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-13T07:54:17.653Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/2</loc>
<lastmod>2026-08-13T07:54:17.666Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/3</loc>
<lastmod>2026-08-13T07:54:17.676Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/4</loc>
<lastmod>2026-08-13T07:54:17.686Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/5</loc>
<lastmod>2026-08-13T07:54:17.697Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/6</loc>
<lastmod>2026-08-13T07:54:17.706Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/7</loc>
<lastmod>2026-08-13T07:54:17.716Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/python-data-pipeline/8</loc>
<lastmod>2026-08-13T07:54:17.730Z</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-13T07:54:16.449Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/2</loc>
<lastmod>2026-08-13T07:54:16.459Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/3</loc>
<lastmod>2026-08-13T07:54:16.471Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/4</loc>
<lastmod>2026-08-13T07:54:16.481Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/5</loc>
<lastmod>2026-08-13T07:54:16.489Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/6</loc>
<lastmod>2026-08-13T07:54:16.499Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/ai-agent-tooling/7</loc>
<lastmod>2026-08-13T07:54:16.512Z</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-13T07:54:16.984Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/2</loc>
<lastmod>2026-08-13T07:54:16.997Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/3</loc>
<lastmod>2026-08-13T07:54:17.007Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/4</loc>
<lastmod>2026-08-13T07:54:17.016Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/5</loc>
<lastmod>2026-08-13T07:54:17.026Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/6</loc>
<lastmod>2026-08-13T07:54:17.038Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/7</loc>
<lastmod>2026-08-13T07:54:17.046Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/8</loc>
<lastmod>2026-08-13T07:54:17.059Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/9</loc>
<lastmod>2026-08-13T07:54:17.070Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/devops-cloud/10</loc>
<lastmod>2026-08-13T07:54:17.087Z</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-13T07:54:16.333Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/2</loc>
<lastmod>2026-08-13T07:54:16.351Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/3</loc>
<lastmod>2026-08-13T07:54:16.363Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/4</loc>
<lastmod>2026-08-13T07:54:16.376Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/5</loc>
<lastmod>2026-08-13T07:54:16.388Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/6</loc>
<lastmod>2026-08-13T07:54:16.401Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/7</loc>
<lastmod>2026-08-13T07:54:16.415Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/admin-platform/8</loc>
<lastmod>2026-08-13T07:54:16.427Z</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-13T07:54:17.333Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/2</loc>
<lastmod>2026-08-13T07:54:17.345Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/3</loc>
<lastmod>2026-08-13T07:54:17.358Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/4</loc>
<lastmod>2026-08-13T07:54:17.369Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/5</loc>
<lastmod>2026-08-13T07:54:17.382Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/6</loc>
<lastmod>2026-08-13T07:54:17.392Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/7</loc>
<lastmod>2026-08-13T07:54:17.405Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/local-llm-rag/8</loc>
<lastmod>2026-08-13T07:54:17.415Z</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-13T07:54:18.110Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/2</loc>
<lastmod>2026-08-13T07:54:18.127Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/3</loc>
<lastmod>2026-08-13T07:54:18.141Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/4</loc>
<lastmod>2026-08-13T07:54:18.154Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/5</loc>
<lastmod>2026-08-13T07:54:18.163Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/6</loc>
<lastmod>2026-08-13T07:54:18.171Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/tauri-desktop-mobile/7</loc>
<lastmod>2026-08-13T07:54:18.180Z</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-13T07:54:17.754Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/2</loc>
<lastmod>2026-08-13T07:54:17.765Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/3</loc>
<lastmod>2026-08-13T07:54:17.778Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/4</loc>
<lastmod>2026-08-13T07:54:17.793Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/5</loc>
<lastmod>2026-08-13T07:54:17.806Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/6</loc>
<lastmod>2026-08-13T07:54:17.816Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/7</loc>
<lastmod>2026-08-13T07:54:17.826Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/quality-and-testing/8</loc>
<lastmod>2026-08-13T07:54:17.837Z</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-13T07:54:17.859Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/2</loc>
<lastmod>2026-08-13T07:54:18.021Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/3</loc>
<lastmod>2026-08-13T07:54:18.031Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/4</loc>
<lastmod>2026-08-13T07:54:18.040Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/5</loc>
<lastmod>2026-08-13T07:54:18.050Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/6</loc>
<lastmod>2026-08-13T07:54:18.065Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/7</loc>
<lastmod>2026-08-13T07:54:18.077Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/security-foundations/8</loc>
<lastmod>2026-08-13T07:54:18.089Z</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-13T07:54:16.823Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/2</loc>
<lastmod>2026-08-13T07:54:16.837Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/3</loc>
<lastmod>2026-08-13T07:54:16.849Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/4</loc>
<lastmod>2026-08-13T07:54:16.861Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/5</loc>
<lastmod>2026-08-13T07:54:16.872Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/6</loc>
<lastmod>2026-08-13T07:54:16.887Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/7</loc>
<lastmod>2026-08-13T07:54:16.907Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/8</loc>
<lastmod>2026-08-13T07:54:16.920Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/9</loc>
<lastmod>2026-08-13T07:54:16.940Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/data-engineering-postgres/10</loc>
<lastmod>2026-08-13T07:54:16.956Z</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-13T07:54:16.741Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/2</loc>
<lastmod>2026-08-13T07:54:16.754Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/3</loc>
<lastmod>2026-08-13T07:54:16.765Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/4</loc>
<lastmod>2026-08-13T07:54:16.775Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/5</loc>
<lastmod>2026-08-13T07:54:16.787Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/crawler-and-public-data/6</loc>
<lastmod>2026-08-13T07:54:16.798Z</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-13T07:54:16.535Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/2</loc>
<lastmod>2026-08-13T07:54:16.547Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/3</loc>
<lastmod>2026-08-13T07:54:16.560Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/4</loc>
<lastmod>2026-08-13T07:54:16.572Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/5</loc>
<lastmod>2026-08-13T07:54:16.584Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/edu/architecture-patterns/6</loc>
<lastmod>2026-08-13T07:54:16.599Z</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-13T07:54:17.492Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/2</loc>
<lastmod>2026-08-13T07:54:17.505Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/3</loc>
<lastmod>2026-08-13T07:54:17.514Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/4</loc>
<lastmod>2026-08-13T07:54:17.527Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/5</loc>
<lastmod>2026-08-13T07:54:17.537Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/6</loc>
<lastmod>2026-08-13T07:54:17.547Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/7</loc>
<lastmod>2026-08-13T07:54:17.554Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/8</loc>
<lastmod>2026-08-13T07:54:17.564Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/9</loc>
<lastmod>2026-08-13T07:54:17.572Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/10</loc>
<lastmod>2026-08-13T07:54:17.581Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/11</loc>
<lastmod>2026-08-13T07:54:17.591Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/12</loc>
<lastmod>2026-08-13T07:54:17.601Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/13</loc>
<lastmod>2026-08-13T07:54:17.612Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/production-engineering/14</loc>
<lastmod>2026-08-13T07:54:17.624Z</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-13T07:54:17.255Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/2</loc>
<lastmod>2026-08-13T07:54:17.267Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/3</loc>
<lastmod>2026-08-13T07:54:17.280Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/4</loc>
<lastmod>2026-08-13T07:54:17.293Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/getting-started/5</loc>
<lastmod>2026-08-13T07:54:17.303Z</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-13T07:54:17.106Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/2</loc>
<lastmod>2026-08-13T07:54:17.116Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/3</loc>
<lastmod>2026-08-13T07:54:17.131Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/4</loc>
<lastmod>2026-08-13T07:54:17.142Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/5</loc>
<lastmod>2026-08-13T07:54:17.154Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/6</loc>
<lastmod>2026-08-13T07:54:17.165Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/7</loc>
<lastmod>2026-08-13T07:54:17.174Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/8</loc>
<lastmod>2026-08-13T07:54:17.187Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/9</loc>
<lastmod>2026-08-13T07:54:17.196Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/10</loc>
<lastmod>2026-08-13T07:54:17.208Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/11</loc>
<lastmod>2026-08-13T07:54:17.224Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/frontend-foundations/12</loc>
<lastmod>2026-08-13T07:54:17.234Z</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-13T07:54:17.430Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/nextjs-fullstack/2</loc>
<lastmod>2026-08-13T07:54:17.442Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/nextjs-fullstack/3</loc>
<lastmod>2026-08-13T07:54:17.455Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/nextjs-fullstack/4</loc>
<lastmod>2026-08-13T07:54:17.465Z</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-13T07:54:16.615Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/2</loc>
<lastmod>2026-08-13T07:54:16.633Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/3</loc>
<lastmod>2026-08-13T07:54:16.645Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/4</loc>
<lastmod>2026-08-13T07:54:16.662Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/5</loc>
<lastmod>2026-08-13T07:54:16.678Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/6</loc>
<lastmod>2026-08-13T07:54:16.689Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/7</loc>
<lastmod>2026-08-13T07:54:16.701Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/backend-with-spring/8</loc>
<lastmod>2026-08-13T07:54:16.714Z</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-13T07:54:17.647Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/2</loc>
<lastmod>2026-08-13T07:54:17.661Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/3</loc>
<lastmod>2026-08-13T07:54:17.671Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/4</loc>
<lastmod>2026-08-13T07:54:17.681Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/5</loc>
<lastmod>2026-08-13T07:54:17.692Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/6</loc>
<lastmod>2026-08-13T07:54:17.702Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/7</loc>
<lastmod>2026-08-13T07:54:17.711Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/python-data-pipeline/8</loc>
<lastmod>2026-08-13T07:54:17.723Z</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-13T07:54:16.444Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/2</loc>
<lastmod>2026-08-13T07:54:16.455Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/3</loc>
<lastmod>2026-08-13T07:54:16.464Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/4</loc>
<lastmod>2026-08-13T07:54:16.476Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/5</loc>
<lastmod>2026-08-13T07:54:16.485Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/6</loc>
<lastmod>2026-08-13T07:54:16.494Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/ai-agent-tooling/7</loc>
<lastmod>2026-08-13T07:54:16.506Z</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-13T07:54:16.973Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/2</loc>
<lastmod>2026-08-13T07:54:16.991Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/3</loc>
<lastmod>2026-08-13T07:54:17.003Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/4</loc>
<lastmod>2026-08-13T07:54:17.012Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/5</loc>
<lastmod>2026-08-13T07:54:17.021Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/6</loc>
<lastmod>2026-08-13T07:54:17.033Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/7</loc>
<lastmod>2026-08-13T07:54:17.043Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/8</loc>
<lastmod>2026-08-13T07:54:17.052Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/9</loc>
<lastmod>2026-08-13T07:54:17.064Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/devops-cloud/10</loc>
<lastmod>2026-08-13T07:54:17.078Z</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-13T07:54:16.316Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/2</loc>
<lastmod>2026-08-13T07:54:16.345Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/3</loc>
<lastmod>2026-08-13T07:54:16.356Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/4</loc>
<lastmod>2026-08-13T07:54:16.369Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/5</loc>
<lastmod>2026-08-13T07:54:16.383Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/6</loc>
<lastmod>2026-08-13T07:54:16.395Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/7</loc>
<lastmod>2026-08-13T07:54:16.410Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/admin-platform/8</loc>
<lastmod>2026-08-13T07:54:16.422Z</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-13T07:54:17.327Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/2</loc>
<lastmod>2026-08-13T07:54:17.339Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/3</loc>
<lastmod>2026-08-13T07:54:17.352Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/4</loc>
<lastmod>2026-08-13T07:54:17.363Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/5</loc>
<lastmod>2026-08-13T07:54:17.376Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/6</loc>
<lastmod>2026-08-13T07:54:17.387Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/7</loc>
<lastmod>2026-08-13T07:54:17.398Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/local-llm-rag/8</loc>
<lastmod>2026-08-13T07:54:17.411Z</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-13T07:54:18.104Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/2</loc>
<lastmod>2026-08-13T07:54:18.117Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/3</loc>
<lastmod>2026-08-13T07:54:18.133Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/4</loc>
<lastmod>2026-08-13T07:54:18.148Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/5</loc>
<lastmod>2026-08-13T07:54:18.158Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/6</loc>
<lastmod>2026-08-13T07:54:18.167Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/tauri-desktop-mobile/7</loc>
<lastmod>2026-08-13T07:54:18.175Z</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-13T07:54:17.748Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/2</loc>
<lastmod>2026-08-13T07:54:17.760Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/3</loc>
<lastmod>2026-08-13T07:54:17.772Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/4</loc>
<lastmod>2026-08-13T07:54:17.787Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/5</loc>
<lastmod>2026-08-13T07:54:17.800Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/6</loc>
<lastmod>2026-08-13T07:54:17.811Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/7</loc>
<lastmod>2026-08-13T07:54:17.821Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/quality-and-testing/8</loc>
<lastmod>2026-08-13T07:54:17.832Z</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-13T07:54:17.854Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/2</loc>
<lastmod>2026-08-13T07:54:18.017Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/3</loc>
<lastmod>2026-08-13T07:54:18.026Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/4</loc>
<lastmod>2026-08-13T07:54:18.036Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/5</loc>
<lastmod>2026-08-13T07:54:18.045Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/6</loc>
<lastmod>2026-08-13T07:54:18.056Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/7</loc>
<lastmod>2026-08-13T07:54:18.071Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/security-foundations/8</loc>
<lastmod>2026-08-13T07:54:18.083Z</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-13T07:54:16.817Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/2</loc>
<lastmod>2026-08-13T07:54:16.831Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/3</loc>
<lastmod>2026-08-13T07:54:16.842Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/4</loc>
<lastmod>2026-08-13T07:54:16.855Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/5</loc>
<lastmod>2026-08-13T07:54:16.867Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/6</loc>
<lastmod>2026-08-13T07:54:16.880Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/7</loc>
<lastmod>2026-08-13T07:54:16.900Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/8</loc>
<lastmod>2026-08-13T07:54:16.914Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/9</loc>
<lastmod>2026-08-13T07:54:16.926Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/data-engineering-postgres/10</loc>
<lastmod>2026-08-13T07:54:16.949Z</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-13T07:54:16.735Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/2</loc>
<lastmod>2026-08-13T07:54:16.748Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/3</loc>
<lastmod>2026-08-13T07:54:16.759Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/4</loc>
<lastmod>2026-08-13T07:54:16.771Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/5</loc>
<lastmod>2026-08-13T07:54:16.781Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/crawler-and-public-data/6</loc>
<lastmod>2026-08-13T07:54:16.792Z</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-13T07:54:16.530Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/2</loc>
<lastmod>2026-08-13T07:54:16.540Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/3</loc>
<lastmod>2026-08-13T07:54:16.554Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/4</loc>
<lastmod>2026-08-13T07:54:16.566Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/5</loc>
<lastmod>2026-08-13T07:54:16.578Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/edu/architecture-patterns/6</loc>
<lastmod>2026-08-13T07:54:16.591Z</lastmod>
<priority>0.6</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/api-contract</loc>
<lastmod>2026-08-13T07:54:15.989Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/idempotency</loc>
<lastmod>2026-08-13T07:54:16.069Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/ssot</loc>
<lastmod>2026-08-13T07:54:16.217Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/database-migration</loc>
<lastmod>2026-08-13T07:54:16.025Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/rate-limit</loc>
<lastmod>2026-08-13T07:54:16.173Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/cache</loc>
<lastmod>2026-08-13T07:54:16.002Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/sse</loc>
<lastmod>2026-08-13T07:54:16.212Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/webrtc-cost-gate</loc>
<lastmod>2026-08-13T07:54:16.264Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/test-fixture</loc>
<lastmod>2026-08-13T07:54:16.238Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/object-storage</loc>
<lastmod>2026-08-13T07:54:16.109Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/tauri-capability</loc>
<lastmod>2026-08-13T07:54:16.229Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/scheduler</loc>
<lastmod>2026-08-13T07:54:16.194Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/orm</loc>
<lastmod>2026-08-13T07:54:16.128Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/connection-pool</loc>
<lastmod>2026-08-13T07:54:16.020Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/query-plan</loc>
<lastmod>2026-08-13T07:54:16.164Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/postgresql</loc>
<lastmod>2026-08-13T07:54:16.145Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/sqlite</loc>
<lastmod>2026-08-13T07:54:16.206Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/jwt</loc>
<lastmod>2026-08-13T07:54:16.079Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/audit-log</loc>
<lastmod>2026-08-13T07:54:15.995Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/fail-closed</loc>
<lastmod>2026-08-13T07:54:16.037Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/grpc</loc>
<lastmod>2026-08-13T07:54:16.049Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/websocket</loc>
<lastmod>2026-08-13T07:54:16.274Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/webrtc</loc>
<lastmod>2026-08-13T07:54:16.270Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/ice</loc>
<lastmod>2026-08-13T07:54:16.062Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/turn</loc>
<lastmod>2026-08-13T07:54:16.255Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/cloud-ai-cost-gate</loc>
<lastmod>2026-08-13T07:54:16.015Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/text-to-speech</loc>
<lastmod>2026-08-13T07:54:16.250Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/rag</loc>
<lastmod>2026-08-13T07:54:16.168Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/hnsw</loc>
<lastmod>2026-08-13T07:54:16.055Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/pgvector</loc>
<lastmod>2026-08-13T07:54:16.135Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/vite</loc>
<lastmod>2026-08-13T07:54:16.260Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/tauri</loc>
<lastmod>2026-08-13T07:54:16.234Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/zustand</loc>
<lastmod>2026-08-13T07:54:16.279Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/tanstack-query</loc>
<lastmod>2026-08-13T07:54:16.224Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/indexeddb</loc>
<lastmod>2026-08-13T07:54:16.074Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/fastapi</loc>
<lastmod>2026-08-13T07:54:16.043Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/spring-mvc</loc>
<lastmod>2026-08-13T07:54:16.201Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/row-level-security</loc>
<lastmod>2026-08-13T07:54:16.189Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/playwright</loc>
<lastmod>2026-08-13T07:54:16.140Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/testcontainers</loc>
<lastmod>2026-08-13T07:54:16.243Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/lm-studio</loc>
<lastmod>2026-08-13T07:54:16.099Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/onnx-runtime-web</loc>
<lastmod>2026-08-13T07:54:16.122Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/react</loc>
<lastmod>2026-08-13T07:54:16.178Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/nextjs</loc>
<lastmod>2026-08-13T07:54:16.105Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/redis</loc>
<lastmod>2026-08-13T07:54:16.183Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/kafka</loc>
<lastmod>2026-08-13T07:54:16.089Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/ocr</loc>
<lastmod>2026-08-13T07:54:16.117Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/caddy</loc>
<lastmod>2026-08-13T07:54:16.010Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/docker-compose</loc>
<lastmod>2026-08-13T07:54:16.031Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/glossary/prometheus</loc>
<lastmod>2026-08-13T07:54:16.159Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/api-contract</loc>
<lastmod>2026-08-13T07:54:15.983Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/idempotency</loc>
<lastmod>2026-08-13T07:54:16.066Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/ssot</loc>
<lastmod>2026-08-13T07:54:16.215Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/database-migration</loc>
<lastmod>2026-08-13T07:54:16.023Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/rate-limit</loc>
<lastmod>2026-08-13T07:54:16.171Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/cache</loc>
<lastmod>2026-08-13T07:54:15.999Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/sse</loc>
<lastmod>2026-08-13T07:54:16.210Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/webrtc-cost-gate</loc>
<lastmod>2026-08-13T07:54:16.262Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/test-fixture</loc>
<lastmod>2026-08-13T07:54:16.236Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/object-storage</loc>
<lastmod>2026-08-13T07:54:16.107Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/tauri-capability</loc>
<lastmod>2026-08-13T07:54:16.226Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/scheduler</loc>
<lastmod>2026-08-13T07:54:16.192Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/orm</loc>
<lastmod>2026-08-13T07:54:16.125Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/connection-pool</loc>
<lastmod>2026-08-13T07:54:16.016Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/query-plan</loc>
<lastmod>2026-08-13T07:54:16.161Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/postgresql</loc>
<lastmod>2026-08-13T07:54:16.142Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/sqlite</loc>
<lastmod>2026-08-13T07:54:16.203Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/jwt</loc>
<lastmod>2026-08-13T07:54:16.076Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/audit-log</loc>
<lastmod>2026-08-13T07:54:15.992Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/fail-closed</loc>
<lastmod>2026-08-13T07:54:16.034Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/grpc</loc>
<lastmod>2026-08-13T07:54:16.045Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/websocket</loc>
<lastmod>2026-08-13T07:54:16.272Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/webrtc</loc>
<lastmod>2026-08-13T07:54:16.267Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/ice</loc>
<lastmod>2026-08-13T07:54:16.058Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/turn</loc>
<lastmod>2026-08-13T07:54:16.253Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/cloud-ai-cost-gate</loc>
<lastmod>2026-08-13T07:54:16.013Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/text-to-speech</loc>
<lastmod>2026-08-13T07:54:16.246Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/rag</loc>
<lastmod>2026-08-13T07:54:16.166Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/hnsw</loc>
<lastmod>2026-08-13T07:54:16.051Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/pgvector</loc>
<lastmod>2026-08-13T07:54:16.132Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/vite</loc>
<lastmod>2026-08-13T07:54:16.258Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/tauri</loc>
<lastmod>2026-08-13T07:54:16.232Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/zustand</loc>
<lastmod>2026-08-13T07:54:16.276Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/tanstack-query</loc>
<lastmod>2026-08-13T07:54:16.221Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/indexeddb</loc>
<lastmod>2026-08-13T07:54:16.071Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/fastapi</loc>
<lastmod>2026-08-13T07:54:16.040Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/spring-mvc</loc>
<lastmod>2026-08-13T07:54:16.198Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/row-level-security</loc>
<lastmod>2026-08-13T07:54:16.187Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/playwright</loc>
<lastmod>2026-08-13T07:54:16.138Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/testcontainers</loc>
<lastmod>2026-08-13T07:54:16.240Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/lm-studio</loc>
<lastmod>2026-08-13T07:54:16.097Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/onnx-runtime-web</loc>
<lastmod>2026-08-13T07:54:16.119Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/react</loc>
<lastmod>2026-08-13T07:54:16.176Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/nextjs</loc>
<lastmod>2026-08-13T07:54:16.101Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/redis</loc>
<lastmod>2026-08-13T07:54:16.181Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/kafka</loc>
<lastmod>2026-08-13T07:54:16.085Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/ocr</loc>
<lastmod>2026-08-13T07:54:16.114Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/caddy</loc>
<lastmod>2026-08-13T07:54:16.005Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/docker-compose</loc>
<lastmod>2026-08-13T07:54:16.028Z</lastmod>
<priority>0.5</priority>
</url>
<url>
<loc>https://codingstairs.duckdns.org/en/glossary/prometheus</loc>
<lastmod>2026-08-13T07:54:16.147Z</lastmod>
<priority>0.5</priority>
</url>
</urlset>
