Skip to content

📘 reference — overview/guide, not tied to a code symbol

Validation by Beadloom doc_sync — same source as sync-check.

isdayoff.ru ​

The isdayoff.ru production calendar, a public service that answers whether a date is a working day by the Russian production calendar. An external system: this repository holds no code of it and declares only the surface the service reads.

Source ​

None in this repository. The node's source in .beadloom/_graph/landscape.yml is this file, so the graph has no sourceless node.

Specification ​

Purpose ​

Holidays fall on weekdays and some Saturdays are working, so the Monday-Friday rule alone would check in on a holiday. isdayoff.ru gives the verdict for one date. When it gives no clean answer, the domain falls back to the Monday-Friday rule and the report says so.

Contracts ​

http:isdayoff-day — isdayoff → isdayoff-calendar ​

Declared from both ends in landscape.yml. The portal's map shows it as a dependency with a presence verdict, and the surface below is the one isdayoff-calendar reads.

  • Request. GET https://isdayoff.ru/YYYYMMDD (for example /20261026), no authentication, no query, a 5-second timeout. At most one request per run. The run loop asks the calendar once, and a --force run asks it nothing. The dry run (checkin|checkout --dry-run, through WindowedRun.first_decision) also asks it once, and the probe asks it once for today.
  • Answer. Status 200 with a one-character body:
BodyMeaningThe adapter's answer
0working dayTrue
1non-working dayFalse
2shortened pre-holiday day, still workingTrue
  • Everything else is no answer. A network error, the timeout, a status other than 200 or any other body is None, logged as a warning that names the date, and never raised. On None the report's calendar line reads "unreachable, the Mon-Fri rule decided", and the probe's calendar check is degraded, not failed.

Invariants ​

  • The calendar is a source of verdicts, never of failures: no answer of it fails a run.
  • Tests never reach isdayoff.ru: the adapter is tested on httpx.MockTransport, and the acceptance scenarios run on a fake calendar.

Dependencies ​

Declared in .beadloom/_graph/landscape.yml as contract edges, not derived from imports: an external system has no code here.

  • Produces: http:isdayoff-day for isdayoff-calendar
  • Consumes: (none)

Parent ​

None: an external system, not part of horizon-tracker. The consumer is isdayoff-calendar.