Skip to content

chore: add job to publish python package in release workflow#5

Merged
stdrc merged 1 commit into
mainfrom
rc/publish-python-workflow
Oct 22, 2025
Merged

chore: add job to publish python package in release workflow#5
stdrc merged 1 commit into
mainfrom
rc/publish-python-workflow

Conversation

@stdrc
Copy link
Copy Markdown
Contributor

@stdrc stdrc commented Oct 22, 2025

No description provided.

Signed-off-by: Richard Chien <stdrc@outlook.com>
@stdrc stdrc requested a review from Copilot October 22, 2025 10:16
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds a new job to the GitHub Actions release workflow to automatically publish Python packages to PyPI when a release is created.

Key Changes

  • Adds a publish-python job that builds and publishes Python distributions to PyPI
  • Configures Python 3.13 and the uv build tool for package creation
  • Uses PyPI API token authentication for secure package publishing

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

publish-python:
name: Publish Python package
Copy link

Copilot AI Oct 22, 2025

Choose a reason for hiding this comment

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

The publish-python job lacks a needs clause to specify dependencies on other jobs. If this job should only run after successful completion of previous jobs (like building or testing), add a needs field to ensure proper job sequencing in the release workflow.

Suggested change
name: Publish Python package
name: Publish Python package
needs: build

Copilot uses AI. Check for mistakes.
@stdrc stdrc merged commit 20978d3 into main Oct 22, 2025
1 check passed
@stdrc stdrc deleted the rc/publish-python-workflow branch October 22, 2025 10:49
stdrc added a commit that referenced this pull request Dec 26, 2025
Signed-off-by: Richard Chien <stdrc@outlook.com>
albertwyjoy-bit pushed a commit to albertwyjoy-bit/OKbot that referenced this pull request Feb 8, 2026
RealKai42 added a commit that referenced this pull request Apr 20, 2026
Addresses four real issues flagged by automated reviewers on PR #1802:

#6 (Codex P1): agent timeout_s was passed to BackgroundAgentRunner but
  never persisted on TaskSpec, so Print's wait-cap calculation always
  fell back to agent_task_timeout_s and silently ignored user-supplied
  per-agent timeouts. create_agent_task now writes the effective
  timeout onto the spec (same way bash tasks already do).

#5 (Devin critical): the pending-notification re-entry run_soul call
  was bare, unlike the protected timeout follow-up. A transient
  ChatProviderError during the internal notification turn would
  propagate to the outer handler and reclassify the user's already-
  successful command to RETRYABLE/FAILURE. Wrap in try/except; let
  RunCancelled bubble (Ctrl+C semantics) and swallow anything else,
  exiting the wait loop so the original SUCCESS exit code is preserved.

#9 (Codex P2): if the last background task transitioned to terminal
  in the race window between the has_active_tasks() snapshot and the
  deadline check, the loop took the kill + FAILURE path spuriously.
  Add a final reconcile + pending/active re-check inside the deadline
  branch so near-deadline natural completions exit via the success
  path.

#8 (Devin yellow): the finally block's manager.reconcile() could
  replace a propagating RunCancelled with a disk-IO OSError, bypassing
  the outer except RunCancelled and surfacing as "Unknown error".
  Wrap the reconcile in try/except so the cancel path is preserved.

Tests:
- test_create_agent_task_persists_timeout_s_on_spec
- test_create_agent_task_persists_default_timeout_on_spec
- test_pending_reentry_soul_failure_preserves_success_exit_code
- test_timeout_finally_reconcile_failure_preserves_run_cancelled
- test_timeout_race_natural_completion_at_deadline_exits_success
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