ForgeLayer

GitHub Checks roadmap

GitHub Checks Production Plan

Planning only - real GitHub Check Runs are not created yet.

GitHub Check Preview exists today; real GitHub Check Runs are planned but not live.

Keep the current GitHub Check Preview stable in private beta, then design dry-run check payloads after workspace/auth/RLS boundaries and audit events are ready.

Safeguards

Required before real Check Runs

  • Explicit environment flag such as GITHUB_CHECK_RUNS_ENABLED=true before real checks can be created.
  • Workspace-level allowance before any repository can receive real Check Runs.
  • Approved repository must be selected and tied to the GitHub App installation identity.
  • Installation identity must match the workspace repository record.
  • Idempotency key should prevent duplicate Check Runs for the same review_run and commit SHA.
  • Audit event must be written before and after any real Check Run create/update attempt.
  • Kill switch must disable Check Runs immediately without redeploying risky behavior.
  • No auto-merge behavior is introduced by Check Runs.
  • Generic Platform Guidance: Human approval remains required for manual-review, blocked, failed, protected-path, and sensitive-path cases.
  • Do not expose raw diffs, raw repo rules, tokens, private keys, webhook payloads, or provider errors in Check Run output.

Current boundary

What is not happening yet

  • No GitHub Checks API calls.
  • No real GitHub Check Runs are created or updated.
  • No GitHub posting is enabled by this plan.
  • No auto-merge, live agents, autonomous workflows, billing, or production persistence.

Staged roadmap

From preview-only to controlled production checks

stage_1_preview_only

Preview-only model

current

ForgeLayer derives GitHub-style check status locally and displays it in Review Runs without calling GitHub Checks APIs.

stage_2_workspace_gated_beta

Workspace-gated beta design

planned

Design per-workspace and per-repository allowances for future real Check Runs.

stage_3_dry_run_check_payloads

Dry-run check payloads

planned

Generate the exact GitHub Check Run payload server-side while still not sending it to GitHub.

stage_4_controlled_check_runs

Controlled Check Runs

future_blocked

Create or update one ForgeLayer Check Run only for approved workspace repositories when explicitly enabled.

stage_5_production_rollout

Production rollout

future_blocked

Enable Check Runs for production workspaces with clear controls, audit logs, and rollback/kill-switch procedures.

Future permissions

Least-privilege permission plan

metadata

read

current

GitHub App installation and repository identity checks.

Metadata read is expected for GitHub App basics.

contents

read

current

Fetching repo-owned forgelayer.yml policy.

Already used for RepoBrain repo rules fetch.

pull_requests

read

current

Reading PR metadata and review context.

Write should remain future-only unless needed for controlled PR review actions.

checks

write

future

Creating or updating real GitHub Check Runs.

Do not request or rely on Checks: write until workspace gates, audit events, idempotency, and kill switch are ready.

pull_requests

write

future

Only if future PR review submission requires it.

Not required for preview-only Check Runs planning.

Mapping plan

Review status to GitHub check result

completed

success

non-blocking

completed + LOW risk + merge recommendation

completed

action_required

non-blocking

needs_manual_review or medium/high risk requiring human review

completed

failure

blocks merge

failed, blocked, hard block, unsafe high risk, or provider-safe error

queued

neutral

non-blocking

queued

in_progress

neutral

non-blocking

received or processing

completed

action_required

non-blocking

missing or incomplete report

ForgeLayer - AI Software Teams. Controlled.