<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">
  <url>
    <loc>https://hackyjs.com/posts/auditing-model-routing-and-prompt-caching-before-you-trust-the-cost-chart</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-27T00:00:00.000Z</news:publication_date>
      <news:title>Auditing Model Routing and Prompt Caching Before You Trust the Cost Chart</news:title>
      <news:keywords>llm-gateway, prompt-caching, cost-optimization, model-routing, observability</news:keywords>
    </news:news>
  </url>
  <url>
    <loc>https://hackyjs.com/posts/tamper-evident-audit-logging-for-agentic-ai-a-nodejs-implementation-pattern</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-27T00:00:00.000Z</news:publication_date>
      <news:title>Tamper-Evident Audit Logging for Agentic AI: A Node.js Implementation Pattern</news:title>
      <news:keywords>nodejs, ai-agents, audit-logging, eu-ai-act, compliance</news:keywords>
    </news:news>
  </url>
  <url>
    <loc>https://hackyjs.com/posts/auditing-github-to-pypi-publishing-paths-after-the-litellm-supply-chain-attack</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-27T00:00:00.000Z</news:publication_date>
      <news:title>Auditing GitHub-to-PyPI Publishing Paths After the LiteLLM Supply-Chain Attack</news:title>
      <news:keywords>supply-chain-security, pypi, github-actions, credential-rotation, package-publishing</news:keywords>
    </news:news>
  </url>
  <url>
    <loc>https://hackyjs.com/posts/inside-pylances-type-server-protocol-request-contracts-indexing-boundaries-and-cache-semantics</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-27T00:00:00.000Z</news:publication_date>
      <news:title>Inside Pylance&apos;s Type Server Protocol: Request Contracts, Indexing Boundaries, and Cache Semantics</news:title>
      <news:keywords>python, pylance, type-server-protocol, developer-tooling, lsp</news:keywords>
    </news:news>
  </url>
  <url>
    <loc>https://hackyjs.com/posts/what-the-cyber-resilience-act-actually-requires-from-a-release-pipeline</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-26T00:00:00.000Z</news:publication_date>
      <news:title>What the Cyber Resilience Act Actually Requires From a Release Pipeline</news:title>
      <news:keywords>cyber-resilience-act, compliance, ci-cd, sbom, supply-chain</news:keywords>
    </news:news>
  </url>
  <url>
    <loc>https://hackyjs.com/posts/hardening-legacy-php-against-php2shell-when-no-official-patch-exists</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-26T00:00:00.000Z</news:publication_date>
      <news:title>Hardening Legacy PHP Against PHP2Shell When No Official Patch Exists</news:title>
      <news:keywords>php, security, rce, waf, mitigation</news:keywords>
    </news:news>
  </url>
  <url>
    <loc>https://hackyjs.com/posts/where-provider-routing-caching-and-batching-absorb-the-80-llm-price-cut</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-26T00:00:00.000Z</news:publication_date>
      <news:title>Where Provider Routing, Caching, and Batching Absorb the 80% LLM Price Cut</news:title>
      <news:keywords>llm, inference, caching, routing, batching</news:keywords>
    </news:news>
  </url>
  <url>
    <loc>https://hackyjs.com/posts/reconstructing-the-litellm-pypi-incident-seven-malicious-wheels-and-the-two-hour-quarantine-window</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-26T00:00:00.000Z</news:publication_date>
      <news:title>Reconstructing the LiteLLM PyPI Incident: Seven Malicious Wheels and the Two-Hour Quarantine Window</news:title>
      <news:keywords>litellm, supply-chain, pypi, python-security</news:keywords>
    </news:news>
  </url>
  <url>
    <loc>https://hackyjs.com/posts/migrating-a-scheduling-feature-from-date-to-temporal-dst-durations-and-month-math</loc>
    <news:news>
      <news:publication>
        <news:name>Hacky JS</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2026-10-26T00:00:00.000Z</news:publication_date>
      <news:title>Migrating a Scheduling Feature from Date to Temporal: DST, Durations, and Month Math</news:title>
      <news:keywords>javascript, temporal-api, date-time, dst, migration</news:keywords>
    </news:news>
  </url>
</urlset>
