KB-7F4F

6000x — Nuxt deploy PR package (author-mode, patch verified)

4 min read Revision 1
iu-core6000xnuxtdeploy-packageweb-testauthor-modegit-apply-cleanexternal-blocker

6000x — Nuxt deploy PR package (author-mode)

Repo commit: 4fb380e.

Verdict: DONE_WITH_EXTERNAL_BLOCKER — package is PR-ready and verified to apply cleanly against Huyen1974/web-test.git HEAD; deploy authority not granted to this macro.

Target repo (read-only verification this macro)

  • Repo: https://github.com/Huyen1974/web-test.git
  • Branch: main
  • HEAD at clone time: 72804d18dd62ed73158ec7e551841ea72fce2eac (S176-FIX: whitelist-first routing for /.well-known/* …)
  • Web app root: web/ (Nuxt 3, Cloud-Run / Docker target).
  • Existing useDirectus composable: web/modules/directus/runtime/composables/useDirectus.ts — generic useDirectus<Output>(options) pattern; same convention used in web/composables/useDirectusTable.ts. No adapter needed.

Package layout (in iu-cutter repo)

ui-package/nuxt-three-axis-factory/deploy/web-test/
├── web/
│   ├── composables/useIuThreeAxis.ts        ← byte-identical to factory output
│   ├── pages/admin/iu-three-axis.vue        ← byte-identical to factory output
│   └── nuxt.config.patch                    ← clean git apply patch (17 lines)
└── handover/
    ├── README.md
    ├── PR_BODY.md
    └── runbook.md

Patch verification (this macro)

cd /tmp/web-test
git apply --check /tmp/clean_patch.patch
PATCH_APPLIES_CLEAN

git apply --check against web-test@72804d1 succeeded. The hunk targets web/nuxt.config.ts lines 123-128 inserting iuCoreDirectusCollection into runtimeConfig.public with env-first fallback 'iu_three_axis_envelope'.

Boundary properties (constitutional)

  • Reads only via useDirectus<> + @directus/sdk.
  • Goes through Directus collection iu_three_axis_envelope (managed table from migration 022, exposed with READ permission id=1485 — live verified).
  • No business logic; every field name is injected by the factory descriptor at generation time.
  • Env-driven collection name: IU_CORE_DIRECTUS_COLLECTION with golden fallback. No hardcode.

What the PR adds in the target repo

  • web/composables/useIuThreeAxis.ts (new) — factory output, schema-agnostic.
  • web/pages/admin/iu-three-axis.vue (new) — factory output, 3-axis tabs.
  • web/nuxt.config.ts (modified) — +6 lines in runtimeConfig.public.

No other file touched. No existing route changed.

Exact blocker

  • Push access to Huyen1974/web-test.git is owned by the frontend/DevOps team. This macro had read-only access only.
  • The image pipeline producing nuxt-ssr-local:d28gmr-1778407456 (currently running as incomex-nuxt) is owned by the same team.

Apply procedure (owner)

git clone https://github.com/Huyen1974/web-test.git
cd web-test
git checkout -b feat/iu-core-three-axis-envelope

cp <iu-cutter>/ui-package/nuxt-three-axis-factory/deploy/web-test/web/composables/useIuThreeAxis.ts web/composables/useIuThreeAxis.ts
cp <iu-cutter>/ui-package/nuxt-three-axis-factory/deploy/web-test/web/pages/admin/iu-three-axis.vue web/pages/admin/iu-three-axis.vue
git apply <iu-cutter>/ui-package/nuxt-three-axis-factory/deploy/web-test/web/nuxt.config.patch

cd web
pnpm install --frozen-lockfile
pnpm typecheck
pnpm build

git push -u origin feat/iu-core-three-axis-envelope
# Open PR using handover/PR_BODY.md

Smoke (post-deploy)

curl -sI https://<host>/admin/iu-three-axis | head -1     # 200 (auth-gated)
scripts/iu_core_healthcheck.sh                            # 7/7 GREEN

Reversibility

git revert <merge-sha> on main, repush. Frontend-only addition — PG / Directus / Qdrant state is unaffected.

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-6000x-live-deploy-ops-retention-real-pilot-open-goal/03-nuxt-deploy-pr-package.md