stage-cli 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. stage/__init__.py +1 -0
  2. stage/__main__.py +8 -0
  3. stage/banner.py +32 -0
  4. stage/bootstrap/__init__.py +0 -0
  5. stage/bootstrap/openjobs.py +392 -0
  6. stage/classify/__init__.py +29 -0
  7. stage/classify/eligibility.py +115 -0
  8. stage/classify/internship.py +64 -0
  9. stage/classify/role.py +91 -0
  10. stage/classify/scope.py +47 -0
  11. stage/cli/__init__.py +0 -0
  12. stage/cli/app.py +4 -0
  13. stage/cli/commands/__init__.py +8 -0
  14. stage/cli/commands/discovery.py +294 -0
  15. stage/cli/commands/insight.py +494 -0
  16. stage/cli/commands/pipeline.py +337 -0
  17. stage/cli/commands/postings.py +473 -0
  18. stage/cli/commands/schedule.py +171 -0
  19. stage/cli/housekeeping.py +64 -0
  20. stage/cli/logfile.py +56 -0
  21. stage/cli/notify.py +170 -0
  22. stage/cli/options.py +678 -0
  23. stage/cli/render.py +1398 -0
  24. stage/cli/runlock.py +74 -0
  25. stage/cli/schedule.py +702 -0
  26. stage/cli/schedule_state.py +363 -0
  27. stage/cli/selection.py +83 -0
  28. stage/cli/serialize.py +196 -0
  29. stage/companies.py +542 -0
  30. stage/data/companies/a.yaml +1289 -0
  31. stage/data/companies/b.yaml +900 -0
  32. stage/data/companies/c.yaml +1377 -0
  33. stage/data/companies/d.yaml +497 -0
  34. stage/data/companies/e.yaml +519 -0
  35. stage/data/companies/f.yaml +454 -0
  36. stage/data/companies/g.yaml +601 -0
  37. stage/data/companies/h.yaml +446 -0
  38. stage/data/companies/i.yaml +503 -0
  39. stage/data/companies/j.yaml +138 -0
  40. stage/data/companies/k.yaml +278 -0
  41. stage/data/companies/l.yaml +402 -0
  42. stage/data/companies/m.yaml +937 -0
  43. stage/data/companies/n.yaml +549 -0
  44. stage/data/companies/o.yaml +371 -0
  45. stage/data/companies/other.yaml +58 -0
  46. stage/data/companies/p.yaml +825 -0
  47. stage/data/companies/q.yaml +121 -0
  48. stage/data/companies/r.yaml +583 -0
  49. stage/data/companies/s.yaml +1140 -0
  50. stage/data/companies/t.yaml +817 -0
  51. stage/data/companies/u.yaml +196 -0
  52. stage/data/companies/v.yaml +325 -0
  53. stage/data/companies/w.yaml +353 -0
  54. stage/data/companies/x.yaml +67 -0
  55. stage/data/companies/y.yaml +36 -0
  56. stage/data/companies/z.yaml +146 -0
  57. stage/data/fonts/DejaVuSans.LICENSE.txt +99 -0
  58. stage/data/fonts/DejaVuSans.ttf +0 -0
  59. stage/data/lexicon/company_tokens.yaml +228 -0
  60. stage/data/lexicon/eligibility.yaml +455 -0
  61. stage/data/lexicon/inclusive_suffixes.yaml +37 -0
  62. stage/data/lexicon/internship.yaml +187 -0
  63. stage/data/lexicon/language.yaml +226 -0
  64. stage/data/lexicon/locations.yaml +1159 -0
  65. stage/data/lexicon/roles.yaml +2012 -0
  66. stage/data/lexicon/terms.yaml +76 -0
  67. stage/data/lexicon/workday_facets.yaml +27 -0
  68. stage/data/seed_companies.yaml +198 -0
  69. stage/dedup/__init__.py +19 -0
  70. stage/dedup/identity.py +113 -0
  71. stage/dedup/resolve.py +97 -0
  72. stage/domain/__init__.py +244 -0
  73. stage/domain/company.py +49 -0
  74. stage/domain/coverage.py +86 -0
  75. stage/domain/custom_board.py +92 -0
  76. stage/domain/discovery.py +94 -0
  77. stage/domain/enums.py +114 -0
  78. stage/domain/events.py +204 -0
  79. stage/domain/filters.py +27 -0
  80. stage/domain/health.py +169 -0
  81. stage/domain/ids.py +48 -0
  82. stage/domain/job.py +47 -0
  83. stage/domain/matching.py +15 -0
  84. stage/domain/priority.py +34 -0
  85. stage/domain/quarantine.py +39 -0
  86. stage/domain/rate_state.py +78 -0
  87. stage/domain/retention.py +20 -0
  88. stage/domain/rotation.py +46 -0
  89. stage/domain/signals.py +12 -0
  90. stage/domain/sync_run.py +35 -0
  91. stage/domain/text.py +113 -0
  92. stage/domain/validator.py +14 -0
  93. stage/domain/visits.py +60 -0
  94. stage/domain/workday.py +38 -0
  95. stage/http/__init__.py +58 -0
  96. stage/http/breaker.py +53 -0
  97. stage/http/cache.py +44 -0
  98. stage/http/client.py +725 -0
  99. stage/http/profiles.py +101 -0
  100. stage/lexicon.py +370 -0
  101. stage/normalize/__init__.py +16 -0
  102. stage/normalize/language.py +47 -0
  103. stage/normalize/location.py +271 -0
  104. stage/normalize/terms.py +153 -0
  105. stage/normalize/urls.py +122 -0
  106. stage/paths.py +86 -0
  107. stage/py.typed +0 -0
  108. stage/services/__init__.py +0 -0
  109. stage/services/canary.py +120 -0
  110. stage/services/coverage.py +231 -0
  111. stage/services/discover.py +747 -0
  112. stage/services/export.py +274 -0
  113. stage/services/health.py +237 -0
  114. stage/services/maintenance.py +225 -0
  115. stage/services/quarantine.py +20 -0
  116. stage/services/query.py +86 -0
  117. stage/services/sync.py +1257 -0
  118. stage/sources/__init__.py +82 -0
  119. stage/sources/_text.py +79 -0
  120. stage/sources/ashby.py +93 -0
  121. stage/sources/bamboohr.py +80 -0
  122. stage/sources/base.py +225 -0
  123. stage/sources/breezy.py +90 -0
  124. stage/sources/collage.py +60 -0
  125. stage/sources/community_feeds.py +142 -0
  126. stage/sources/curated_markdown.py +289 -0
  127. stage/sources/custom_json.py +610 -0
  128. stage/sources/espresso.py +154 -0
  129. stage/sources/feed.py +44 -0
  130. stage/sources/greenhouse.py +104 -0
  131. stage/sources/jobbank.py +147 -0
  132. stage/sources/jobvite.py +133 -0
  133. stage/sources/lever.py +76 -0
  134. stage/sources/oracle_cloud.py +187 -0
  135. stage/sources/platforms.py +609 -0
  136. stage/sources/quebec_emploi.py +146 -0
  137. stage/sources/recruitee.py +96 -0
  138. stage/sources/simplify.py +110 -0
  139. stage/sources/smartrecruiters.py +216 -0
  140. stage/sources/speedyapply.py +200 -0
  141. stage/sources/themuse.py +157 -0
  142. stage/sources/workable.py +83 -0
  143. stage/sources/workday.py +524 -0
  144. stage/sources/zshah.py +99 -0
  145. stage/storage/__init__.py +29 -0
  146. stage/storage/migrations/0001_initial.sql +239 -0
  147. stage/storage/migrations/__init__.py +135 -0
  148. stage/storage/repository.py +213 -0
  149. stage/storage/search.py +28 -0
  150. stage/storage/sqlite_repo.py +1586 -0
  151. stage/storage/writer.py +249 -0
  152. stage/tui/__init__.py +0 -0
  153. stage/tui/app.py +82 -0
  154. stage/tui/help.py +26 -0
  155. stage/tui/safe.py +21 -0
  156. stage/tui/screens/__init__.py +0 -0
  157. stage/tui/screens/boards.py +186 -0
  158. stage/tui/screens/postings.py +509 -0
  159. stage/tui/screens/review.py +209 -0
  160. stage/tui/screens/splash.py +37 -0
  161. stage/tui/screens/stats.py +124 -0
  162. stage/tui/screens/sync.py +194 -0
  163. stage/tui/state.py +160 -0
  164. stage/tui/theme.tcss +205 -0
  165. stage/tui/widgets/__init__.py +0 -0
  166. stage_cli-1.0.0.dist-info/METADATA +379 -0
  167. stage_cli-1.0.0.dist-info/RECORD +170 -0
  168. stage_cli-1.0.0.dist-info/WHEEL +4 -0
  169. stage_cli-1.0.0.dist-info/entry_points.txt +2 -0
  170. stage_cli-1.0.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,446 @@
1
+ - name: Haize Labs
2
+ platform: greenhouse
3
+ slug: haizelabs
4
+ source_of_record: discover
5
+ last_verified: &id004 2026-08-14
6
+ - name: Halcyon
7
+ platform: greenhouse
8
+ slug: halcyon
9
+ source_of_record: openjobs
10
+ last_verified: &id001 2026-08-11
11
+ - name: Haleon
12
+ platform: workday
13
+ slug: gsknch
14
+ source_of_record: openjobs
15
+ last_verified: 2026-08-14
16
+ recheck_after: 2026-10-01
17
+ workday_tenant: gsknch
18
+ workday_site: GSKCareers
19
+ workday_dc: wd3
20
+ notes: '2026-08-14: verified by a real sync — this board returned postings'
21
+ - name: Harman
22
+ platform: workday
23
+ slug: harman
24
+ source_of_record: discover
25
+ last_verified: &id008 2026-08-14
26
+ workday_tenant: harman
27
+ workday_site: harman
28
+ workday_dc: wd3
29
+ notes: '2026-08-14: verified by a real sync — this board returned postings, which
30
+ is the only verification a Workday tenant can have without an offline probe'
31
+ - name: Harvey
32
+ platform: ashby
33
+ slug: harvey
34
+ source_of_record: openjobs
35
+ last_verified: &id002 2026-08-11
36
+ notes: '2026-08-11: enabled on slug evidence - ashby publishes no board name, but
37
+ the slug folds to the caption and the board returned 388 job(s)'
38
+ - name: Hasbro
39
+ platform: greenhouse
40
+ slug: hasbro
41
+ source_of_record: openjobs
42
+ last_verified: *id001
43
+ - name: Haven Studios
44
+ platform: greenhouse
45
+ slug: havenenglish
46
+ source_of_record: discover
47
+ last_verified: 2026-08-18
48
+ notes: '2026-08-18: found by a plain-HTTP scan of the employer''s own careers page
49
+ for a known ATS hostname, part of the Montreal/Quebec sweep.'
50
+ - name: Haven Studios Inc
51
+ platform: greenhouse
52
+ slug: haven
53
+ source_of_record: openjobs
54
+ last_verified: *id001
55
+ - name: Hawkeye Innovations
56
+ platform: ashby
57
+ slug: hawkeyeinnovations
58
+ source_of_record: openjobs
59
+ last_verified: *id002
60
+ notes: '2026-08-11: enabled on slug evidence - ashby publishes no board name, but
61
+ the slug folds to the caption and the board returned 35 job(s)'
62
+ - name: HB studios
63
+ platform: greenhouse
64
+ slug: hbstudios
65
+ source_of_record: openjobs
66
+ last_verified: 2026-08-09
67
+ - name: HCompany
68
+ platform: ashby
69
+ slug: hcompany
70
+ source_of_record: discover
71
+ last_verified: &id003 2026-08-14
72
+ name_gate_exempt: true
73
+ notes: '2026-08-14: board token taken from this employer''s own application URL
74
+ in a feed posting, not from slug guessing; ashby publishes no board name, so the
75
+ name gate cannot confirm it and provenance is the evidence (22 job(s))'
76
+ - name: Headlands Technologies
77
+ platform: greenhouse
78
+ slug: headlandstechnologiesllc
79
+ source_of_record: discover
80
+ last_verified: 2026-08-20
81
+ notes: '2026-08-20: owner-supplied careers URL; the board names itself Headlands
82
+ Technologies LLC.'
83
+ - name: HealthCorps
84
+ platform: workable
85
+ slug: healthcorpsorg
86
+ source_of_record: discover
87
+ last_verified: &id006 2026-08-16
88
+ notes: '2026-08-16: adopted from this employer''s own apply URL, then paused to
89
+ match the rest of the workable platform, which is parked until 2026-08-18 after
90
+ two 429s in one day.'
91
+ - name: Heidelberg Materials
92
+ platform: workday
93
+ slug: heidelbergmaterials
94
+ source_of_record: discover
95
+ last_verified: 2026-08-16
96
+ workday_tenant: heidelbergmaterials
97
+ workday_site: global_hm_career_site
98
+ workday_dc: wd3
99
+ notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
100
+ verified by a scratch sync (120 posting(s), 0 kept)'
101
+ - name: Helion Energy
102
+ platform: ashby
103
+ slug: helion
104
+ source_of_record: discover
105
+ last_verified: 2026-08-17
106
+ notes: '2026-08-17: found by careers-page ATS scan, one plain GET. verify returned
107
+ 106 jobs and needs-a-manual-check, the expected verdict where the platform publishes
108
+ no board name; token equals the company name'
109
+ - name: Heliux
110
+ platform: ashby
111
+ slug: heliux
112
+ source_of_record: discover
113
+ last_verified: *id003
114
+ name_gate_exempt: true
115
+ notes: '2026-08-14: board token taken from this employer''s own application URL
116
+ in a feed posting, not from slug guessing; ashby publishes no board name, so the
117
+ name gate cannot confirm it and provenance is the evidence (3 job(s))'
118
+ - name: Helsing
119
+ platform: greenhouse
120
+ slug: helsing
121
+ source_of_record: discover
122
+ last_verified: *id004
123
+ - name: Hendrick Motorsports
124
+ platform: workday
125
+ slug: hendrick
126
+ source_of_record: discover
127
+ last_verified: &id005 2026-08-16
128
+ workday_tenant: hendrick
129
+ workday_site: HMSCareers
130
+ workday_dc: wd5
131
+ notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
132
+ verified by a scratch sync — the board answered with 38 posting(s), 1 kept after
133
+ the CS-internship screens'
134
+ - name: Hermeus
135
+ platform: lever
136
+ slug: hermeus
137
+ source_of_record: manual
138
+ last_verified: 2026-08-13
139
+ notes: '2026-08-13: official active software-engineering internship application
140
+ verifies the public Lever board.'
141
+ - name: Heron Power
142
+ platform: ashby
143
+ slug: heron-power
144
+ source_of_record: discover
145
+ last_verified: *id003
146
+ name_gate_exempt: true
147
+ notes: '2026-08-14: board token taken from this employer''s own application URL
148
+ in a feed posting, not from slug guessing; ashby publishes no board name, so the
149
+ name gate cannot confirm it and provenance is the evidence (37 job(s))'
150
+ - name: Hewlett Packard Enterprise
151
+ platform: workday
152
+ slug: hpe
153
+ source_of_record: manual
154
+ last_verified: 2026-08-13
155
+ workday_tenant: hpe
156
+ workday_site: acjobsite
157
+ workday_dc: wd5
158
+ workday_facet: workerSubType:98cbd30d374e1033353f1fbd0c2452f5
159
+ notes: '2026-08-13: official Workday endpoint verified; its Temp Intern (Fixed Term)
160
+ facet has six listings.'
161
+ - name: HEXAWARE
162
+ platform: oracle_cloud
163
+ slug: fa-etqo-saasfaprod1
164
+ source_of_record: discover
165
+ last_verified: &id007 2026-08-14
166
+ oracle_host: fa-etqo-saasfaprod1.fa.ocs.oraclecloud.com
167
+ oracle_site: CX_1
168
+ notes: '2026-08-14: enabled to be verified by a real sync — the Oracle Cloud candidate
169
+ endpoint has no offline probe, and this host and site come from the employer''s
170
+ own application URL'
171
+ - name: High Voltage Software
172
+ platform: workable
173
+ slug: high-voltage-software
174
+ source_of_record: openjobs
175
+ last_verified: 2026-08-17
176
+ notes: '2026-08-14: paused after two 429s in one day, the second after 7 requests;
177
+ paused_until resumed it.'
178
+ - name: Highdive
179
+ platform: greenhouse
180
+ slug: highdive
181
+ source_of_record: openjobs
182
+ last_verified: *id001
183
+ - name: Highspot
184
+ platform: lever
185
+ slug: highspot
186
+ source_of_record: openjobs
187
+ last_verified: 2026-08-04
188
+ - name: Hitachi
189
+ platform: smartrecruiters
190
+ slug: hitachisolutions
191
+ source_of_record: openjobs
192
+ last_verified: 2026-08-14
193
+ - name: Hiverge
194
+ platform: ashby
195
+ slug: hiverge
196
+ source_of_record: discover
197
+ last_verified: *id003
198
+ name_gate_exempt: true
199
+ notes: '2026-08-14: board token taken from this employer''s own application URL
200
+ in a feed posting, not from slug guessing; ashby publishes no board name, so the
201
+ name gate cannot confirm it and provenance is the evidence (4 job(s))'
202
+ - name: HNTB
203
+ platform: workday
204
+ slug: hntb
205
+ source_of_record: discover
206
+ last_verified: *id005
207
+ workday_tenant: hntb
208
+ workday_site: hntb_university_careers
209
+ workday_dc: wd5
210
+ notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
211
+ verified by a scratch sync — the board answered with 42 posting(s), 4 kept after
212
+ the CS-internship screens'
213
+ - name: HNTB
214
+ platform: workday
215
+ slug: hntb
216
+ source_of_record: discover
217
+ last_verified: *id005
218
+ workday_tenant: hntb
219
+ workday_site: hntb_careers
220
+ workday_dc: wd5
221
+ notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
222
+ verified by a scratch sync — the board answered with 42 posting(s), 4 kept after
223
+ the CS-internship screens'
224
+ - name: Hololabs
225
+ platform: bamboohr
226
+ slug: hololabs
227
+ source_of_record: openjobs
228
+ enabled: false
229
+ notes: '2026-08-08: bamboohr publishes no board name, so a 200 with jobs is not
230
+ evidence of the right company; needs a human to open the board once'
231
+ - name: Homebase
232
+ platform: ashby
233
+ slug: homebase
234
+ source_of_record: discover
235
+ last_verified: *id003
236
+ name_gate_exempt: true
237
+ notes: '2026-08-14: board token taken from this employer''s own application URL
238
+ in a feed posting, not from slug guessing; ashby publishes no board name, so the
239
+ name gate cannot confirm it and provenance is the evidence (14 job(s))'
240
+ - name: Hone Health
241
+ platform: greenhouse
242
+ slug: honehealth
243
+ source_of_record: discover
244
+ last_verified: *id004
245
+ - name: Honeywell
246
+ platform: oracle_cloud
247
+ slug: honeywell
248
+ source_of_record: discover
249
+ last_verified: 2026-08-20
250
+ oracle_host: ibqbjb.fa.ocs.oraclecloud.com
251
+ oracle_site: CX_1
252
+ oracle_keyword: ''
253
+ notes: '2026-08-20: careers.honeywell.com is a Phenom shell over this Oracle tenant.
254
+ Walked unfiltered because keyword=internship returns 11 where the French stage
255
+ returns 33, so no one keyword spans the board; 1,307 rows complete, 34 of them
256
+ Canadian.'
257
+ - name: Hong Leong Bank
258
+ platform: workday
259
+ slug: hlb
260
+ source_of_record: discover
261
+ last_verified: *id005
262
+ workday_tenant: hlb
263
+ workday_site: hlbcareers
264
+ workday_dc: wd3
265
+ notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
266
+ verified by a scratch sync — the board answered with 20 posting(s), 2 kept after
267
+ the CS-internship screens'
268
+ - name: HOOPP
269
+ platform: workday
270
+ slug: hoopp
271
+ source_of_record: discover
272
+ last_verified: 2026-08-20
273
+ workday_tenant: hoopp
274
+ workday_site: HOOPPStudent
275
+ workday_dc: wd10
276
+ notes: The employer's student site answered 200 with an empty roster on 2026-08-20,
277
+ not a broken board.
278
+ - name: Hootsuite
279
+ platform: greenhouse
280
+ slug: hootsuite
281
+ source_of_record: manual
282
+ last_verified: *id004
283
+ - name: Hopper
284
+ platform: ashby
285
+ slug: hopper
286
+ source_of_record: discover
287
+ last_verified: 2026-08-17
288
+ name_gate_exempt: true
289
+ notes: '2026-08-17: found by browser-assisted discovery from the employer''s own
290
+ careers page and the board answered with postings, but ashby publishes no board
291
+ name, so provenance is the evidence rather than a name match'
292
+ - name: Horizon Industries
293
+ platform: greenhouse
294
+ slug: horizonindustrieslimited
295
+ source_of_record: discover
296
+ last_verified: *id004
297
+ - name: Howard University
298
+ platform: workday
299
+ slug: howard
300
+ source_of_record: discover
301
+ last_verified: 2026-08-16
302
+ workday_tenant: howard
303
+ workday_site: HU
304
+ workday_dc: wd1
305
+ notes: '2026-08-16: coordinates taken from this employer''s own apply URL, then
306
+ verified by a scratch sync (2 posting(s), 0 kept)'
307
+ - name: Howmet Aerospace
308
+ platform: oracle_cloud
309
+ slug: fa-exty-saasfaprod1
310
+ source_of_record: discover
311
+ last_verified: 2026-08-18
312
+ oracle_host: fa-exty-saasfaprod1.fa.ocs.oraclecloud.com
313
+ oracle_site: Intern
314
+ notes: '2026-08-18: host and site supplied by the owner. The site is literally named
315
+ Intern but is not intern-filtered - it returns the whole 771-posting board - so
316
+ the adapter''s keyword=internship is what makes it affordable at 17 postings,
317
+ one page'
318
+ - name: HP
319
+ platform: workday
320
+ slug: hp
321
+ source_of_record: openjobs
322
+ last_verified: 2026-08-03
323
+ workday_tenant: hp
324
+ workday_site: ExternalCareerSite
325
+ workday_dc: wd5
326
+ - name: HPR (Hyannis Port Research)
327
+ platform: greenhouse
328
+ slug: hyannisportresearch
329
+ source_of_record: discover
330
+ last_verified: *id004
331
+ - name: Hubs.is
332
+ platform: ashby
333
+ slug: hubs.is
334
+ source_of_record: discover
335
+ last_verified: *id006
336
+ name_gate_exempt: true
337
+ notes: '2026-08-16: token from this employer''s own apply URL, not slug guessing;
338
+ ashby publishes no board name, so provenance is the evidence (9 job(s))'
339
+ - name: Huck Adventures
340
+ platform: smartrecruiters
341
+ slug: huckadventures
342
+ source_of_record: discover
343
+ last_verified: 2026-08-18
344
+ notes: '2026-08-18: seen in feed postings but absent from the registry; discover
345
+ matched smartrecruiters/huckadventures with 7 job(s) and the board named itself,
346
+ so it is polled directly instead of secondhand'
347
+ - name: Hudson River Trading
348
+ platform: greenhouse
349
+ slug: hrttalentcommunity
350
+ source_of_record: discover
351
+ last_verified: 2026-08-17
352
+ notes: '2026-08-17: greenhouse token from the careers page. The board names itself
353
+ ''HRT Talent Community'' and carried only 3 jobs, so this is a talent-community
354
+ board rather than the main requisition list; feed coverage stays the primary route
355
+ for this employer'
356
+ - name: Hugging Face
357
+ platform: workable
358
+ slug: huggingface
359
+ source_of_record: openjobs
360
+ last_verified: 2026-08-17
361
+ notes: '2026-08-14: paused after two 429s in one day, the second after 7 requests;
362
+ paused_until resumed it.'
363
+ - name: Human Computer Lab
364
+ platform: ashby
365
+ slug: human-computer-lab
366
+ source_of_record: discover
367
+ last_verified: *id003
368
+ name_gate_exempt: true
369
+ notes: '2026-08-14: board token taken from this employer''s own application URL
370
+ in a feed posting, not from slug guessing; ashby publishes no board name, so the
371
+ name gate cannot confirm it and provenance is the evidence (12 job(s))'
372
+ - name: Hunt Oil Company
373
+ platform: oracle_cloud
374
+ slug: fa-eqcd-saasfaprod1
375
+ source_of_record: discover
376
+ last_verified: *id007
377
+ oracle_host: fa-eqcd-saasfaprod1.fa.ocs.oraclecloud.com
378
+ oracle_site: CX_1
379
+ notes: '2026-08-14: enabled to be verified by a real sync — the Oracle Cloud candidate
380
+ endpoint has no offline probe, and this host and site come from the employer''s
381
+ own application URL'
382
+ - name: Huntress
383
+ platform: greenhouse
384
+ slug: huntress
385
+ source_of_record: discover
386
+ last_verified: 2026-08-21
387
+ notes: '2026-08-21: supplied URL is the employer’s Greenhouse board and returned
388
+ live postings.'
389
+ - name: Huntsman
390
+ platform: workday
391
+ slug: huntsman
392
+ source_of_record: discover
393
+ last_verified: *id008
394
+ workday_tenant: huntsman
395
+ workday_site: huntsman
396
+ workday_dc: wd1
397
+ notes: '2026-08-14: verified by a real sync — this board returned postings, which
398
+ is the only verification a Workday tenant can have without an offline probe'
399
+ - name: Hydro One
400
+ platform: custom_json
401
+ slug: hydroone
402
+ source_of_record: discover
403
+ last_verified: 2026-08-19
404
+ notes: SuccessFactors RMK; /rss.xml returned all 18 postings its search page reports.
405
+ custom:
406
+ url: https://jobs.hydroone.com/rss.xml
407
+ format: rss
408
+ fields:
409
+ title: title
410
+ id: g:id
411
+ url: link
412
+ location: g:location
413
+ description: description
414
+ category: g:job_function
415
+ - name: Hydro-Québec
416
+ platform: custom_json
417
+ slug: hydroquebec
418
+ source_of_record: discover
419
+ last_verified: 2026-08-20
420
+ notes: SuccessFactors RMK; /rss.xml carries the whole French board, including its
421
+ collegial and university stage postings.
422
+ custom:
423
+ url: https://emploi.hydroquebec.com/rss.xml
424
+ format: rss
425
+ fields:
426
+ title: title
427
+ id: g:id
428
+ url: link
429
+ location: g:location
430
+ description: description
431
+ category: g:job_function
432
+ - name: Hypercubic
433
+ platform: ashby
434
+ slug: hypercubic
435
+ source_of_record: discover
436
+ last_verified: 2026-08-16
437
+ name_gate_exempt: true
438
+ notes: '2026-08-16: token from this employer''s own apply URL, not slug guessing;
439
+ ashby publishes no board name, so provenance is the evidence (2 job(s))'
440
+ - name: HyperLight
441
+ platform: workable
442
+ slug: hyperlight
443
+ source_of_record: discover
444
+ last_verified: 2026-08-17
445
+ notes: '2026-08-14: paused after two 429s in one day, the second after 7 requests;
446
+ paused_until resumed it.'