@hanzo/workday: an embedded-app panel + read-only OAuth + API-proxy service
over Workday people data, built on @hanzo/ai + @hanzo/iam via api.hanzo.ai.
Mirrors packages/procore's pure-core shape.
- OAuth2 Authorization Code + refresh against the tenant token endpoint
(…/ccx/oauth2/{tenant}/token) with HTTP Basic client auth (secret in the
header, never the body); non-rotating refresh carried forward.
- Workday REST wrappers (staffing v6 workers/orgs/directReports, recruiting v4
requisitions, absenceManagement v1 absence types) with limit/offset + the
{ total, data } envelope, plus RaaS custom-report reads ({ Report_Entry }).
- Pure people-context assembly with honest budget/truncation windowing.
- Five HR-guardrailed AI actions: summarize worker, draft job description,
org & headcount, answer HR question, draft review feedback.
- Read-only by design: the proxy is GET-only (405 otherwise); write-back is
documented as a gated future addition.
- 113 vitest tests; tsc --noEmit clean; esbuild build green.
Registers packages/workday in pnpm-workspace.yaml.
40 lines
821 B
YAML
40 lines
821 B
YAML
packages:
|
|
- 'packages/aci'
|
|
- 'packages/auth'
|
|
- 'packages/browser'
|
|
- 'packages/canva'
|
|
- 'packages/cards'
|
|
- 'packages/clio'
|
|
- 'packages/desktop'
|
|
- 'packages/docusign'
|
|
- 'packages/dxt'
|
|
- 'packages/figma'
|
|
- 'packages/github'
|
|
- 'packages/gitlab'
|
|
- 'packages/gworkspace'
|
|
- 'packages/hubspot'
|
|
- 'packages/jetbrains'
|
|
- 'packages/jupyter'
|
|
- 'packages/mcp'
|
|
- 'packages/meetings'
|
|
- 'packages/notion'
|
|
- 'packages/office'
|
|
- 'packages/outlook'
|
|
- 'packages/pdf'
|
|
- 'packages/procore'
|
|
- 'packages/quickbooks'
|
|
- 'packages/raycast'
|
|
- 'packages/salesforce'
|
|
- 'packages/shopify'
|
|
- 'packages/sketch'
|
|
- 'packages/slack'
|
|
- 'packages/teams'
|
|
- 'packages/tools'
|
|
- 'packages/vscode'
|
|
- 'packages/workday'
|
|
- 'packages/zendesk'
|
|
- 'apps/*'
|
|
|
|
onlyBuiltDependencies:
|
|
- better-sqlite3
|