Skip to content

feature/temporal-renaming-finish#772

Merged
lchoquel merged 11 commits intofeature/Temporal-renamefrom
feature/temporal-renaming-finish
Mar 23, 2026
Merged

feature/temporal-renaming-finish#772
lchoquel merged 11 commits intofeature/Temporal-renamefrom
feature/temporal-renaming-finish

Conversation

@thomashebrard
Copy link
Member

@thomashebrard thomashebrard commented Mar 20, 2026

Summary by cubic

Finishes the Deep Flow → Temporal rename and stabilizes distributed execution. Adds a worker CLI that preloads the base library, automatic router switching, and a portable Temporal dev workflow with docs and sane defaults.

  • New Features

    • Worker preloads the base library from PIPELEXPATH and forces Temporal on; entrypoint: python -m pipelex.temporal.worker_cli. Makefile: temporal-server|ts, temporal-worker|tw, temporal-run|trun, temporal-run-dry|trund.
    • Auto router switching: hub uses temporal_workflow_utils.is_in_temporal_workflow() to pick PipeRouterTop (outside) or PipeRouterChild (inside). Controllers now call get_pipe_router().run(...) with PipeJobFactory.
    • Docs: new “Pipe Routing & Execution” page in nav. Added WIP design notes on LibraryContext and payload codec strategy under wip/. CHANGELOG updated.
    • .claude/skills/temporal-diagnose: portable paths, references, and steps to reproduce/fix worker library loading.
  • Migration

    • Config: [deep_flow][temporal]; default task queue temporal_task_queue. New [temporal] blocks in .pipelex/pipelex.toml, pipelex/kit/configs/pipelex.toml, and pipelex/pipelex.toml. Use get_config().temporal.
    • Imports/types: deep_flow_hubtemporal_hub; DeepFlow*Temporal* (exceptions, log formatter, registry/test models, pytest option). Temporal logging reads from temporal.temporal_config.
    • API: Pipelex.make/setup accept temporal_enabled; worker CLI sets temporal.is_enabled = true and auto-loads the base library.

Written for commit 94f11d8. Summary will update on new commits.

Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

No issues found across 50 files

Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

1 issue found across 3 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name=".pipelex/pipelex.toml">

<violation number="1" location=".pipelex/pipelex.toml:232">
P1: Missing required `selected_server` field in Temporal configuration after rename</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

thomashebrard and others added 3 commits March 20, 2026 19:10
- Add worker CLI commands and temporal workflow utilities
- Update temporal hub, manager, and task manager for stability
- Add pipe routing and execution documentation
- Add temporal-diagnose skill for debugging worker issues
- Update Makefile with temporal-related targets
- Clean up removed temporal-problm.md (moved to skill references)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

7 issues found across 18 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name=".claude/skills/temporal-diagnose/SKILL.md">

<violation number="1" location=".claude/skills/temporal-diagnose/SKILL.md:76">
P2: Worker startup instructions use a hardcoded local absolute path, which makes the documented commands fail on other machines.</violation>

<violation number="2" location=".claude/skills/temporal-diagnose/SKILL.md:139">
P2: The submitter command is documented as background execution but is written as a foreground command.</violation>
</file>

<file name="mkdocs.yml">

<violation number="1" location="mkdocs.yml:490">
P3: Add this new Under-the-Hood page to the `llmstxt-md` `sections` list as well; right now it is only in `nav`, creating inconsistent documentation coverage.</violation>
</file>

<file name="docs/under-the-hood/pipe-routing-and-execution.md">

<violation number="1" location="docs/under-the-hood/pipe-routing-and-execution.md:227">
P3: The extract activity name is incorrect in the table; use the actual registered function `act_extract_gen_extract_pages`.

(Based on your team's feedback about cross-checking documentation statements against repository code.) [FEEDBACK_USED]</violation>

<violation number="2" location="docs/under-the-hood/pipe-routing-and-execution.md:228">
P3: The documented workflow name should be `wf_make_image`, not `wf_make_images`, to match the workflow registered in code.

(Based on your team's feedback about cross-checking documentation statements against repository code.) [FEEDBACK_USED]</violation>
</file>

<file name="Makefile">

<violation number="1" location="Makefile:984">
P2: Add `env` as a prerequisite to the new Temporal targets so they don't fail on fresh checkouts without `.venv`.</violation>
</file>

<file name="pipelex/temporal/worker_cli.py">

<violation number="1" location="pipelex/temporal/worker_cli.py:52">
P1: This bypasses project-specific system initialization by always calling the base `Pipelex.make()`, which can break worker setup for projects that define their own `<Project>System` bootstrap.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

5 issues found across 4 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="docs/wip/C-temporal-payload-codec-strategy.md">

<violation number="1" location="docs/wip/C-temporal-payload-codec-strategy.md:5">
P3: This Related section uses relative links to non-existent files; readers cannot navigate to the referenced design docs.</violation>

<violation number="2" location="docs/wip/C-temporal-payload-codec-strategy.md:152">
P3: This inline v2 reference links to a missing file path; update it to the actual `A-...` filename.</violation>
</file>

<file name="docs/wip/B-library-as-execution-context.md">

<violation number="1" location="docs/wip/B-library-as-execution-context.md:5">
P3: This related-doc link points to a file that does not exist in the repository, so readers will hit a broken reference.

(Based on your team's feedback about resolving documentation links relative to the Markdown file location.) [FEEDBACK_USED]</violation>
</file>

<file name="docs/wip/D-master-plan-distributed-execution-v2.md">

<violation number="1" location="docs/wip/D-master-plan-distributed-execution-v2.md:94">
P2: This line describes Temporal replay incorrectly: activities are not re-executed because of workflow replay. Use retry/idempotency wording instead to avoid incorrect implementation assumptions.</violation>
</file>

<file name="docs/wip/A-temporal-library-fix-proposals-v2.md">

<violation number="1" location="docs/wip/A-temporal-library-fix-proposals-v2.md:141">
P2: `LibraryContext` is specified inconsistently in two sections, creating two incompatible payload contracts (`dict`/`dependency_metadata` vs `list`/`resolved_dependencies`). Keep one schema to avoid implementation drift.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Remove hardcoded absolute paths in temporal-diagnose skill, add env
dependency to Makefile temporal targets, fix workflow/activity names in
docs, and add pipe routing page to mkdocs nav.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

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

1 issue found across 4 files (changes from recent commits).

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name=".claude/skills/temporal-diagnose/SKILL.md">

<violation number="1" location=".claude/skills/temporal-diagnose/SKILL.md:143">
P2: Step 3 now runs the submitter in tmux, which conflicts with this file’s documented "submitter runs inline" model and makes the diagnose instructions inconsistent.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

@lchoquel lchoquel merged commit 3d4e08c into feature/Temporal-rename Mar 23, 2026
25 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Mar 23, 2026
@lchoquel lchoquel deleted the feature/temporal-renaming-finish branch March 23, 2026 14:23
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants