Skip to content

fix(data): use IdentifierInput and SINGLE_INSTANCE fields in GraphQL mutations#100

Merged
mackenziemcclaskey merged 4 commits into
mainfrom
feat/charitable-donations-example
May 28, 2026
Merged

fix(data): use IdentifierInput and SINGLE_INSTANCE fields in GraphQL mutations#100
mackenziemcclaskey merged 4 commits into
mainfrom
feat/charitable-donations-example

Conversation

@mackenziemcclaskey
Copy link
Copy Markdown
Collaborator

Summary

  • GraphQL update and remove mutations now use IdentifierInput (with id + type) and collection-based argument names (e.g. widgetsId) to match the Workday API signature — previously they sent a bare id: String! which was incorrect
  • SINGLE_INSTANCE reference fields are now included in selection sets so their workdayID type gets fetched and cached; that cached type is then used when building mutation inputs so the correct ID type is always round-tripped
  • Added embeddedInput?: boolean to FieldSchema for fields that require the Workday embedded input pattern (wraps IdentifierInput in a nested id field)
  • CLI view command now proxies /apps routes with Bearer auth, consistent with the existing API proxy routes
  • Also includes the charitable donations example app added in the earlier commit

Test plan

  • just test — all 364 tests pass
  • just check — typecheck, lint, and formatting clean
  • Verify update() and remove() use collection-based IdentifierInput args in integration with a live Workday tenant
  • Verify SINGLE_INSTANCE fields resolve correctly in the charitable donations example app

🤖 Generated with Claude Code

Mackenzie Fernandez and others added 3 commits May 20, 2026 16:28
Adds a simple two-route plugin built on the charitable donations Extend
bundle, demonstrating GraphQLResolver, generated data hooks, and Canvas
Kit components.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…mutations

- update/remove now send IdentifierInput (id + type) with collection-based arg
  names (e.g. widgetsId) to match the Workday API signature
- SINGLE_INSTANCE reference fields are included in selection sets; workdayID
  types are cached so mutations can round-trip the correct type
- add embeddedInput flag on FieldSchema for fields that wrap IdentifierInput in
  a nested id field (Workday embedded input pattern)
- proxy /apps routes with Bearer auth in the CLI view command

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file should not be tracked.

import { schemas } from './everywhere/data/schema.js';
import { home, charityDetail } from './routes.js';

// referenceId comes from appManifest.json in your Extend bundle.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should the referenceId variable be in the place of charitableDonations_mcwslt?

- untrack everywhere/.config.json (local dev config); broaden .gitignore
  pattern to **/everywhere/.config.json so it's excluded at any depth
- consolidate REFERENCE_ID into everywhere/extend.ts alongside
  EXTEND_APPLICATION_ID; remove duplicate definition in charityLogo.ts

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Comment thread examples/tsconfig.json
{
"extends": "../tsconfig.json",
"compilerOptions": {
"rootDir": "..",
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mpfilbin not sure if this is necessary, my stuff was having issues without it but if it breaks other examples I can try to resolve it another way

@mackenziemcclaskey
Copy link
Copy Markdown
Collaborator Author

Hey @jheddings — just wanted to flag that the feedback from your review has been addressed in a subsequent commit. Would you mind taking another look when you get a chance?

Copy link
Copy Markdown
Collaborator

@mpfilbin mpfilbin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@mackenziemcclaskey mackenziemcclaskey merged commit 0a52a70 into main May 28, 2026
2 checks passed
@mackenziemcclaskey mackenziemcclaskey deleted the feat/charitable-donations-example branch May 28, 2026 18:59
mpfilbin added a commit that referenced this pull request May 28, 2026
Update() now resolves Workday ID type via findOne after #100, so the
graph.updateInputType assertion must inspect the second fetch call.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants