Skip to content

Sync pipeline: open blockers & process gaps (tracker) #75

Description

@IgorShevchik

Purpose

Single durable record of the blockers / process gaps for the nuxt/ui → b24ui per-commit live-sync, surfaced while running the manual ports (#68#72, and ongoing). Some items already have dedicated issues — linked below; this issue is the umbrella status view so the picture survives context resets.

Context: the manual per-commit cadence is proven (5 upstream commits ported as gated PRs: #68#72). These items are what stands between "manual cadence" and "trusted automation".


1. Ledger drift — ✅ being closed

.sync/nuxt-ui.json was still cursor: null, sync_enabled: false, processed: {}, with only one .sync/log/ entry, so the manual progress of #68#72 was not recorded.

Status: resolved as part of the efd7b8ec port PR — cursor set to the last ported upstream SHA, processed backfilled for #68#72, and the ledger is now maintained per port going forward (one processed entry + a .sync/log/<sha>.md per commit). No separate reconciliation PR needed.

2. Automation not live — blocked on owner action

PR #67 (Phase 1 porter workflow) is not merged: it needs the repo secret CLAUDE_CODE_OAUTH_TOKEN (owner action) plus a live trial run before we trust it. Until then every port is hand-driven.
→ tracked by PR #67.

3. Snapshot regeneration footgun — P3

A targeted vitest run -u <files> intermittently leaves the first component(s) rendering against a stale compiled theme, producing a false-green -u. Mitigation today: always run the full pnpm exec vitest run -u then verify with pnpm exec vitest run (no -u). Worth hardening (cache: false under CI, or a test:update script).
→ tracked by #74.

4. main branch protection + workflow security baseline — owner action

main protection (require PR + the ci check, include admins, CODEOWNERS) and per-workflow least-privilege permissions: / action SHA-pinning. The repo-settings part cannot be done in code and gates trusting the automated sync (Phase 3).
→ tracked by #64 (esp. §4).

5. Environment ephemerality — process note

The remote-execution container wipes the upstream (nuxt/ui) git remote and /tmp between sessions. Each resume must re-add upstream and git fetch nuxt/ui v4 before the queue can be recomputed.

Mitigation (no code fix needed): standard resume preamble —

git remote add upstream https://github.com/nuxt/ui.git 2>/dev/null
git fetch --no-tags upstream v4
# next commit to port = oldest of:  git log --reverse --oneline <cursor>..upstream/v4

where <cursor> is .sync/nuxt-ui.jsoncursor. Could be folded into a SessionStart hook later.


Priority

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions