<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url><loc>https://netadvice.xyz/blog</loc></url>
  <url><loc>https://netadvice.xyz/blog/sprint-tracking-features-what-we-built-skipped-next</loc><lastmod>2026-10-26T16:46:09+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/pdpa-2024-software-projects-a-delivery-tracker-view</loc><lastmod>2026-10-26T16:46:05+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/project-document-library-files-sections-share-links</loc><lastmod>2026-10-26T16:45:50+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/project-notifications-digest-informed-without-the-noise</loc><lastmod>2026-10-26T16:45:47+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/definition-of-done-evidence-done-is-not-an-opinion</loc><lastmod>2026-10-26T16:45:59+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/import-project-tracker-sources-import-and-sync</loc><lastmod>2026-10-26T16:45:44+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/iso-31000-risk-register-that-people-actually-read</loc><lastmod>2026-10-26T16:45:56+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/raid-log-project-the-four-registers-in-sprintly</loc><lastmod>2026-10-26T16:45:42+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/project-milestones-roadmap-exit-criteria-to-invoice</loc><lastmod>2026-10-26T16:45:39+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/iso-21502-project-management-for-a-six-person-team</loc><lastmod>2026-10-26T16:45:53+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/sprint-planning-tool-plan-carry-over-close-on-a-gate</loc><lastmod>2026-10-26T16:45:35+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/ticket-tracking-board-list-saved-views-bulk-edit</loc><lastmod>2026-10-26T16:45:31+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/create-a-project-in-sprintly-client-prefix-areas</loc><lastmod>2026-10-26T16:45:27+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/project-tracker-roles-and-permissions-in-sprintly</loc><lastmod>2026-10-26T16:45:22+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/sprintly-getting-started-sign-in-and-set-up-your-day</loc><lastmod>2026-10-26T16:45:18+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/connect-to-sprintly-by-api-an-end-to-end-guide</loc><lastmod>2026-10-26T08:53:53+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/from-first-mvp-to-today-a-tour-of-sprintly-in-screens</loc><lastmod>2026-10-26T17:01:57+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/goblin-x2-reads-the-trail-from-a-kindergarten-fork-to-a-starter-with-ten-packages</loc><lastmod>2026-10-26T16:55:18+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/monitoring-an-iot-pipeline-from-device-to-data-store</loc><lastmod>2026-10-26T16:40:45+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-flightpack-architecture-on-one-page</loc><lastmod>2026-10-26T15:35:51+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/lume-by-the-numbers-five-weeks-of-building</loc><lastmod>2026-10-26T08:56:13+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/sprintly-by-the-numbers-17-days-380-commits-and-a-test-that-went-to-the-wrong-database</loc><lastmod>2026-10-26T08:56:22+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/under-the-flightpack-hood</loc><lastmod>2026-10-26T16:41:07+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/from-an-outage-to-a-container-standard</loc><lastmod>2026-10-26T16:40:09+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/one-page-one-job-how-we-keep-two-thousand-documents-true</loc><lastmod>2026-10-26T17:45:39+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/revisiting-the-lumev2-hood-after-1192-commits</loc><lastmod>2026-10-26T16:40:55+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/a-developer-pc-you-can-rebuild-in-two-hours</loc><lastmod>2026-10-26T08:55:49+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-flightpack-product-deck-a-guided-tour-of-v10</loc><lastmod>2026-10-26T18:34:49+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/monitoring-a-4gb-host-prometheus-zabbix-metabase-or-our-own</loc><lastmod>2026-10-26T16:40:49+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/an-error-every-30-seconds-pg-stat-statements</loc><lastmod>2026-10-26T16:40:16+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/patch-night-72-packages-one-reboot-ten-minutes</loc><lastmod>2026-10-26T09:02:37+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/database-backups-that-survive-the-server</loc><lastmod>2026-10-26T16:41:11+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/keep-secrets-off-the-command-line</loc><lastmod>2026-10-26T16:40:18+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/node-brotli-patching-the-node-inside-the-proxy</loc><lastmod>2026-10-26T16:40:21+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-reboot-nobody-tested</loc><lastmod>2026-10-26T16:40:23+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/a-maintenance-page-instead-of-a-502</loc><lastmod>2026-10-26T16:40:25+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/php2shell-patching-an-interpreter-bug-in-45-minutes</loc><lastmod>2026-10-26T09:02:43+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/retiring-lume-idms-v1-from-the-server</loc><lastmod>2026-10-26T08:55:53+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/capacity-and-a-gantt-page-in-one-day-and-a-dry-run-on-our-own-tracker</loc><lastmod>2026-10-26T02:53:15+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/a-reboot-test-we-passed-41-containers-back-in-two-minutes</loc><lastmod>2026-10-26T02:53:32+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/two-shell-bugs-on-a-deploy-host</loc><lastmod>2026-10-26T16:40:28+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/seeing-the-estate-every-app-probed-every-deploy-green</loc><lastmod>2026-10-26T09:02:24+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/patching-a-live-server-without-the-surprise</loc><lastmod>2026-10-26T14:34:06+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/published-ports-bypass-your-firewall</loc><lastmod>2026-10-26T16:40:30+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/php2shell-rebuilding-fifteen-php-containers</loc><lastmod>2026-10-26T16:40:32+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-deploy-that-failed-twice</loc><lastmod>2026-10-26T16:40:35+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/reports-that-draft-themselves-and-a-view-for-clients</loc><lastmod>2026-10-26T17:02:38+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/importing-a-tracker-from-markdown-the-trackerparser</loc><lastmod>2026-10-26T08:56:21+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/choosing-a-waf-for-a-small-team</loc><lastmod>2026-10-26T16:40:13+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/security-reviews-inside-the-sprint-loop</loc><lastmod>2026-10-26T02:53:26+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/alerts-that-do-not-spam-lumes-alert-engine</loc><lastmod>2026-10-26T08:56:08+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/a-seat-for-ai-agents-tokens-scopes-and-a-revert-queue</loc><lastmod>2026-10-26T09:10:28+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/showcase-toolkit-every-project-gets-a-presentable-manual-once</loc><lastmod>2026-10-26T02:53:11+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/health-21-rules-that-tell-you-what-is-wrong</loc><lastmod>2026-10-26T08:53:51+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/seven-decisions-in-two-days-how-sprintly-became-a-package</loc><lastmod>2026-10-26T02:53:16+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/site-management-and-package-cards-arrive-in-the-starter</loc><lastmod>2026-10-26T15:26:48+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-structure-behind-every-ticket-phase-milestone-sprint-ticket</loc><lastmod>2026-10-26T08:56:19+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-projects</loc><lastmod>2026-10-26T18:34:48+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-s15-uplift-fifteen-tickets-in-one-day</loc><lastmod>2026-10-26T15:26:48+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/laravel-10-to-13-in-a-day-and-a-knowledge-base-with-four-levels</loc><lastmod>2026-10-26T02:53:13+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-api-credentials</loc><lastmod>2026-10-26T18:34:47+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/how-we-work-with-ai-context-tickets-and-a-ratchet</loc><lastmod>2026-10-26T08:56:05+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-contractors</loc><lastmod>2026-10-26T18:34:47+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-content</loc><lastmod>2026-10-26T18:34:46+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-resources</loc><lastmod>2026-10-26T18:34:45+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/laravel-10-to-13-on-the-starter-what-actually-broke</loc><lastmod>2026-10-26T15:27:42+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-library</loc><lastmod>2026-10-26T18:34:45+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-departments</loc><lastmod>2026-10-26T18:34:44+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/php-83-a-security-scan-and-the-road-to-v2-parity</loc><lastmod>2026-10-26T09:02:28+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/modular-design-how-a-package-plugs-into-the-core</loc><lastmod>2026-10-26T15:35:52+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/technology-choices-what-lume-runs-and-why-it-matters</loc><lastmod>2026-10-26T15:08:16+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/stripping-flightpack-to-a-bare-core-432-files-out-one-way-back</loc><lastmod>2026-10-26T15:26:43+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/three-rules-on-day-two-restart-the-board-ticket-first-run-the-checks</loc><lastmod>2026-10-26T02:53:29+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-premise</loc><lastmod>2026-10-26T18:34:43+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-hierarchy</loc><lastmod>2026-10-26T18:34:43+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/flightpack-package-reference</loc><lastmod>2026-10-26T18:34:42+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/one-command-to-set-up-one-command-to-verify</loc><lastmod>2026-10-26T15:27:39+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/strip-it-to-a-bare-core-how-flightpack-became-a-core-plus-packages</loc><lastmod>2026-10-26T17:23:03+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-plan-lume-v2-lume-portal-and-the-broker-console-in-detail</loc><lastmod>2026-10-26T02:54:12+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/why-we-built-sprintly-tracking-delivery-in-markdown-files-stopped-scaling</loc><lastmod>2026-10-26T16:40:52+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/one-base-many-products-the-start-of-the-new-net-advice-site</loc><lastmod>2026-10-26T15:07:54+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/eight-lessons-from-a-day-of-fresh-installs</loc><lastmod>2026-10-26T15:16:51+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/four-sources-rebuild-a-server</loc><lastmod>2026-10-26T15:17:10+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/two-small-findings-two-big-lessons-security-cycle-18</loc><lastmod>2026-10-26T09:02:42+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/replace-dont-patch-end-of-life-stacks</loc><lastmod>2026-10-26T14:33:52+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/cutting-over-an-mqtt-broker-on-a-live-host</loc><lastmod>2026-10-26T16:40:07+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/modelling-delivery-work-phase-milestone-sprint-ticket-and-the-standards-behind-them</loc><lastmod>2026-10-26T08:53:50+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/laravel-13-and-the-security-cycle-that-changed-our-csp</loc><lastmod>2026-10-26T09:08:14+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/memory-is-the-limit-a-capacity-budget-for-one-4gb-host</loc><lastmod>2026-10-26T15:14:00+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/podman-docker-or-quadlet-deciding-the-container-engine</loc><lastmod>2026-10-26T16:40:37+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/sprints-and-tickets-concepts-and-tips-that-hold-up</loc><lastmod>2026-10-26T08:53:49+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/spending-less-on-ai-the-ladder-we-have-the-two-models-we-installed-and-what-we-have-not-tested</loc><lastmod>2026-10-26T17:37:03+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/taking-over-a-server-read-only-first</loc><lastmod>2026-10-26T16:40:39+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-first-simulated-reading-the-broker-console-is-born</loc><lastmod>2026-10-26T09:02:32+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/before-sprintly-part-2-the-tracker-becomes-a-tool</loc><lastmod>2026-10-26T08:53:48+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/three-days-653-commits-the-lume-v2-sprint</loc><lastmod>2026-10-26T16:40:57+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/gates-before-you-push-secrets-taint-analysis-and-a-pre-push-hook</loc><lastmod>2026-10-26T02:53:37+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/four-levels-and-a-404-how-our-knowledge-base-decides-who-reads-what</loc><lastmod>2026-10-26T17:45:37+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-idor-ledger-every-route-that-takes-an-id-must-say-how-it-is-protected</loc><lastmod>2026-10-26T02:53:38+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-plan-for-lume-v2-parity-first-then-better</loc><lastmod>2026-10-26T15:08:11+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-knowledge-base-becomes-a-flightpack-feature</loc><lastmod>2026-10-26T02:53:40+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/a-small-team-of-assistants-and-an-8-kb-rule-our-ai-architecture-read-end-to-end</loc><lastmod>2026-10-26T17:45:43+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-folder-number-is-the-audience-how-our-documentation-spine-was-kept</loc><lastmod>2026-10-26T17:30:13+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/lume-portal-is-born-the-map-and-reports-side-of-lume</loc><lastmod>2026-10-26T02:54:17+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/why-lume-v2-began-with-a-copy-and-a-lot-of-deleting</loc><lastmod>2026-10-26T17:23:01+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/what-a-fork-leaves-behind-lineage-leftovers-and-the-upgrade-path</loc><lastmod>2026-10-26T16:55:21+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/how-we-review-security-cycles-scores-and-the-14-point-pass</loc><lastmod>2026-10-26T02:53:39+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/before-sprintly-part-1-a-markdown-board-for-a-clean-up</loc><lastmod>2026-10-26T08:53:48+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/day-one-of-lume-v2-we-deleted-the-kindergarten</loc><lastmod>2026-10-26T16:41:04+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/an-in-app-knowledge-base-for-lume-v1</loc><lastmod>2026-10-26T02:53:41+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/hardening-lume-idms-v1-the-owasp-audit-week</loc><lastmod>2026-10-26T09:02:27+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-day-the-dockeeper-was-born-how-lume-v1-got-its-rules-roles-and-memory-on-28-august</loc><lastmod>2026-10-26T17:43:22+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/an-agent-team-and-a-common-mistakes-file</loc><lastmod>2026-10-26T15:09:40+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-hand-over-february-2026</loc><lastmod>2026-10-26T14:33:39+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/from-28-seconds-to-50-milliseconds-tuning-the-lume-v1-database</loc><lastmod>2026-10-26T08:55:51+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/the-ai-instructions-file-how-our-ai-assisted-work-began</loc><lastmod>2026-10-26T15:09:35+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/case-study-a-preschool-platform-forked-from-a-monitoring-framework</loc><lastmod>2026-10-26T15:09:16+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/building-a-knowledge-base-for-the-codebase</loc><lastmod>2026-10-26T15:08:44+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/lume-idms-v11-the-cache-release-35-tickets-in-two-weeks</loc><lastmod>2026-10-26T02:54:24+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/containerise-it-the-january-2025-revision</loc><lastmod>2026-10-26T16:40:41+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/lume-idms-v10-the-first-release</loc><lastmod>2026-10-26T02:54:26+08:00</lastmod></url>
  <url><loc>https://netadvice.xyz/blog/first-server-architecture-january-2023</loc><lastmod>2026-10-26T16:40:43+08:00</lastmod></url>
</urlset>
