oficina / sheets Public

Browser editing, menu activation, and column auto-fit: release review open

On branch fix/cell-editing

Browser editing and menu fixes; column auto-fit. User requested merge and deployment on 2026-09-17.

Candidate: 95ba60076977e783a47aab8284e16370764e65a9, branch fix/cell-editing.

Changes: cell editor inherits cell text formatting; Cut defers source clearing until successful atomic paste; formula editing accepts clicked/dragged references; WebKit menu focus no longer hides form buttons before activation; keyboard menu activation and resize fields work; column divider double-click and Format > Auto-fit columns fit selected columns individually; manual multi-column resizing persists all columns.

Independent source review: GPT-6 Astra. All reported findings fixed and covered by browser checks. Final review found no blocking source issues.

Validation: exact candidate CI passed (vet, format, build, migration, Go suite, race). Chromium and WebKit component audits each exercised 56 menu actions plus keyboard submission, resize fields, Escape and outside click. Both engines passed auto-fit single/multiple columns, below-viewport formatted values, reload persistence, bounds, failure/retry, and manual group resize. Clipboard/formula/editor regressions passed in Chromium.

Deployment review pending: candidate is being deployed only to the existing isolated overnight-sheets.bds.oncarlos.com canary, channel canary/overnight-batch, environment overnight-batch. The previous synthetic test session was signed out and deleted, so fresh ordinary canary sign-in is needed for authenticated browser review. Production is unchanged. No fixture bootstrap or authentication bypass is being introduced.

Canary adoption verified on 2026-09-17: ordinary process /api/version now reports 95ba60076977e783a47aab8284e16370764e65a9. Both root and independent GPT-6 Astra reviewer verified all six changed public assets byte-match the candidate. The CLI initially reported live while the old process was still serving; a host/environment-scoped restart was dry-run checked to affect only overnight-sheets.bds.oncarlos.com, then requested. Production edge remains e4fb2fc5b651d879785e8cce01f856374622460b.

Fresh ordinary canary sign-in is still pending. A controlled browser is open at canary sign-in and authenticated deployed checks are prepared for Chromium and WebKit. No merge has been attempted and no authentication bypass has been introduced.

Paul replied "Looks good" on 2026-09-18 to the request for final canary review, following his explicit "merge and deploy" instruction. Recording this as human canary approval, alongside GPT-6 Astra's completed independent source review and independently verified candidate process/public assets.

Exact candidate 95ba60076977e783a47aab8284e16370764e65a9 CI rechecked green. Canary still reports that exact process version. Main remains e4fb2fc5b651d879785e8cce01f856374622460b, with no intervening changes. Automated authenticated canary interaction tests were not run by this agent; human approval is not represented as automated test evidence. Chromium/WebKit component audits and complete local/CI gates are recorded above.

Proceeding with the authorized merge and production deployment.

Merged through the gated branch-merge endpoint on 2026-09-18 as 992d6b8e249f56ef70fdd3d41530848aa5ead142. The merged source tree is byte-identical to approved candidate 95ba600. Main CI passed before production deployment.

Built the clean merged checkout with make release VERSION=992d6b8; deployed with carlos deploy to account oficina, app sheets, channel edge, host sheets.bds.oncarlos.com. Requested a restart scoped only to that production host after detecting the previous process still served. Canary channel remains unchanged at 95ba600.

Production receipt: https://sheets.oficina.works/api/version returns 992d6b8; /healthz returns 200; autofit.js, formulapick.js, menubar.js, clipboard.js, sizes.js and sheets.css all return bytes identical to the merged source. No user workbook data was accessed or modified for this verification.