Skip to content

docs(workflow): pin run identity in the domain glossary - #3898

Merged
kojiwakayama merged 2 commits into
mainfrom
docs/workflow-run-identity-glossary
Aug 20, 2026
Merged

kojiwakayama merged 2 commits into
mainfrom
docs/workflow-run-identity-glossary

Conversation

@kwakayama

Copy link
Copy Markdown
Contributor

"Run" is ambiguous in the code itself, and the ambiguity has already cost work.

A run is one backend-persisted execution record, identified by the id WorkflowHandle.runId returns. But parallel, branch and subWorkflow each construct a second record of the same shape — typed WorkflowRun, with a generated id — while executing their children. Those ids are never persisted and cannot be looked up by a caller.

This is why the OpenTelemetry work in #3888 threads a root run id through the executor rather than reading run.id locally: a span correlated on a synthetic id is a span nobody can find. Pinning the term so the next person does not have to rediscover it from the executor internals.

Glossary only — no behaviour change.

"Run" is ambiguous in the code itself. Composite and sub-workflow nodes build
records typed WorkflowRun with generated ids that are never persisted, which
is why observability correlates on the root id rather than the local one.
@coderabbitai

coderabbitai Bot commented Aug 20, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

@kojiwakayama, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 25 minutes

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

Wait for the limit to reset, then comment @coderabbitai review or push new commits to the PR.

An organization admin can change what happens after included review limits in Billing.

How do review limits work?

CodeRabbit enforces per-developer PR review limits within each organization.

For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 83ca25be-60b9-4351-b319-56eacc3c2ab9

📥 Commits

Reviewing files that changed from the base of the PR and between 3249374 and bd3c7b8.

📒 Files selected for processing (1)
  • CONTEXT.md

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown

📦 Client bundle boundary

Entrypoint Modules Source size Server leaks
src/index.client.ts 326 1949 KiB ✅ 0

A server module in a client graph aborts hydration in the browser. New leaks fail CI; known leaks are tracked in scripts/lint/client-bundle-baseline.json to burn down.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1bfae8bf76

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread CONTEXT.md Outdated
@kwakayama
kwakayama added this pull request to the merge queue Aug 20, 2026
@kojiwakayama
kojiwakayama removed this pull request from the merge queue due to a manual request Aug 20, 2026
The glossary previously described only part of the synthetic workflow-run surface and treated all composite child records as generated. Map and loop also create local WorkflowRun-shaped records, and only subWorkflow adds a random component, so the documentation now distinguishes those identities before readers instrument the wrong run ID.

Constraint: PR review thread identified missing map and loop records and inaccurate generated-ID language.

Rejected: Keep the shorter glossary wording | it omitted composite records that affect instrumentation and lookup semantics.

Confidence: high

Scope-risk: narrow

Directive: Keep WorkflowHandle.runId as the only externally addressable workflow run identity unless the backend persists child run records.

Tested: deno fmt --check CONTEXT.md; git diff --check; scanned CONTEXT.md for em/en dash characters.

Not-tested: Runtime workflow execution, documentation-only correction.
@kojiwakayama
kojiwakayama added this pull request to the merge queue Aug 20, 2026
Merged via the queue into main with commit 7c1818c Aug 20, 2026
34 checks passed
@kojiwakayama
kojiwakayama deleted the docs/workflow-run-identity-glossary branch August 20, 2026 23:30
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