fix(jobnet-search): emit the /scrape contract fields in search output (#339)

Adds additive normalization so jobnet search output carries the cross-portal contract fields (company, location, date, deadline with the 1900-01-01 NotDisclosed sentinel mapped to null, and url). Emits the public /find-job/{jobAdId} route and corrects the skill's own stale /job/ documentation, which redirects anonymous visitors into the MitID login flow.

Co-authored-by: oscarbol09 <80536682+oscarbol09@users.noreply.github.com>
This commit is contained in:
Oscar Madera
2026-08-19 08:20:23 +02:00
committed by GitHub
parent f136b534de
commit 04186b9a37
5 changed files with 63 additions and 3 deletions
+8
View File
@@ -46,6 +46,14 @@ per-file diff commands.
### Fixed
- **`jobnet-search` search output now carries the `/scrape` contract fields** - the CLI emitted
the raw Jobnet API schema (`jobAdId`, `hiringOrgName`, `publicationDate`, …) with no
`company`, `location`, `date` or `url`, so every `/scrape` run flagged jobnet as degraded
forever (CI stayed green), the `seen_jobs.json` dedupe fell back to company+title, and `/rank`
lost the posting link. Search results now additively emit `company`, `location`, `date`,
`deadline` and `url` (`https://jobnet.dk/find-job/{jobAdId}` - the `/job/` route is
login-walled); the API's `1900-01-01` "deadline not disclosed" sentinel maps to `null`.
- **A `/` in a company or role name no longer nests the application archive one level too deep**
(jakob1379/ai-job-search#22). `Novo Nordisk A/S` derived
`documents/applications/novo_nordisk_a/s_data_scientist/` - written and found by every command