{
  "schemaVersion": 1,
  "reviewedAt": "2026-09-26",
  "publisher": "OpenFate",
  "kind": "first-party-synthetic-regression",
  "scope": "Six bounded local regression groups using one synthetic birth input. October/November 2026 monthly profiles and February 2026 BaZi timezone comparison. BaZi and Ziwei use local engines; natal Western astrology comes from a frozen Swiss Ephemeris fixture and monthly transits use local Astronomy Engine. No network, customer data or generated report is used.",
  "notEstablished": [
    "Independent full-chart or ephemeris agreement",
    "Exhaustive calendar, timezone, birth-input or transit coverage",
    "Semantic quality or factual grounding of generated paid reports",
    "Real-world prediction accuracy or superiority over other services",
    "Reader preference, trust, purchase value or search ranking"
  ],
  "replayCommand": "node --import tsx scripts/verify-monthly-public-evidence.ts",
  "refreshCommand": "node --import tsx scripts/verify-monthly-public-evidence.ts --write",
  "sourceHashScope": "Selected replay inputs and engine entry points plus the dependency lockfile; not a complete transitive source manifest.",
  "sourceHashes": [
    {
      "path": "scripts/verify-monthly-public-evidence.ts",
      "sha256": "602aaeedf65f3890e1d70c7f942c9b126cc39cd7f77695bdb68032d639f5b65a"
    },
    {
      "path": "tests/combination/monthly-fixture.ts",
      "sha256": "08c924ced12d40415fa8004d7f0db649bd7ae758b88d2f3141278b0af54a872e"
    },
    {
      "path": "tests/astro/fixtures/natal-settings-v1.json",
      "sha256": "a06ac68cd73f32de9818cef328d0b8caa4dd94890cabadcdde9ef85895778856"
    },
    {
      "path": "app/modules/combination/monthly/engine.ts",
      "sha256": "421818861f82b5f63c300bb05791874f842255a59f80daf2b414ba940c4577b8"
    },
    {
      "path": "app/modules/combination/monthly/calendar.ts",
      "sha256": "82e5f57b623f2d8300f1df40898e54a16a0326b1e3ec1dbafe6445b8c6e3e55b"
    },
    {
      "path": "app/modules/combination/monthly/bazi.ts",
      "sha256": "06447905f536272d5b84c1ea023d5229e5b50075351addbd3186b01aa6109b52"
    },
    {
      "path": "app/modules/combination/monthly/ziwei.ts",
      "sha256": "726918474175f4cd88cf7f90046982e95fdf12099bb12174cb82977f73750a93"
    },
    {
      "path": "app/modules/combination/monthly/astro.ts",
      "sha256": "1e3f8b6a66a04a66deabf8a3131add7c63faa98c8338d8ed39669b50842571f2"
    },
    {
      "path": "app/modules/combination/period/calendar.ts",
      "sha256": "1ca0a4e888c78d53a0bd1852b61f0f60ac50b02425d22aa7795111fe0ce59b4b"
    },
    {
      "path": "app/modules/combination/period/bazi.ts",
      "sha256": "d9999d3b914239badd5316276353375dd001747893d8a55d0bf4dc56d1535637"
    },
    {
      "path": "app/modules/combination/period/ziwei-months.ts",
      "sha256": "11acca2b654c3fe5eda949a9798923e40504c2fd143e3164e7b1bc9d023fcd9e"
    },
    {
      "path": "app/modules/combination/period/astro.ts",
      "sha256": "db2e168945c7416f6950fb9305b4d133acbf30bc338b76f620b9b267d1576fe7"
    },
    {
      "path": "app/modules/astro/logic/transits.ts",
      "sha256": "7aa3360c5b2ae67a759503bbbdd0938c7ef77ebd59a73b48ab92bfd87ebe7e1a"
    },
    {
      "path": "app/modules/combination/logic/orchestrator.ts",
      "sha256": "75213c656b23bbc375b43d19dc648fd779c701f87f6568f233aaaf91ae439631"
    },
    {
      "path": "app/modules/bazi/logic/calculator.ts",
      "sha256": "24396c49641113288755191226e38ce16f709749e04a98ac01d210cc57db77bb"
    },
    {
      "path": "app/modules/ziwei/logic/engine.ts",
      "sha256": "f7e183cdbab16ed2997a6016a6e0a8f3986a27951b9e26049980eb55e82c9ba8"
    },
    {
      "path": "package-lock.json",
      "sha256": "633aaaba8bce1d20ef6d06bba962af005507caea0eff41dc8bc6421d1bd9123f"
    }
  ],
  "fixture": {
    "id": "synthetic-2000-01-01-utc",
    "birth": {
      "year": 2000,
      "month": 1,
      "day": 1,
      "hour": 12,
      "minute": 0,
      "latitude": 25.033,
      "longitude": 121.5654,
      "gender": "female",
      "timezone": 0,
      "timezoneId": "UTC",
      "calendarType": "solar",
      "timePrecision": "exact",
      "enableTrueSolarTime": false,
      "dayBoundaryMode": "MIDNIGHT_00"
    },
    "natalAstrology": {
      "source": "tests/astro/fixtures/natal-settings-v1.json, entry 0; fixture replay only, not a fresh natal calculation",
      "ephemerisSource": "Swiss Ephemeris (@swisseph/node)",
      "settings": {
        "version": 1,
        "houseSystem": "P",
        "nodeMode": "mean",
        "orbScale": 0.5,
        "includeAsteroids": false
      }
    },
    "monthlyPolicy": {
      "baziCalendar": "Asia/Shanghai-exact-jie",
      "ziweiCalendar": "report-civil-clock-existing-rulebook",
      "astroScanHours": 6,
      "astroBoundaryToleranceSeconds": 60,
      "domainMapping": "monthly-symbolic-domains-v1",
      "predictiveProbability": false
    }
  },
  "summary": {
    "syntheticBirthInputs": 1,
    "checkGroups": 6,
    "passed": 6,
    "failed": 0
  },
  "checks": [
    {
      "id": "three-systems-within-selected-civil-month",
      "status": "passed",
      "claim": "All observed facts have unique IDs and nonempty intervals inside this selected civil month.",
      "observed": {
        "month": {
          "targetMonth": "2026-10",
          "timezone": "Asia/Taipei",
          "start": "2026-09-30T16:00:00.000Z",
          "endExclusive": "2026-10-31T16:00:00.000Z"
        },
        "factCounts": {
          "bazi": 2,
          "ziwei": 8,
          "astro": 38
        }
      }
    },
    {
      "id": "native-month-boundaries-remain-distinct",
      "status": "passed",
      "claim": "For October 2026 in Taipei, the BaZi solar-term boundary and the Ziwei native monthly boundary are distinct.",
      "observed": {
        "baziTransitions": [
          "2026-10-08T06:29:17.000Z"
        ],
        "ziweiTransitions": [
          "2026-10-09T16:00:00.000Z"
        ],
        "baziWindows": [
          {
            "id": "BZ-M1",
            "start": "2026-09-30T16:00:00.000Z",
            "endExclusive": "2026-10-08T06:29:17.000Z",
            "monthPillar": "丁酉",
            "yearPillar": "丙午"
          },
          {
            "id": "BZ-M2",
            "start": "2026-10-08T06:29:17.000Z",
            "endExclusive": "2026-10-31T16:00:00.000Z",
            "monthPillar": "戊戌",
            "yearPillar": "丙午"
          }
        ],
        "ziweiWindows": [
          {
            "id": "ZW-M1-1",
            "start": "2026-09-30T16:00:00.000Z",
            "endExclusive": "2026-10-09T16:00:00.000Z",
            "monthStem": "丁",
            "monthBranch": "酉",
            "monthlyLifePalace": "田宅"
          },
          {
            "id": "ZW-M2-1",
            "start": "2026-10-09T16:00:00.000Z",
            "endExclusive": "2026-10-31T16:00:00.000Z",
            "monthStem": "戊",
            "monthBranch": "戌",
            "monthlyLifePalace": "官禄"
          }
        ]
      }
    },
    {
      "id": "identical-input-repeatability",
      "status": "passed",
      "claim": "Two local runs using the same frozen inputs produce the same complete monthly fact bundle.",
      "observed": {
        "firstProfileSha256": "39f5600b373d8b6517fed6dcb427d171eb525221c8c0d41d93f625b7203fed58",
        "repeatedProfileSha256": "39f5600b373d8b6517fed6dcb427d171eb525221c8c0d41d93f625b7203fed58"
      }
    },
    {
      "id": "adjacent-month-recalculation",
      "status": "passed",
      "claim": "Changing only October to November changes the fact bundle and solar-month pillar sequence; civil month intervals meet without overlap.",
      "observed": {
        "month": {
          "targetMonth": "2026-11",
          "timezone": "Asia/Taipei",
          "start": "2026-10-31T16:00:00.000Z",
          "endExclusive": "2026-11-30T16:00:00.000Z"
        },
        "factCounts": {
          "bazi": 2,
          "ziwei": 8,
          "astro": 37
        },
        "baziWindows": [
          {
            "id": "BZ-M1",
            "start": "2026-10-31T16:00:00.000Z",
            "endExclusive": "2026-11-07T09:52:05.000Z",
            "monthPillar": "戊戌",
            "yearPillar": "丙午"
          },
          {
            "id": "BZ-M2",
            "start": "2026-11-07T09:52:05.000Z",
            "endExclusive": "2026-11-30T16:00:00.000Z",
            "monthPillar": "己亥",
            "yearPillar": "丙午"
          }
        ],
        "profileSha256": "172509e46948c109f0bcea588ee42281421a93e7b0db4a91cd7ce476dd6f6367"
      }
    },
    {
      "id": "lichun-physical-instant-across-report-timezones",
      "status": "passed",
      "claim": "The observed BaZi Li Chun year/month transition is the same UTC instant in Taipei and New York report months.",
      "observed": {
        "taipei": {
          "timezone": "Asia/Taipei",
          "windows": [
            {
              "id": "BZ-M1",
              "start": "2026-01-31T16:00:00.000Z",
              "endExclusive": "2026-02-03T20:02:08.000Z",
              "monthPillar": "己丑",
              "yearPillar": "乙巳"
            },
            {
              "id": "BZ-M2",
              "start": "2026-02-03T20:02:08.000Z",
              "endExclusive": "2026-02-28T16:00:00.000Z",
              "monthPillar": "庚寅",
              "yearPillar": "丙午"
            }
          ]
        },
        "newYork": {
          "timezone": "America/New_York",
          "windows": [
            {
              "id": "BZ-M1",
              "start": "2026-02-01T05:00:00.000Z",
              "endExclusive": "2026-02-03T20:02:08.000Z",
              "monthPillar": "己丑",
              "yearPillar": "乙巳"
            },
            {
              "id": "BZ-M2",
              "start": "2026-02-03T20:02:08.000Z",
              "endExclusive": "2026-03-01T05:00:00.000Z",
              "monthPillar": "庚寅",
              "yearPillar": "丙午"
            }
          ]
        }
      }
    },
    {
      "id": "western-contact-window-same-library-regression",
      "status": "passed",
      "claim": "Observed Western contacts exclude transiting Moon; closest points remain inside their windows and configured orbs. Unclipped edges are outside the orb when sampled two minutes beyond. This reuses Astronomy Engine and is not independent ephemeris verification.",
      "observed": {
        "contactCount": 38,
        "checkedUnclippedEntries": 30,
        "checkedUnclippedExits": 29,
        "closestOrbRoundingToleranceDegrees": 0.0002,
        "closestOrbLimitAllowanceDegrees": 0.002,
        "selectedWindows": [
          {
            "id": "AS-Venus-Saturn-Opposition-1",
            "start": "2026-10-01T02:51:47.000Z",
            "endExclusive": "2026-10-05T10:57:39.000Z",
            "transitBody": "Venus",
            "natalBody": "Saturn",
            "aspect": "Opposition",
            "orbLimit": 2,
            "closestAt": "2026-10-03T07:10:02.780Z",
            "closestOrb": 1.909
          },
          {
            "id": "AS-Mercury-Mercury-Sextile-1",
            "start": "2026-10-01T03:49:27.000Z",
            "endExclusive": "2026-10-02T16:36:33.000Z",
            "transitBody": "Mercury",
            "natalBody": "Mercury",
            "aspect": "Sextile",
            "orbLimit": 1,
            "closestAt": "2026-10-01T22:05:26.093Z",
            "closestOrb": 0
          },
          {
            "id": "AS-Mercury-Neptune-Square-1",
            "start": "2026-10-01T18:29:45.000Z",
            "endExclusive": "2026-10-04T02:39:08.000Z",
            "transitBody": "Mercury",
            "natalBody": "Neptune",
            "aspect": "Square",
            "orbLimit": 1.5,
            "closestAt": "2026-10-02T22:16:20.254Z",
            "closestOrb": 0.0001
          }
        ]
      }
    }
  ]
}
