Skip to content

fix(operations): make hourly scheduler activation observable - #222

Closed
seonghobae wants to merge 16 commits into
mainfrom
fix/hourly-scheduler-activation-evidence
Closed

fix(operations): make hourly scheduler activation observable#222
seonghobae wants to merge 16 commits into
mainfrom
fix/hourly-scheduler-activation-evidence

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

Makes the repository-owned hourly commercial-readiness schedule observable without weakening its fail-closed Maintainer App write boundary or publishing credential-configuration state. The workflow gains one always-running read-only activation preflight; the credential-bearing maintenance lane remains gated and separate.

RCA and selected remedy

Observed scheduled run 31587463951 contained only a skipped commercial-readiness-maintenance job with zero executed steps, so the schedule could not retain evidence or distinguish disabled/unavailable configuration from a control-plane failure. The repository variables endpoint was not observable to the available integration; no hidden cause was invented.

Blind retry, immediate activation, removing the gate, a second hourly workflow, GITHUB_TOKEN write fallback, and repair/self-modifying workflows were rejected. The selected design evaluates prerequisites in an always-running contents: read preflight, retains configuration-opaque public evidence, and permits the existing maintenance job to start only when the preflight emits write_ready=true.

A later RED contract removed per-prerequisite booleans and credential-specific missing reasons from public artifacts/step summaries. Current evidence exposes only bounded outcome classes such as EXTERNAL_GATE_REMAINS, SAFETY_OR_POLICY_BLOCKER, or NO_ACTION_NEEDED; it does not disclose whether a specific client ID, private key, variable, or reviewer login is configured.

Current exact source

Current head f653484ac295e0ff05fad55d2863a7a4bb46d317 is a non-forced refresh preserving OpenAPI-integrated protected main 18cac8dcab31dd53048d5d14ad01673b5b77d141 plus exactly six reviewed paths:

  • .github/workflows/hourly-commercial-readiness.yml;
  • CHANGELOG.md;
  • docs/doctoring/hourly-scheduler-activation-feasibility.md;
  • docs/hourly-commercial-readiness-loop.md;
  • test/hourly-commercial-readiness-activation.test.ts;
  • test/workflow-readiness.test.ts.

The PR is zero commits behind the observed protected base. Current formal reviews and inline review threads are both zero.

Exact-head verification state

For unchanged head f653484ac295e0ff05fad55d2863a7a4bb46d317:

  • application ci 31596608254: queued/non-passing;
  • reviewer-ci 31596608345: queued/non-passing;
  • protected-base eligible central Security Scan 31596608273: queued/non-passing.

Keep Draft until applicable exact-head gates are terminal-success and current findings remain clean. No queued/predecessor/status/model evidence is promoted, and the clean head is not churned merely to retrigger infrastructure.

Authority boundary

The activation artifact is diagnostic evidence only. NO_ACTION_NEEDED means solely that the credential-bearing governance lane may evaluate its existing controls. It is not review approval, merge authority, release/deployment acceptance, licensing/IP authority, production KPI evidence, or acquisition readiness.

Related: #96, #80, #27, #29

@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@seonghobae, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 33 minutes

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: e7f2ad5d-5af0-49be-b54c-a73c716ef218

📥 Commits

Reviewing files that changed from the base of the PR and between 9c978a4 and 4422dcd.

📒 Files selected for processing (6)
  • .github/workflows/hourly-commercial-readiness.yml
  • CHANGELOG.md
  • docs/doctoring/hourly-scheduler-activation-feasibility.md
  • docs/hourly-commercial-readiness-loop.md
  • test/hourly-commercial-readiness-activation.test.ts
  • test/workflow-readiness.test.ts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@seonghobae
seonghobae marked this pull request as ready for review August 12, 2026 13:08
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.

1 participant