First public build.
- Greenhouse, Lever and Ashby read through their documented public APIs. No
keys, no proxies, no rendering.
- The vendor is detected from a pasted careers-page URL, including Lever's EU
host and Greenhouse's embed form.
- A board that could not be read, or that answered in a shape its own
documentation does not describe, is reported as a
problem row with the
reason — never as a company with no openings.
- Lever's epoch-millisecond dates converted to ISO, so postings from three
vendors sort together.
remote left absent rather than false where a board says nothing, so
"unknown" and "not remote" stay distinguishable.
- Postings Ashby marks unlisted are skipped.
- A missing publication date never fails a
postedWithinDays filter.
Deliberately not included: LinkedIn and Indeed, which would mean permanent
anti-bot maintenance for republished data; and Workable and SmartRecruiters,
whose public endpoints could not be confirmed from primary documentation. An
adapter built on a guessed URL returns an empty list rather than an error, and
an empty list reads as "not hiring".