Skip to content

Refactor LastCode delivery around resumable CI and artifact waits #103

Description

@lastobelus

Goal

Make LastCode delivery use a small coherent set of independent resumable Project Actions so agents do not spend turns polling passive validation, review, or artifact builds. Move comprehensive PR validation back to GitHub CI while keeping a genuinely quick local pre-push gate and preserving exact-revision guarded merge safety.

This supersedes the architecture recorded by #87 without rewriting that closed historical issue.

Measured wait burden

Candidate Occurrences/PR Polls/occurrence Polls/PR
Current heavyweight Quick CI 3.3–4.75 17–18 59–87
Local Full CI 1.25 19 23.8
Codex review and PR-state wait 3.0–3.4 5.2 15.5–17.6
Intel artifact workflow 0.25 25 6.25

Base/head drift remains an agent wake point rather than its own action. Guarded merge and push transport remain below the three-polls-per-PR threshold.

Intended steady state

  • Wait for PR waits concurrently for authoritative exact-revision GitHub CI, exact-head Codex review, unresolved threads, mergeability, and head/base drift.
  • Build Intel package dispatches and waits for one exact-tag hosted Intel artifact build, but never installs or promotes it.
  • Quick CI becomes an action only if the trimmed gate still costs at least three polling turns per PR; otherwise it remains synchronous.
  • Run Full CI is retired from ordinary PR delivery after GitHub CI becomes authoritative, while checkpoint/installable Full CI remains intact.
  • Findings, fixes, focused tests, rebases, retries, pushes, installation, promotion, and merge readiness remain agent decisions.

An empty GitHub check rollup is never interpreted by itself. Disabled/not-required CI means no hosted gate; enabled applicable ci.yml means an exact-revision run is expected. The waiter and guarded merge share one tested CI-evidence model bound to the current PR head, base, and synthetic merge SHA.

Delivery slices

1. Establish and prove hosted CI waiting

  • Fix the feat(lastcode): collapse resumable action output #97 zero-check deadlock with deterministic workflow expectation.
  • Adapt the existing ci.yml to standard GitHub runners, correct triggers and permissions, and add one stable aggregate gate over the existing parallel job graph.
  • Retain local Full CI and its merge stamp during proof.
  • Enable the existing workflow only with explicit authorization, dogfood on the implementation PR, and measure real jobs and timings.

2. Trim and measure Quick CI

  • Keep git diff --check, formatting/lint, and typechecking only if acceptably fast.
  • Leave focused tests to the implementing agent.
  • Add an exact Quick receipt/action only if remeasurement remains at least three polls/PR.

3. Cut merge authority over to GitHub

  • Require successful exact workflow/merge-SHA evidence in guarded merge.
  • Prove checkpoint-promotion ruleset behavior before requiring the aggregate context.
  • Retire the ordinary-PR Full CI action and stamp.
  • Update LastCode skills/docs and the canonical babysit skill in agent-contexts.

4. Add the Intel artifact action

  • Correlate each dispatch uniquely to one workflow run.
  • Wait resumably for success or a terminal problem.
  • Keep staging, installation, and promotion separate.

Constraints

  • Independent resumable actions; no automatic chaining.
  • Deterministic state decisions; no model classifier.
  • No setup automation, installers, migrations, repair systems, compatibility layers, or support for old LastCode versions.
  • No added complexity for one-time Project Action configuration.
  • Focused tests and dogfooding on each delivery PR.
  • Preserve checkpoint/installable safeguards throughout the PR-CI transition.

Done when

  • the steady-state Project Actions and canonical babysit skill describe one understandable loop;
  • GitHub CI and guarded merge agree on exact authoritative evidence;
  • Quick CI has measured bounded coverage and no duplicate pre-push wait;
  • Intel builds no longer consume agent polling turns;
  • all implementation PRs are babysat and guarded-merged; and
  • both project trackers are reconciled.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions