ImplementedREALFIELD 04

NEXUS CEREBRI / Temporal Lens

Treat time as a typed boundary, not a display string.

Cerebri uses UTC instants, explicit IANA zones and validated half-open intervals, with bounded recurrence diagnostics.

TECHNICAL DEPTH / CONTRACTS

Gap and fold handling must be explicit. Free time is only known under complete coverage; incomplete coverage leaves the complement unknown.

RESEARCH DEPTH / BOUNDARY

Existing daily/weekly series compile into bounded CPIR 0.2 occupancy. Monthly/yearly rules, exceptions, prospective series and recurrence constraints remain unsupported.

TYPED TEMPORAL STATE

A timestamp is not enough to describe time safely.

Cerebri keeps instants, zones, half-open intervals and DST ambiguity explicit so planning does not silently guess what a local clock value means.

TECHNICAL DETAIL

Free-time complements are only known under complete temporal coverage. Gap/fold policy is explicit rather than inferred by the UI.

01
Intervals have exact boundary semantics[start, end)
02
A local time can fail to existDST gap
03
A local time can map to two instantsDST fold

Three time paths explain half-open intervals, a DST gap and a DST fold, with raw temporal diagnostic output available in a disclosure.

REALTemporal Lens
UTC INSTANTLOCAL INTERPRETATION
01 / INTERVAL MODEL[start, end)

Touching endpoints do not overlap.

GAP
02 / DST GAP02:30 → nonexistent

Policy must reject or skip.

03 / DST FOLD02:30 → ambiguous

Policy must reject, earlier or later.

Rust temporal fixture output+
{
  "status": "Complete",
  "data": {
    "availability": {
      "horizon": {
        "start": "2026-03-28T00:00:00Z",
        "end": "2026-03-31T00:00:00Z"
      },
      "coverage": "Complete",
      "busy": [
        {
          "start": "2026-03-28T01:30:00Z",
          "end": "2026-03-28T02:00:00Z"
        },
        {
          "start": "2026-03-28T09:45:00Z",
          "end": "2026-03-28T11:05:00Z"
        },
        {
          "start": "2026-03-30T00:30:00Z",
          "end": "2026-03-30T01:00:00Z"
        }
      ],
      "free": [
        {
          "start": "2026-03-28T00:00:00Z",
          "end": "2026-03-28T01:30:00Z"
        },
        {
          "start": "2026-03-28T02:00:00Z",
          "end": "2026-03-28T09:45:00Z"
        },
        {
          "start": "2026-03-28T11:05:00Z",
          "end": "2026-03-30T00:30:00Z"
        },
        {
          "start": "2026-03-30T01:00:00Z",
          "end": "2026-03-31T00:00:00Z"
        }
      ],
      "unknown": [],
      "trace": [
        {
          "input_index": 0,
          "original": {
            "start": "2026-03-28T10:00:00Z",
            "end": "2026-03-28T11:00:00Z"
          },
          "buffered": {
            "start": "2026-03-28T09:45:00Z",
            "end": "2026-03-28T11:05:00Z"
          },
          "clipped": {
            "start": "2026-03-28T09:45:00Z",
            "end": "2026-03-28T11:05:00Z"
          }
        },
        {
          "input_index": 1,
          "original": {
            "start": "2026-03-28T01:30:00Z",
            "end": "2026-03-28T02:00:00Z"
          },
          "buffered": {
            "start": "2026-03-28T01:30:00Z",
            "end": "2026-03-28T02:00:00Z"
          },
          "clipped": {
            "start": "2026-03-28T01:30:00Z",
            "end": "2026-03-28T02:00:00Z"
          }
        },
        {
          "input_index": 2,
          "original": {
            "start": "2026-03-30T00:30:00Z",
            "end": "2026-03-30T01:00:00Z"
          },
          "buffered": {
            "start": "2026-03-30T00:30:00Z",
            "end": "2026-03-30T01:00:00Z"
          },
          "clipped": {
            "start": "2026-03-30T00:30:00Z",
            "end": "2026-03-30T01:00:00Z"
          }
        }
      ]
    },
    "expansions": [
      {
        "horizon": {
          "start": "2026-03-28T00:00:00Z",
          "end": "2026-03-31T00:00:00Z"
        },
        "timezone": "Europe/Berlin",
        "occurrences": [
          {
            "sequence": 1,
            "date": "2026-03-28",
            "local_time": "02:30:00",
            "range": {
              "start": "2026-03-28T01:30:00Z",
              "end": "2026-03-28T02:00:00Z"
            },
            "visible_range": {
              "start": "2026-03-28T01:30:00Z",
              "end": "2026-03-28T02:00:00Z"
            },
            "resolution": "Unique"
          },
          {
            "sequence": 3,
            "date": "2026-03-30",
            "local_time": "02:30:00",
            "range": {
              "start": "2026-03-30T00:30:00Z",
              "end": "2026-03-30T01:00:00Z"
            },
            "visible_range": {
              "start": "2026-03-30T00:30:00Z",
              "end": "2026-03-30T01:00:00Z"
            },
            "resolution": "Unique"
          }
        ],
        "skipped": [
          {
            "sequence": 2,
            "date": "2026-03-29",
            "reason": "NonexistentLocalTime"
          }
        ],
        "examined_dates": 4
      }
    ]
  }
}
Text alternative

Three time paths explain half-open intervals, a DST gap and a DST fold, with raw temporal diagnostic output available in a disclosure.

Built from current repository facts or Rust-generated fixture output.