Skip to content

Add missing contexts to ContextTypes enum and TS type#1796

Merged
kriswest merged 3 commits intomainfrom
correct-missing-contexts
Mar 18, 2026
Merged

Add missing contexts to ContextTypes enum and TS type#1796
kriswest merged 3 commits intomainfrom
correct-missing-contexts

Conversation

@kriswest
Copy link
Copy Markdown
Contributor

@kriswest kriswest commented Mar 17, 2026

Describe your change

fdc3-standard contains a ContextTypes.ts file which can be used to validate context type names. However, it is out of sync with the fdc3-contexts package. This PR adds the missing types in and implements tests that will prevent that from happening again.

I'd like to include this in 2.2.2 release as a correction.

Contributor License Agreement

  • I acknowledge that a contributor license agreement is required and that I have one in place or will seek to put one in place ASAP.

Review Checklist

  • CHANGELOG: Is a CHANGELOG.md entry included?

@kriswest kriswest added this to the 2.2.2 milestone Mar 17, 2026
@kriswest kriswest requested a review from a team as a code owner March 17, 2026 19:43
@netlify
Copy link
Copy Markdown

netlify Bot commented Mar 17, 2026

Deploy Preview for fdc3 canceled.

Name Link
🔨 Latest commit 217cbba
🔍 Latest deploy log https://app.netlify.com/projects/fdc3/deploys/69b9d307b6d795000853d16e

@kriswest
Copy link
Copy Markdown
Contributor Author

will add a changelog entry...

@github-actions
Copy link
Copy Markdown

628 passed

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 17, 2026

Coverage Report

Commit: 217cbba
Base: main@2957d06

Type Base This PR
Total Statements Coverage  95.54%  95.55% (+0.01%)
Total Branches Coverage  90.53%  90.53% (+0%)
Total Functions Coverage  96.86%  96.86% (+0%)
Total Lines Coverage  95.54%  95.55% (+0.01%)
Details (changed files)
FileStatementsBranchesFunctionsLines
packages/fdc3-standard/src/context/ContextType.ts 100% 100% 100% 100%
packages/fdc3-standard/src/internal/contextConfiguration.ts 100% 100% 100% 100%
Details (all files)
FileStatementsBranchesFunctionsLines
packages/fdc3-agent-proxy/src/DesktopAgentProxy.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/Messaging.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/index.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/apps/AppSupport.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/apps/DefaultAppSupport.ts 86.45% 77.77% 100% 86.45%
packages/fdc3-agent-proxy/src/channels/ChannelSupport.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/channels/DefaultChannel.ts 80% 100% 75% 80%
packages/fdc3-agent-proxy/src/channels/DefaultChannelSupport.ts 98.35% 94.64% 100% 98.35%
packages/fdc3-agent-proxy/src/channels/DefaultPrivateChannel.ts 98.93% 82.35% 100% 98.93%
packages/fdc3-agent-proxy/src/heartbeat/DefaultHeartbeatSupport.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/heartbeat/HeartbeatSupport.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/intents/DefaultIntentResolution.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/intents/DefaultIntentSupport.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/intents/IntentSupport.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/listeners/AbstractListener.ts 97.18% 62.5% 100% 97.18%
packages/fdc3-agent-proxy/src/listeners/DefaultContextListener.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/listeners/DefaultIntentListener.ts 100% 87.5% 100% 100%
packages/fdc3-agent-proxy/src/listeners/DesktopAgentEventListener.ts 89.85% 87.5% 100% 89.85%
packages/fdc3-agent-proxy/src/listeners/EventListener.ts 3.44% 0% 0% 3.44%
packages/fdc3-agent-proxy/src/listeners/HeartbeatListener.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/listeners/PrivateChannelEventListener.ts 95.89% 83.33% 100% 95.89%
packages/fdc3-agent-proxy/src/listeners/RegisterableListener.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/listeners/UserChannelContextListener.ts 100% 100% 100% 100%
packages/fdc3-agent-proxy/src/messaging/AbstractMessaging.ts 95% 100% 75% 95%
packages/fdc3-agent-proxy/src/util/AbstractFDC3Logger.ts 83.56% 69.23% 91.66% 83.56%
packages/fdc3-agent-proxy/src/util/Logger.ts 57.14% 50% 50% 57.14%
packages/fdc3-agent-proxy/src/util/throwIfUndefined.ts 100% 100% 100% 100%
packages/fdc3-get-agent/src/Fdc3Version.ts 0% 0% 0% 0%
packages/fdc3-get-agent/src/index.ts 100% 100% 100% 100%
packages/fdc3-get-agent/src/apps/NoopAppSupport.ts 0% 100% 100% 0%
packages/fdc3-get-agent/src/messaging/MessagePortMessaging.ts 100% 100% 100% 100%
packages/fdc3-get-agent/src/messaging/message-port.ts 98.27% 81.81% 100% 98.27%
packages/fdc3-get-agent/src/sessionStorage/DesktopAgentDetails.ts 96.87% 88.23% 100% 96.87%
packages/fdc3-get-agent/src/strategies/DesktopAgentPreloadLoader.ts 100% 80.95% 100% 100%
packages/fdc3-get-agent/src/strategies/FailoverHandler.ts 100% 81.81% 100% 100%
packages/fdc3-get-agent/src/strategies/HelloHandler.ts 87.27% 83.33% 100% 87.27%
packages/fdc3-get-agent/src/strategies/IdentityValidationHandler.ts 89.58% 73.33% 100% 89.58%
packages/fdc3-get-agent/src/strategies/Loader.ts 100% 100% 100% 100%
packages/fdc3-get-agent/src/strategies/PostMessageLoader.ts 98.3% 88% 100% 98.3%
packages/fdc3-get-agent/src/strategies/Timeouts.ts 100% 100% 100% 100%
packages/fdc3-get-agent/src/strategies/getAgent.ts 100% 100% 100% 100%
packages/fdc3-get-agent/src/ui/AbstractUIComponent.ts 91.04% 91.66% 100% 91.04%
packages/fdc3-get-agent/src/ui/DefaultDesktopAgentChannelSelector.ts 100% 88.88% 100% 100%
packages/fdc3-get-agent/src/ui/DefaultDesktopAgentIntentResolver.ts 100% 90% 100% 100%
packages/fdc3-get-agent/src/ui/NullChannelSelector.ts 100% 100% 100% 100%
packages/fdc3-get-agent/src/ui/NullIntentResolver.ts 100% 100% 66.66% 100%
packages/fdc3-get-agent/src/util/Logger.ts 62.5% 100% 50% 62.5%
packages/fdc3-get-agent/src/util/Uuid.ts 100% 100% 100% 100%
packages/fdc3-standard/src/index.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/AppIdentifier.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/AppIntent.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/AppMetadata.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/Channel.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/ContextMetadata.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/DesktopAgent.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/DesktopAgentIdentifier.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/DisplayMetadata.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/Errors.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/Events.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/GetAgent.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/Icon.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/Image.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/ImplementationMetadata.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/IntentMetadata.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/IntentResolution.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/Listener.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/Methods.ts 94.2% 85.18% 100% 94.2%
packages/fdc3-standard/src/api/PrivateChannel.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/RecommendedChannels.ts 100% 100% 100% 100%
packages/fdc3-standard/src/api/Types.ts 100% 100% 100% 100%
packages/fdc3-standard/src/context/ContextType.ts 100% 100% 100% 100%
packages/fdc3-standard/src/intents/Intents.ts 100% 100% 100% 100%
packages/fdc3-standard/src/internal/contextConfiguration.ts 100% 100% 100% 100%
packages/fdc3-standard/src/internal/intentConfiguration.ts 100% 100% 100% 100%
packages/fdc3-standard/src/internal/typeHelpers.ts 100% 100% 100% 100%
packages/fdc3-standard/src/ui/ChannelSelector.ts 100% 100% 100% 100%
packages/fdc3-standard/src/ui/Connectable.ts 100% 100% 100% 100%
packages/fdc3-standard/src/ui/IntentResolver.ts 100% 100% 100% 100%
toolbox/fdc3-for-web/fdc3-web-impl/src/BasicFDC3Server.ts 100% 100% 100% 100%
toolbox/fdc3-for-web/fdc3-web-impl/src/FDC3Server.ts 100% 100% 100% 100%
toolbox/fdc3-for-web/fdc3-web-impl/src/ServerContext.ts 100% 100% 100% 100%
toolbox/fdc3-for-web/fdc3-web-impl/src/index.ts 0% 0% 0% 0%
toolbox/fdc3-for-web/fdc3-web-impl/src/directory/BasicDirectory.ts 98.64% 90% 100% 98.64%
toolbox/fdc3-for-web/fdc3-web-impl/src/directory/DirectoryInterface.ts 100% 100% 100% 100%
toolbox/fdc3-for-web/fdc3-web-impl/src/handlers/BroadcastHandler.ts 98.14% 90% 100% 98.14%
toolbox/fdc3-for-web/fdc3-web-impl/src/handlers/HeartbeatHandler.ts 92.79% 87.87% 87.5% 92.79%
toolbox/fdc3-for-web/fdc3-web-impl/src/handlers/IntentHandler.ts 96.88% 95.48% 100% 96.88%
toolbox/fdc3-for-web/fdc3-web-impl/src/handlers/OpenHandler.ts 98.29% 92.3% 100% 98.29%
toolbox/fdc3-for-web/fdc3-web-impl/src/handlers/support.ts 100% 100% 100% 100%

@kriswest kriswest changed the title Correct missing contexts Add missing contexts to ContextTypes enum and TS type Mar 17, 2026
@kriswest kriswest requested a review from a team March 17, 2026 22:20
@github-actions
Copy link
Copy Markdown

628 passed

@kriswest
Copy link
Copy Markdown
Contributor Author

628 passed

I'm pretty sure we're double counting tests somehow - I added 2 and the count went up 4

@Roaders
Copy link
Copy Markdown
Contributor

Roaders commented Mar 18, 2026

LGTM

@kriswest kriswest merged commit 87e01fd into main Mar 18, 2026
7 checks passed
@kriswest kriswest deleted the correct-missing-contexts branch March 18, 2026 08:13
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.

2 participants