Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/reusable-10-ci-python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -840,8 +840,9 @@ jobs:
continue-on-error: true
run: |
set -euo pipefail
# Use extend-exclude to add to ruff's defaults (which include .venv)
# Exclude .workflows-lib since it's synced from source repo with different ruff config
ruff check --output-format github --exclude .workflows-lib .
ruff check --output-format github --extend-exclude .workflows-lib .

- name: Finalize lint
id: finalize
Expand Down
17 changes: 17 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,23 @@ These get **synced** to consumer repos via `maint-68-sync-consumer-repos.yml`:

**Before syncing**, ensure files pass consumer-repo lint rules (ruff with UP, SIM).

### ⚠️ IMPORTANT: After Syncing, Use the Merge Workflow

**ALWAYS** use `Merge Sync PRs` workflow (maint-71-merge-sync-prs.yml) to:
- Auto-merge sync PRs that pass CI checks
- Close stale/duplicate sync PRs
- Report which repos have failing checks

```bash
# After triggering a sync, run this to merge the resulting PRs:
gh workflow run "Merge Sync PRs" --repo stranske/Workflows --ref main

# Check status:
gh run list --workflow="maint-71-merge-sync-prs.yml" --limit 1
```

**DO NOT** manually merge sync PRs with `gh pr merge --admin` - use the workflow.

## Keepalive System

The keepalive loop keeps Codex working on a PR until all tasks are complete:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -373,14 +373,14 @@ jobs:
let structuralAnalysis = '';
if (structuralProblems.length > 0) {
structuralAnalysis =
'### \u26a0\ufe0f Issues Detected in Original Issue Structure\\n\\n';
'### ⚠️ Issues Detected in Original Issue Structure\n\n';
for (const prob of structuralProblems) {
structuralAnalysis += '**Problem:** ' + prob.problem + '\\n';
structuralAnalysis += '- **Cause:** ' + prob.cause + '\\n';
structuralAnalysis += '- **Fix:** ' + prob.fix + '\\n';
structuralAnalysis += '**Problem:** ' + prob.problem + '\n';
structuralAnalysis += '- **Cause:** ' + prob.cause + '\n';
structuralAnalysis += '- **Fix:** ' + prob.fix + '\n';
if (prob.examples && prob.examples.length > 0) {
structuralAnalysis +=
'- **Examples:** `' + prob.examples.join('`, `') + '`\\n';
'- **Examples:** `' + prob.examples.join('`, `') + '`\n';
}
structuralAnalysis += '\n';
}
Expand Down Expand Up @@ -525,9 +525,9 @@ jobs:
labels: ['follow-up', 'agents:formatted']
});

core.info('Created issue #' + issue.data.number);
core.setOutput('issue_number', issue.data.number);
core.setOutput('issue_url', issue.data.html_url);
core.info('Created issue #' + issue.number);
core.setOutput('issue_number', issue.number);
core.setOutput('issue_url', issue.html_url);

- name: Comment on original PR
if: steps.check-merged.outputs.merged == 'true'
Expand Down
Loading