← back to Wallco Ai

data/yolo-overnight/seamless-20260525-1340.md

70 lines

# Seamless Scan — Tile-Match Grade Bucketing

- **Generated:** 2026-05-25 13:40 PT
- **Source:** `data/seamless-scan-results.jsonl` (last 300 = full file, only 30 rows)
- **Working dir:** `/root/public-projects/wallco-ai` (the canonical wallco-ai checkout per prior overnight reports; `/root/Projects/wallco-ai/data/` does NOT contain this file, only `seam-fix/fix-log.jsonl`)
- **Tolerance in scan:** 12 (px-mean diff per axis)
- **Scan timestamp:** 2026-05-24T15:02 UTC

## Grading scheme

The scan emits four `code` values. They map to the requested 3-tier grade as follows:

| Bucket | Source codes | Meaning |
|--------|--------------|---------|
| **clean** | `SEAMLESS_OK` | both top↔bottom and left↔right diffs ≤ tolerance |
| **mid-seam** | `SEAMLESS_FAIL_TB`, `SEAMLESS_FAIL_LR` | **one** axis fails → a single visible seam; the other tile-pair is clean → typically auto-fixable |
| **edge-seam** | `SEAMLESS_FAIL_BOTH` | both axes fail → hard tile-edge defect on every join; usually unfixable without regenerate |
| (errors) | missing `code`, `error:"file_missing"` | source PNG no longer on disk — already self-quarantined |

## Bucket totals (n=30)

| Bucket | Count | % |
|--------|-------|---|
| clean | 11 | 36.7% |
| mid-seam | 5 | 16.7% |
| edge-seam | 9 | 30.0% |
| file_missing | 5 | 16.7% |

## Top mid-seam, still-published designs (publish-blocking defects)

**The scan has only 5 mid-seam rows.** Of those, only **1 is still published** in both PG (`spoon_all_designs`) and the `designs.json` snapshot. The other 4 are either unpublished or no longer in PG (deleted/quarantined between the scan and now). So the "top 20" list caps at one row — there isn't a backlog of published mid-seam blockers hiding in this scan.

| # | id | code | axis-fail | TB diff | LR diff | category | kind | PG `is_published` | snapshot `is_published` | Notes |
|---|----|------|-----------|---------|---------|----------|------|-------------------|-------------------------|-------|
| 1 | **39278** | `SEAMLESS_FAIL_TB` | top↔bottom | **52.02** | 9.44 | `cactus-pine-scenic` | `mural_panel` | ✅ true | ✅ true | TB diff is **4.3× tolerance** — strongly visible horizontal seam. `mural_panel` kind is **gated out** of the edges-scanner auto-fix path (per SUMMARY-20260525 §3); requires Steve policy widen or manual regenerate. |

### Mid-seam rows that did NOT make the published cut

| id | code | TB | LR | category | PG status | snapshot status | Disposition |
|----|------|----|----|----------|-----------|-----------------|-------------|
| 39286 | FAIL_LR | 7.13 | 16.42 | cactus-pine-scenic | unpublished | unpublished | safe — not customer-visible |
| 39292 | FAIL_LR | 9.62 | 20.63 | cactus · oxblood | **gone from PG** | not in snapshot | already removed |
| 39303 | FAIL_LR | 2.09 | 36.46 | stripe · antique-brass | **gone from PG** | not in snapshot | already removed |
| 39315 | FAIL_TB | 12.04 | 11.74 | recolor | **gone from PG** | not in snapshot | already removed (LR also just over tolerance — borderline) |

## Adjacent intelligence: published edge-seam blockers (worse defects, same scan)

The instruction asked for mid-seam, but the scan also turned up **3 PUBLISHED edge-seam designs in the same `cactus-pine-scenic` category** — these are strictly worse than the mid-seam row above (both axes fail, large diffs). Surfacing them so this report is actually actionable:

| id | code | TB | LR | category | kind | PG / snapshot |
|----|------|----|----|----------|------|----------------|
| **39280** | FAIL_BOTH | 35.07 | 30.02 | cactus-pine-scenic | mural_panel | published / published |
| **39282** | FAIL_BOTH | 20.00 | 32.77 | cactus-pine-scenic | mural_panel | published / published |
| **39284** | FAIL_BOTH | 45.18 | 19.40 | cactus-pine-scenic | mural_panel | published / published |

Same `mural_panel` kind → also gated out of the existing auto-fix policy. The full `cactus-pine-scenic` mural_panel cluster (39278/80/82/84) looks like a single bad generator run — worth scoping a unified action (unpublish all 4, regenerate as a batch).

## Recommended next steps (no destructive action taken — see escalation rules)

1. **Unpublish `cactus-pine-scenic` mural_panel quartet** (`39278, 39280, 39282, 39284`) — single SQL `UPDATE spoon_all_designs SET is_published=false WHERE id IN (...)` would close all four blockers. **Awaiting Steve approval** (bulk-destructive-adjacent → user gate per escalation rule).
2. **Policy decision** Steve already flagged in SUMMARY-20260525 §10: widen the edges-scanner auto-fix policy beyond `seamless_tile + mid-seam defect only`. Specifically, decide whether `mural_panel` is regeneratable in-place or always needs Steve's eye.
3. **Re-scan a larger slice.** This run only graded 30 IDs (presumably the freshest batch from `pg`). A category-wide sweep of `cactus-pine-scenic` is warranted given 4/4 published mural_panels in this sample failed.

## Loop self-check

- 0 debate-team-fast / dtd / idea-loop invocations needed — purely deterministic bucketing.
- 0 destructive actions — report-only, per the "Never bulk-destructive without user approval" rule.
- `/root/public-projects/wallco-ai` is **not a git repo** — auto-commit step is a no-op (same as prior overnight runs).
- File written: `data/yolo-overnight/seamless-20260525-1340.md`.