{
  "schema": "guanghu.architecture-provision-request/v1",
  "request_id": "HLCC-JD-APP-HUB-PUBLIC-PATH-FIX-PROVISION-20260723",
  "target_node": "JD-FD-PRIMARY",
  "architecture_id": "GLS-HLCC-008",
  "module": {
    "code": "JD-HUB-02",
    "name": "京东应用入口光湖代码频道隔离子路径代理修复",
    "bind": "loopback:8088 -> loopback:3340 for /jd/code/ public projection",
    "owner": "systemd",
    "unit": "jd-app-hub.service",
    "run_user": "guanghu",
    "writable_paths": [],
    "read_only_paths": []
  },
  "source_ref": "REPO-001:refs/heads/main",
  "deployed_commit_policy": "resolve immutable commit during provision and record it in the deployment receipt",
  "source_paths": [
    "server-tools/jd-app-hub/server.js",
    "server-tools/jd-app-hub/index.html",
    "server-tools/jd-app-hub/styles.css",
    "server-tools/jd-app-hub/app.js",
    "server-tools/jd-app-hub/jd-app-hub.service"
  ],
  "initial_provision": {
    "kind": "new-architecture-unit",
    "not_an_existing_action_bridge_extension": true,
    "requires": [
      "fetch the immutable REPO-001 commit containing the isolated subpath proxy fix",
      "copy only declared JD app hub files into a new immutable release directory",
      "back up and replace only jd-app-hub.service",
      "map incoming /code/ requests from the /jd front projection to candidate /jd/code/ requests",
      "retain the existing Guangzhou-to-JD loopback tunnel and permitopen policy",
      "do not modify current Gitea services, data or production routing"
    ]
  },
  "verification": [
    "public /jd/code/ loads the candidate page without redirecting to top-level /code/",
    "candidate login, manifest and asset URLs remain below /jd/code/",
    "GET /api/code-channel-status reports ready=true",
    "the app hub still binds only to 127.0.0.1:8088",
    "current Gitea port, tunnel and data remain unchanged"
  ],
  "runtime_check": {
    "url": "http://127.0.0.1:8088/api/status",
    "expected": {
      "ok": true,
      "service": "jd-app-hub"
    }
  },
  "rollback": [
    "restore the backed-up jd-app-hub.service",
    "restart the previous JD application hub",
    "leave current Gitea and all Guangzhou tunnels unchanged"
  ],
  "status": "ARCHITECTURE_PACKAGE_READY · INITIAL_PROVISION_PENDING"
}
