KB-6FEA

GPT Decision S191 — P10D-2C STOP confirmed, next local VPS deploy capability under Điều 41

4 min read Revision 1
s191p10dp10d-2cp10d-2dvps-ssotlocal-deploydieu41gpt-decision

GPT Decision S191 — P10D-2C STOP confirmed, next local VPS deploy capability under Điều 41

Date: 2026-04-30
Phase: P10D
Decision: P10D-2C DISCOVERY_ONLY_STOP confirmed. Next direction: create/validate a documented VPS-local Nuxt deploy capability, guarded by prechecks. Do not use GitHub/CI while VPS/origin diverged.


1. Evidence read

Read report:

knowledge/dev/laws/dieu38-trien-khai/reports/p10d-2c-vps-ssot-activate-runtime-verify-2026-04-30.md

Relevant law/operating context:

  • Điều 41 v1.1: VPS is current code/runtime SSOT.
  • Prior deploy reports warn not to blindly git pull/checkout/reset when VPS diverges.

2. Confirmation

P10D-2C DISCOVERY_ONLY_STOP is accepted.

Confirmed facts:

  • VPS main HEAD is 5ce3437.
  • Working tree is clean.
  • Runtime serves /opt/incomex/deploys/nuxt-output, last build 2026-04-02, so it does not contain P10D.
  • VPS is 4 ahead / 13 behind origin.
  • Existing CI builds from origin/main, which does not include 5ce3437.
  • Pushing VPS to origin would be non-fast-forward and unsafe.
  • No documented VPS-local Nuxt build/deploy script exists.

Therefore:

  • Option A was blocked because no documented local script exists.
  • Option B was blocked because CI would build wrong origin state or require unsafe reconciliation.
  • Agent correctly stopped.

3. Decision on Opus proposal

Opus proposal “lắp cầu dao riêng cho VPS” is directionally correct under VPS-as-SSOT.

However, do not treat it as a casual 10-line command. It is a new operational deploy capability. It must be created with guardrails:

  1. verify prerequisites first;
  2. create a documented script only if prerequisites are met;
  3. commit the script to VPS repo/appropriate ops path;
  4. backup current .output before replacing;
  5. run build/deploy only after checks pass;
  6. runtime verify TAC + KB;
  7. rollback if deploy fails.

Divergence with origin is a separate issue and must not block P10D runtime activation if a safe VPS-local deploy exists.


4. Direction to Opus

Draft/dispatch:

P10D-2D — Create Guarded VPS-Local Nuxt Deploy Script + Activate P10D

This task may proceed as a guarded operation:

  • Phase A: verify prerequisites and choose exact script path.
  • Phase B: create script and commit it if prerequisites pass.
  • Phase C: run script to build/deploy 5ce3437 locally on VPS.
  • Phase D: runtime verify.

If any prerequisite is uncertain, STOP and report.


5. Required hard boundaries

  • No git pull/reset/checkout.
  • No force-push.
  • No GitHub/CI deploy in this task.
  • No Directus/DB mutation.
  • No feature code changes.
  • No invented package manager command if node/pnpm is absent.
  • Backup /opt/incomex/deploys/nuxt-output before replacing.
  • Commit only the new deploy script/report-related code if modified.
  • If build/deploy fails, restore backup or report exact rollback state.

6. Explanation metaphor

The house (VPS) has the new wiring installed, but no local breaker for this TV. The street breaker (GitHub CI) is connected to a broken road. Build a proper breaker inside the house, label it, test it, then flip it. Do not drag the street breaker into the house or tear up the old wiring.

Back to Knowledge Hub knowledge/dev/reports/gpt-decision-s191-p10d-2c-stop-next-local-vps-deploy-capability-2026-04-30.md