Skip to content

[feat]: introduce runtime configuration SPI #354

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jul 23, 2025
Merged

Conversation

jamieQ
Copy link
Contributor

@jamieQ jamieQ commented Jun 24, 2025

introduces the notion of a 'runtime configuration' in order to support opting into new behaviors to the Workflow runtime over time. currently this is behind an SPI, and should be considered experimental and exempt from semantic versioning standards.

@jamieQ jamieQ marked this pull request as ready for review June 24, 2025 18:48
@jamieQ jamieQ requested a review from a team as a code owner June 24, 2025 18:48
@jamieQ jamieQ force-pushed the jquadri/runtime-config branch from 51d2c6f to 6d6ea48 Compare July 22, 2025 16:04
@jamieQ jamieQ force-pushed the jquadri/runtime-config branch from 6d6ea48 to c6fdcd8 Compare July 22, 2025 16:07
/// System for managing configuration options for Workflow runtime behaviors.
/// - important: These interfaces are subject to breaking changes without corresponding semantic
/// versioning changes.
@_spi(RuntimeConfig)
Copy link
Contributor

Choose a reason for hiding this comment

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

Might just be a market pattern, but we always tend to prefix these (eg, WorkflowRuntimeConfig) to make it easier to grep for usages w/o potentially hitting same-name conflicts from other frameworks; but probably fine either way.

///
/// - Parameter configuration: The runtime configuration to use.
@MainActor
public static func bootstrap(
Copy link
Collaborator

Choose a reason for hiding this comment

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

not at all a blocker, but IMO the one-time bootstrapping requirement is overkill vs having a static var that can be changed at any time

@jamieQ jamieQ merged commit 2f5fd50 into main Jul 23, 2025
8 checks passed
@jamieQ jamieQ deleted the jquadri/runtime-config branch July 23, 2025 21: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.

4 participants