Skip to content

Constellos Review System Improvements #67

Description

@sylvansys

Branch: 67-feature/review-recent-issues-and-prs-here-and-in
Plan file: /home/ben/.claude/plans/floofy-doodling-falcon.md


Constellos Review System Improvements

Objective

Improve the Constellos review system so that:

  1. constellos[bot] posts review comments (not github-actions[bot])
  2. Check names are prettier ("Code Quality" not "review (code-quality)")
  3. Hide the "config" job from checks
  4. Fix double "CI / CI /" naming in nodes-md

Current State (PR #223 validated)

  • ✅ Webhook provisions workflow file as constellos[bot]
  • ❌ Comments posted by github-actions[bot]
  • ❌ Check names ugly: "review (code-quality)"
  • ❌ "config" job visible in checks
  • ❌ nodes-md CI shows "CI / CI / ..."

Architecture Change: Webhook Posts Comments

Current flow:

PR opened → webhook provisions workflow → workflow runs agents → workflow posts comments (github-actions[bot])

New flow:

PR opened → webhook provisions workflow → workflow runs agents (check runs only) → workflow_run.completed → webhook posts comment (constellos[bot])

Implementation Plan

1. Update Workflow Template (github-agents)

File: apps/github-webhook/src/templates/constellos-review.ts (in constellos/constellos)

Changes:

  • Remove "Post comment" steps from workflow
  • Rename review job to agents with prettier matrix names
  • Merge config job into agents job (use composite action or inline)
  • Update job name to "Constellos Review Agents"

2. Add workflow_run Handler (constellos/constellos)

File: apps/github-webhook/src/handlers/workflow-run.ts (new)

  • Subscribe to workflow_run.completed event in GitHub App
  • When "Constellos Review" workflow completes:
    • Fetch check run results via GitHub API
    • Aggregate results into a summary
    • Post comment as constellos[bot] using installation token

File: apps/github-webhook/src/index.ts

  • Add routing for workflow_run event

3. Fix nodes-md CI Naming (constellos/nodes-md)

File: .github/workflows/ci.yml

  • Change workflow name or job names to avoid "CI / CI /" duplication

Files to Modify

constellos/constellos

  • apps/github-webhook/src/templates/constellos-review.ts - workflow template
  • apps/github-webhook/src/index.ts - event routing
  • apps/github-webhook/src/handlers/workflow-run.ts - new handler

constellos/nodes-md

  • .github/workflows/ci.yml - fix naming

constellos/github-agents

  • .github/templates/constellos-review.yml - sync with template changes

Verification

  1. Create test PR in nodes-md
  2. Verify workflow auto-provisioned
  3. Verify check names are pretty (e.g., "Code Quality", "Requirements")
  4. Verify comment posted by constellos[bot]
  5. Verify no "config" job in checks
  6. Verify CI shows "CI / Static Analysis / ..." not "CI / CI / ..."

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions