Skip to content

[Fix #1174] Event source auto-generated by runtime implementations#1175

Open
ricardozanini wants to merge 4 commits into
open-workflow-specification:mainfrom
ricardozanini:fix/1174-event-source-auto-generated
Open

[Fix #1174] Event source auto-generated by runtime implementations#1175
ricardozanini wants to merge 4 commits into
open-workflow-specification:mainfrom
ricardozanini:fix/1174-event-source-auto-generated

Conversation

@ricardozanini

@ricardozanini ricardozanini commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Clarify that runtime implementations generate the event source at emission time (e.g., from the workflow identity /{namespace}/{name}/{version}) when not explicitly provided
  • When the workflow author supplies a value, it takes precedence over the auto-generated one
  • Consistent with the id auto-generation pattern from [Fix #1167] Clarify event id is auto-generated by runtime #1168

Fixes #1174

Test plan

  • Verify dsl-reference.md event properties table reflects auto-generation and override behavior
  • Verify schema/workflow.yaml EventSource description is updated

Copilot AI review requested due to automatic review settings July 24, 2026 16:54
@ricardozanini
ricardozanini requested a review from cdavernas as a code owner July 24, 2026 16:54

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates the specification documentation to clarify that emitted event source values can be auto-generated by runtime implementations at emission time (typically derived from the workflow identity) unless the workflow author explicitly provides one.

Changes:

  • Clarify EventSource behavior in schema/workflow.yaml to note runtime generation when omitted.
  • Update the DSL reference event properties table to describe runtime-generated source and author override semantics.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
schema/workflow.yaml Updates EventSource description to document runtime auto-generation when not provided.
dsl-reference.md Updates the event properties table to clarify runtime-generated source and override behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread dsl-reference.md
… runtime implementations

Clarify that runtime implementations generate the event source at
emission time (e.g., from the workflow identity /{namespace}/{name}/{version})
when not explicitly provided. When the workflow author supplies a value,
it takes precedence over the auto-generated one.

Signed-off-by: Ricardo Zanini <ricardozanini@gmail.com>
Copilot AI review requested due to automatic review settings July 24, 2026 16:57
@ricardozanini
ricardozanini force-pushed the fix/1174-event-source-auto-generated branch from a47d581 to f54e54f Compare July 24, 2026 16:57

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (1)

dsl-reference.md:2141

  • The note still starts with “Required when emitting…”, which can be read as requiring workflow authors to provide source even though the table marks it as not required and the text says runtimes generate it when omitted. Rephrasing to “If not explicitly provided…” would make the override/default behavior clearer.
| source | `string` | `no` | An URI formatted string, or [runtime expression](dsl.md#runtime-expressions), that identifies the context in which an event happened. `source` + `id` is unique for each distinct event.<br>*Required when emitting an event using `emit.event.with`, generated by runtime implementations (e.g., from the workflow identity `/{namespace}/{name}/{version}`) at emission time. When explicitly provided by the workflow author, the supplied value takes precedence over the auto-generated one.* |

Comment thread schema/workflow.yaml Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings July 24, 2026 18:35

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (1)

dsl-reference.md:2141

  • Grammar/wording: "An URI formatted string" should be "A URI-formatted string" (also used elsewhere in this table), and the hyphenation reads more cleanly.
| source | `string` | `no` | An URI formatted string, or [runtime expression](dsl.md#runtime-expressions), that identifies the context in which an event happened. `source` + `id` is unique for each distinct event.<br>*Required when emitting an event using `emit.event.with`, generated by runtime implementations (e.g., from the workflow identity `/{namespace}/{name}/{version}`) at emission time. When explicitly provided by the workflow author, the supplied value takes precedence over the auto-generated one.* |

Comment thread schema/workflow.yaml Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings July 24, 2026 18:38

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (1)

dsl-reference.md:2141

  • This note is internally contradictory: it starts with “Required when emitting …” but then says runtimes generate source when it’s not explicitly provided. Rephrasing to “when emitting … if not provided, generated …” would be clearer and consistent with the auto-generation behavior being documented.
| source | `string` | `no` | An URI formatted string, or [runtime expression](dsl.md#runtime-expressions), that identifies the context in which an event happened. `source` + `id` is unique for each distinct event.<br>*Required when emitting an event using `emit.event.with`, generated by runtime implementations (e.g., from the workflow identity `/{namespace}/{name}/{version}`) at emission time. When explicitly provided by the workflow author, the supplied value takes precedence over the auto-generated one.* |

Comment thread schema/workflow.yaml
The source property should not be required when emitting events.
Runtime implementations auto-generate it (e.g., from the workflow
identity /{namespace}/{name}/{version}) at emission time. When
explicitly provided, the supplied value takes precedence.

Fixes open-workflow-specification/sdk-typescript#298

Signed-off-by: Ricardo Zanini <ricardozanini@gmail.com>
Copilot AI review requested due to automatic review settings July 24, 2026 18:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

dsl-reference.md:2141

  • The source property description is a bit contradictory/unclear: it says "Required when emitting" but also says runtimes generate it when not explicitly provided. Also, "An URI formatted" is grammatically incorrect.

Consider rephrasing this note to make it clear that source is optional for authors (the runtime supplies a default when omitted), and fix the URI wording.

| source | `string` | `no` | An URI formatted string, or [runtime expression](dsl.md#runtime-expressions), that identifies the context in which an event happened. `source` + `id` is unique for each distinct event.<br>*Required when emitting an event using `emit.event.with`, generated by runtime implementations (e.g., from the workflow identity `/{namespace}/{name}/{version}`) at emission time. When explicitly provided by the workflow author, the supplied value takes precedence over the auto-generated one.* |

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.

Event source should be auto-generated by runtime implementations

2 participants