[Fix #1174] Event source auto-generated by runtime implementations#1175
Conversation
There was a problem hiding this comment.
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
EventSourcebehavior inschema/workflow.yamlto note runtime generation when omitted. - Update the DSL reference event properties table to describe runtime-generated
sourceand 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.
… 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>
a47d581 to
f54e54f
Compare
There was a problem hiding this comment.
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
sourceeven 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.* |
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
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.* |
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
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
sourcewhen 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.* |
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>
There was a problem hiding this comment.
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
sourceproperty 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.* |
Summary
sourceat emission time (e.g., from the workflow identity/{namespace}/{name}/{version}) when not explicitly providedidauto-generation pattern from [Fix #1167] Clarify event id is auto-generated by runtime #1168Fixes #1174
Test plan
dsl-reference.mdevent properties table reflects auto-generation and override behaviorschema/workflow.yamlEventSource description is updated