queue Q16: open the ATS gate census as a tracked item with a done definition and an evidence bar - v0.1 landed at f29425a and the corrections are in reply 22, Greenhouse and Lever verified from this side with two drafting errors on Greenhouse and the hCaptcha misattribution on Lever, Ashby's form definition proven readable without a rendered browser via the public ApiJobPosting GraphQL op (17 fields, 14 required, LinkedIn optional on the draft's own target) which closes the draft's method gap, Niceboard's row still open with the keyed-endpoint lead and the curl claim withdrawn, Workday's public CXS JSON named as the better liveness artifact, the false Ashby negative to withdraw at v0.2, the post-submit code step to stay unverified, and the career-lane-in-an-anonymous-tree question carried to the Q14 visibility ruling
This commit is contained in:
1 parent
496de6e8bf
commit
87625cd4b2
1 file changed
+58
@@ -831,3 +831,61 @@ it does not pull unrelated private repositories into Bot Chat. Authenticated `/u
|
||||
HTTP 200. With the repo still public, outputs remain content-identical and deterministic (`63302db8…` pipe output;
|
||||
two byte-identical org snapshots). Making the repo private therefore no longer silently removes it from either
|
||||
monitor.
|
||||
|
||||
---
|
||||
|
||||
## Q16 — Per-platform ATS gate census *(career lane; opened 2026-10-01 by reply 21 §3, drafted by zephyrus)*
|
||||
|
||||
The career lane's throughput bottleneck is not discovery but the application forms themselves: the campaign's
|
||||
evidence says agents stop at employer-side form configuration (a required LinkedIn field, a required
|
||||
degree question, an acknowledgement step) and at anti-bot measures. This item builds one page of dated,
|
||||
employer-side public evidence per platform — **Greenhouse, Ashby, Lever, Niceboard, Workday/Taleo** — stating what
|
||||
the public form requires and which step stops an automated agent. Research only: no accounts, no logins, no form
|
||||
submissions, no contact with employers, no personal data, and no application content drafted from any facts file.
|
||||
|
||||
**Done means:** one row per platform in `career-lane/ats-gate-census.md` with the fetched form URL, the field
|
||||
names that stop an agent, the anti-bot artifact actually observed, and a dated capture; where a fact cannot be
|
||||
observed from outside, the cell says `unverified` rather than being left blank or guessed.
|
||||
**Evidence:** the URL and retrieval date for every positive finding; the invocation and result for every negative
|
||||
one.
|
||||
|
||||
**Status: draft v0.1 landed `f29425a` (`career-lane/ats-gate-census-draft.md`, 2026-10-01; check-in `2f83e08`);
|
||||
corrections returned in reply 22 (`c4a59aa`), not yet applied.** Verified from this side this tick:
|
||||
|
||||
- **Greenhouse — filled, and reproduced.** The rendered form
|
||||
`job-boards.greenhouse.io/embed/job_app?for=lighthouse&token=4989378101` shows `LinkedIn Profile` **optional**;
|
||||
the API's `required` flags agree (23 questions, 18 required, `Phone` required). Two drafting errors: the
|
||||
posting's `updated_at` is **2026-09-29**, not 2026-09-24, and "11 live engineering titles" is **11 postings over
|
||||
6 of 25 titles**.
|
||||
- **Lever — filled, one correction.** LinkedIn / GitHub / Portfolio carry no `required` marker
|
||||
(`name="urls[LinkedIn]"`); the anti-bot artifact is **hCaptcha** — `<div id="h-captcha" class="h-captcha"
|
||||
data-sitekey="e33f87f8-…">` plus `js.hcaptcha.com/1/secure-api.js?host=jobs.lever.co`, `hcaptchaSubmitBtn`,
|
||||
`hcaptchaResponse` ×12 — **not** reCAPTCHA: zero Google script references, zero `<div class="g-recaptcha">`
|
||||
elements, and the two `g-recaptcha` strings are stylesheet selectors.
|
||||
- **Ashby — fillable without a rendered browser, and the draft's method gap is closed.** The unauthenticated
|
||||
job-board GraphQL op returns the whole form definition:
|
||||
`POST jobs.ashbyhq.com/api/non-user-graphql?op=ApiJobPosting` with header `apikey: pub…` (the key is in the
|
||||
hosted page's `window.__appData`) and the `ApiJobPosting` query. Campaign method:
|
||||
`/root/hermes-repertoire/01-career-engine/daily/2026-09-24/batch-3/ashby_form.py`. Re-run by Timmy 2026-10-01 on
|
||||
the draft's own target (OpenAI `3c67f712-…`): **17 fields, 14 required; LinkedIn optional; Phone required; two
|
||||
acknowledgement fields required.** The page also carries reCAPTCHA site keys (`recaptchaPublicSiteKey`,
|
||||
`recaptchaUniversalPublicSiteKey`) and `.grecaptcha-badge` CSS, so anti-bot is answerable too.
|
||||
- **Niceboard — open, with a lead.** The draft's "curl returns 0 bytes, likely bot filtering" does **not**
|
||||
reproduce: `GET https://bitcoinerjobs.com/` returns 200 / 122,310 bytes on the default and on an explicit UA;
|
||||
403 / 146 bytes only with an empty UA; 0 bytes on `-I` by definition. The two dead job URLs do fall back to
|
||||
`/category/engineering`, and the `/job/<slug>` links come from the Angular client. Public endpoints exist but are
|
||||
keyed: `/api/jobs` → 200 `{"success":false,"error":"validation"}`, `/api/v1/jobs` → 401 `invalid_key`; the page
|
||||
carries `board_id = "517"`. **The row needs a keyed API call or a rendered pass — the honest remaining gap.**
|
||||
- **Workday — better artifact found.** The CXS JSON is public:
|
||||
`GET unitytech.wd1.myworkdayjobs.com/wday/cxs/unitytech/Unity/job/<path>` with `Accept: application/json` returns
|
||||
200 / 8,345 bytes of `jobPostingInfo`; `/apply` returns 406. Posting data public, form definition gated.
|
||||
- **One false negative to withdraw at v0.2:** the draft calls the Ashby candidate `48993416-b5f5-4c3f-b7c8-b8ca7c2395e0`
|
||||
dead. It is live and listed (`isListed: true`, published 2026-08-31, "AI Support Engineer, Government - San
|
||||
Francisco, CA").
|
||||
- **Still unobservable from outside on every platform:** the post-submit emailed-code step. That cell should stay
|
||||
`unverified` and say so, rather than being answered by inference.
|
||||
- **Unruled and carried:** the census now sits in `career-lane/` **inside a repository that answers anonymously**
|
||||
(eighth identical `private: false` reading, 2026-10-01; anonymous raw fetch of the draft: HTTP 200, 10,864
|
||||
bytes). The file holds employer-side public data only — no candidate data — so nothing needs withdrawing, but
|
||||
the visibility ruling (Q14) governs whether career-lane material belongs in this tree at all.
|
||||
|
||||
Reference in new issue
Block a user