# Milestone 5 execution log

Status: machine scope passed; user-only submission actions pending

Started: 2026-07-20

Authority: `docs/current/milestone_5_plan.md`

This file records verified execution facts. It is not the completion claim;
Milestone 5 closes only after all machine-verifiable work is complete and the
remaining user-only Devpost actions are explicitly handed off.

## Checkpoint 1 — public packaging

Status: passed

The internal repository is retained as the complete provenance authority. A
deterministic public-release tree is generated by
`scripts/build_public_release.py` and checked by
`scripts/validate_public_release.py`.

Publication decisions:

- publish the promoted current system, not the entire internal Git history;
- retain the exact internal source commit in `PUBLIC_RELEASE.md`;
- exclude bulk runs, historical archives, local machine inventories, acquired
  design-reference images, and rights-unclear research material;
- keep the complete ten-example accepted portfolio as compact evidence;
- keep the 158-record design catalogue as a source-linked text index;
- license original project work under MIT while separating CC0 and third-party
  portfolio rights in `THIRD_PARTY_NOTICES.md`.

Latest verified clean-tree results:

- 332 published files;
- 39,162,124 bytes excluding Git metadata;
- ten complete accepted example bundles;
- 158 text-only design-reference records;
- no detected machine-local user path, common secret pattern, forbidden
  acquisition directory, or file over 25 MiB;
- active workflow validation passed;
- portfolio validation passed 10/10;
- 24 Python tests passed;
- repository-state validation passed;
- production web build and two rendered-HTML tests passed.

The clean export is reproducible under
`output/public_release/chartsmith/`; generated output is intentionally ignored.

## Checkpoint 2 — public repository

Status: passed

The rights-conscious release is public at
`https://github.com/sseo0817/chartsmith`. GitHub reports:

- repository visibility: public;
- default branch: `main`;
- detected license: MIT;
- media and video public release commit:
  `21f68e551ba3ea1e674fa32401893a759deb641b` (`main`).

The release was pushed as small media-scoped commits after GitHub twice timed
out on a single large pack. A fresh shallow clone resolved to the same final
commit.

Post-publication anonymous verification later exposed an account-level GitHub
visibility contradiction: the signed-in UI and authenticated API report the
repository as Public, while logged-out profile, repository, raw-file, and REST
API requests return 404 for every repository under `sseo0817`. The primary
email is verified, and a control public repository returns 200 from the same
machine. Evidence and the GitHub Support handoff are recorded in
`docs/current/github_public_visibility_issue.md`.

To keep the submission source independently accessible, the showcase now
provides a deterministic source snapshot at:

`https://chartsmith-build-week.sseo.chatgpt.site/downloads/chartsmith-source-snapshot.zip`

## Checkpoint 3 — public showcase deployment

Status: passed

The existing Sites project `Chartsmith` has been changed from owner-only access
to public access, as authorized for the submission showcase. The exact public
GitHub source builds successfully.

Sites archive upload exposed a fixed 60-second transfer limit. The archival
portfolio remains lossless PNG, while the deployed web copies are now generated
as full-resolution WebP at quality 92. Visual inspection of representative
scientific, dense-bar, and bubble-scatter examples found no text, geometry, or
layout defect. This reduced the 65 deployed journey assets from 19.2 MiB to
4.65 MiB without changing the evidence originals.

Production result:

- URL: `https://chartsmith-build-week.sseo.chatgpt.site`;
- access: public;
- saved version: 4;
- exact deployed public source commit:
  `cc38b0caa4c8fa998d40b57e7d56543bfec7163d`;
- no runtime environment variables required.

Version 2 added a visible source-download fallback. After the local-edition
hardening, anonymous verification of `chartsmith-source-snapshot.zip` returned
HTTP 200; the downloaded 9,524,929-byte archive had 191 entries, passed ZIP
integrity checking, and matched SHA-256
`c9ea1d706905da27c151b548de8079b126a203dea3cee68cef7d396e578d4c20`.
The deterministic snapshot represents internal source commit
`61e69107bb370ef9f5a29311a56675f837261b07`.

Version 3 makes the hosted product boundary explicit. When no genuine engine is
available, the section is named **Studio Preview**, contains no file-upload
control, points judges to the ten complete journeys, and offers the source
download plus the exact local start command. When the local engine is online,
the same interface still enables the genuine uploader automatically. The
hosted surface never simulates a run or presents an unavailable action.

Version 4 replaces that defensive preview with a
product-quality **Local edition** section. It explains the exact requirements,
realistic first-setup and run timing, and a single command:

`python scripts/setup_and_start.py`

The downloaded archive is now self-contained for the promoted workflow: it
includes the ten projected journeys and their 65 assets, the three validation
images, the 158-record source-linked reference index, workflow configuration,
the web hosting manifest, and both Python and web dependency locks. The setup
command validates the bundle, creates an isolated Python environment, installs
the locked web dependencies, checks Codex sign-in and the workflow contract,
waits for both services, and refuses to claim readiness when either port is
already owned by another process.

Fresh-extract validation went beyond a startup smoke test. From a newly
expanded archive, the visible command completed installation with zero known
npm vulnerabilities, exposed ten examples and seven workflow stages with no
broken image or horizontal overflow, and reported all six readiness checks as
true. A real image-only run, `web-20260721-172326-98c94aa1`, then completed in
21 minutes 29 seconds. Six independent inspections requested five bounded
repairs for label collisions, endpoint occlusion, cramped margins, misleading
key calibration, and disclosure readability. The sixth review accepted the
result with all production, epistemic, communication, authorship, and
provenance gates true.

Real-browser verification passed on desktop and a 390 × 844 mobile viewport:

- production title and canonical page loaded;
- all ten accepted journeys and seven workflow stages were present;
- no broken image among the rendered active assets;
- no console error;
- no horizontal overflow on desktop or mobile;
- zero upload input while the hosted engine is offline;
- source download and local-run handoff present, with the download returning
  HTTP 200;
- hero, journey catalogue, design-exploration stage, and responsive layout
  screenshots captured under generated Milestone 5 media.

## Checkpoint 4 — Devpost media

Status: passed

Five upload-ready project media files were built under
`output/milestone5_media/project_media/`. The package includes:

- a 1600 × 900 public-product hero;
- a 1600 × 900 source-to-redesign comparison;
- a 1600 × 900 real design-exploration stage;
- the ten-journey portfolio contact sheet;
- a verified mobile production capture.

The 1536 × 1024 thumbnail is
`docs/current/assets/chartsmith-devpost-thumbnail.png`; it is exactly 3:2 and
1,809,163 bytes, below Devpost's 5 MiB limit.

## Checkpoint 5 — demo video

Status: passed

The reproducible video source is
`config/experiments/build_week_vnext/milestone5_video.json`, rendered by
`scripts/build_milestone5_video.py`.

Final deliverables:

- MP4:
  `docs/current/assets/milestone5/video/chartsmith-build-week-demo.mp4`;
- captions:
  `docs/current/assets/milestone5/video/chartsmith-build-week-demo.srt`;
- contact sheet:
  `docs/current/assets/milestone5/video/chartsmith-build-week-demo-contact-sheet.jpg`;
- QA record:
  `docs/current/assets/milestone5/video/chartsmith-build-week-demo-qa.json`.

Verified technical result:

- duration: 169.367 seconds (2:49.367);
- video: H.264, 1920 × 1080, 30 fps;
- audio: AAC mono, 48 kHz;
- final size: 7,117,371 bytes;
- integrated loudness: -16.4 LUFS;
- true peak: -1.4 dBFS;
- no silence longer than 1.5 seconds at the -45 dB threshold;
- full decode passed;
- twelve-scene visual contact sheet reviewed with zero visible defect;
- captions remain inside the dedicated safe band.

Public publication was completed and independently verified on 2026-07-21:

- video: <https://youtu.be/5CUBe7hqI8o>;
- title and channel identity match the prepared upload package;
- YouTube page metadata reports `isUnlisted: false` and `isPrivate: false`;
- channel: <https://www.youtube.com/@chartsmithAI>.

## Checkpoint 6 — Devpost package

Status: ready for user

`docs/current/devpost_submission_package.md` contains the paste-ready elevator
pitch, project story, Built With tags, public links, media order and captions,
YouTube title and description, prior-work disclosure, limitations, and final
account-bound checklist.

## Remaining user-only actions

1. Review the project story for personal voice.
2. Upload the five media files to Devpost.
3. Run `/feedback` in the primary Codex task and record the Session ID.
4. Review the rules and attestations.
5. Click the final Devpost submission action before the deadline.

Milestone 5 is not claimed complete until those account-bound actions are
recorded.
