r236 Deploy Report

**Date**: 2026-09-02 18:51 BST

**Operator**: G (via Mavis v3)

**Project**: vibecoder-standalone (avidtech6/vibecoder-standalone)

**Sandbox**: vibecoder236.freshvibeapps.com

**Job ID**: djmtkc13iecg2c

Result

**SUCCESS** — r236 deployed to vibecoder236.freshvibeapps.com

Composition

- 20 files in `src/host/editor/vibechat/`

- `VibeChatUnified.tsx`, `VibeChatGlobal.ts`, components, renderer, store, responder, types

- 2 files in `src/host/chrome/mounts/` (vanilla JS bridge + 21 unit tests)

- `R235bUnifiedBridge` React component with `React.createPortal`

Bundle Stats

Live URLs

Markers Verified in Live Bundle

```

r235a-2026-09-02 (VibeChat schema)

r235b-2026-09-02 (mount version)

data-r235b-r235a-slot (R235bUnifiedBridge selector)

data-r235a-vibechat-unified

MOBILE_BREAKPOINT=600 (ni=600 minified)

fvcms-vibechat (PM2 panel id)

fv:operating-mode-change (Pro Mode Lock listener)

https://freshvibeapps.com/vibechat-unified/v1 (schema URL)

```

File Changes (24 total)

Path Fix

r235b's `host-boot.js` was built on r235a (which had chrome at `src/chrome/freshvibe-cms/`). Since r233 baseline has the chrome at `src/cms/`, I updated 12 import paths:

Feature Flag (locked 2026-09-02)

Deploy Path

1. **Step 1**: Built dist locally with `npx vite build` → bundle `main-BraxA8gE.js` (752K)

2. **Step 2**: Created `dist/` subdir tarball (`r236-dist-v2.tar.gz`, 1.42MB)

3. **Step 3**: Uploaded to `appx.freshvibeapps.com` → ID `ZBcePnH-`

4. **Step 4**: POST `/api/mavis/deploy` with:

- `dest: vibecoder236`

- `repo_url: https://github.com/avidtech6/vibecoder-standalone.git`

- `ref: main`

- `build_cmd: curl -sSL https://appx.freshvibeapps.com/a/ZBcePnH-/r236-dist-v2.tar.gz | tar -xz && ls dist/ | head && echo DIST_DONE`

- `dist_subdir: dist`

- `dry_run: false`

5. **Step 5**: Job `djmtkc13iecg2c` succeeded in 2.6 seconds

6. **Step 6**: Verified live bundle MD5 matches disk exactly

Anomalies

1. **First 3 deploy attempts failed** with the same error: "fatal: repository '...tar.gz/' not found". The deploy API tried to `git clone --depth 1 --branch "tarball"` the appx tarball URL. This pattern only works with GitHub repo URLs that have a build_cmd to fetch the tarball.

- **Fix**: Use GitHub repo URL as `repo_url` and put the tarball fetch in `build_cmd` (matches r233's pattern from `djmtj6wctrs8yg`).

2. **First tarball (r236-dist-slim.tar.gz)** had no `dist/` subdir inside (used `tar -C dist .`), so the deploy handler couldn't find the dist source.

- **Fix**: Re-packaged with explicit `dist/` parent dir.

3. **TLS errors** when trying to push the local branch `feat/id9-r236-clean-baseline` to GitHub — `fatal: unable to access 'https://github.com/...': server certificate verification failed`. Transient.

4. **DNS cache overflow 503** on first fetch of vibecoder236.freshvibeapps.com — intermittent, resolved within 5 seconds.

Branch State

Visual Comparison

Compare against the other deployed sandboxes:

Identifiers

Next Steps (awaiting operator)