Six answers from Nick: F6 is a strict 2.0 screens (build task, chrome compresses); hold stays reachable from any status (T7.3 question closed); CR-014 bodies get deep links and may name customer context but never embed confidential document content; CR-008 merged-PDF becomes KNOWN-ISSUES 3 (decided, not deferred by accident); BL-023 becomes D12, the productivity factor on the dashboard; BL-020 closed as decided-keep. Housekeeping (BL-021, BL-024, BL-025, S13) approved to build on this branch. Items: F6, CR-008, CR-014, D12, BL-020, BL-022, BL-023. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
103 lines
5.3 KiB
Markdown
103 lines
5.3 KiB
Markdown
# Decisions — August 20, 2026
|
||
|
||
One item. Like the August 18 set, it is a **new item** with its own `D` id, not a
|
||
reinterpretation of an existing one.
|
||
|
||
---
|
||
|
||
## D11 — The Micron asset picker merges into the R2 creator
|
||
|
||
- **Arrived as:** `origin/Micron-Assets` (`7ef1fcd`, Cody Schaefer, Aug 18) — written
|
||
against pre-R2 `main`, integrated here by Nick's instruction on Aug 20.
|
||
- **Amends:** the R2 completion record's "Asset database integration — out of scope,
|
||
confirmed unbuilt" line, which was true when written and stops being true here.
|
||
- **Surface:** `html/` (creator), `server/` (`assets_db.py`, `/api/assets`),
|
||
`docker-compose.yml`, `requirements.txt`.
|
||
|
||
### What the branch brought
|
||
|
||
A read-only lookup onto the Micron asset catalog (a SQL Server instance outside this
|
||
repo): the whole catalog is fetched once per creator page load through `/api/assets`
|
||
and searched in memory; picked assets are stored on the package tagged
|
||
`source:'catalog'` with the DB's own casing; anything not in the catalog is added by
|
||
hand and visibly tagged manual. CSV import and Excel column paste bulk-add with the
|
||
same matching. Unconfigured (`MICRON_DB_URL` unset) and unreachable are first-class
|
||
states that degrade to manual entry — the suite runs without Micron wired up.
|
||
|
||
### What integration changed (and why)
|
||
|
||
The branch predates waves 5–9, so it used surfaces R2 replaced. Each adaptation keeps
|
||
Cody's behaviour and moves it onto the R2 idiom:
|
||
|
||
1. **Six `alert()` calls → the T7.9 dialog kit and toast.** The creator ships zero
|
||
native dialogs (`creator_dialogs_check` pins the count). File-handling errors use
|
||
`toast(msg,'alert')` exactly as the drawings uploader and comment import do;
|
||
the instructional message and the import summary use the kit, which gained the
|
||
one-button `wpAlertDialog` shape it was always going to need (BL-024 wants it too).
|
||
2. **The export block** moved inside T9.1's sectioned `add('assets', …)` frame, so the
|
||
CR-006 assets toggle keeps governing it. Content is Cody's: two columns, Asset ID +
|
||
Note, no controls.dev link column.
|
||
3. **`initAssetPicker()`** joined the R2 `bootData()` loads rather than replacing them.
|
||
4. **`role="status"`** on the picker's source note, so loading → ready/absent/error
|
||
announces (C1, the login.html pattern).
|
||
5. Everything else landed as written: his `⤒` import glyph is already the S6-mapped
|
||
U+2912, `.material-actions` is the creator's own class, and the styles block
|
||
declares no colour literal (`color_check` re-verifies).
|
||
|
||
### Recorded properties, restated as constraints
|
||
|
||
- **Read-only, structurally.** `assets_db.py` contains one SELECT and no other
|
||
statement; there is no POST route. `assets_check` greps this on every run.
|
||
- **Credentials are env-only** (`MICRON_DB_URL`), matching the SMTP password rule.
|
||
Driver errors are logged server-side and never propagated to the browser, because
|
||
a malformed URL's error text can quote password fragments.
|
||
- **Unconfigured is not an error.** Local dev and the demo DB run with the picker in
|
||
manual mode; nothing in the suite requires the catalog to exist.
|
||
|
||
---
|
||
|
||
# The evening decisions (same day)
|
||
|
||
Six answers from Nick, given in one message. Recorded verbatim in intent; each
|
||
names the item it settles. One new item id is assigned (D12); everything else
|
||
amends or closes an existing question.
|
||
|
||
## The answers
|
||
|
||
1. **BL-022 — "strict 2.0."** F6/D3's "roughly two screen heights" means
|
||
**2.0**, not 2.17. The overage is chrome (~154px: the context bar, the
|
||
release banner's spacing, header/toolbar padding), so this becomes a build
|
||
task: compress the chrome without deleting what other items placed
|
||
deliberately (A2's one-warning banner and the SOP identity strip STAY —
|
||
they get denser, not removed). `form_structure_check`'s red check flips
|
||
green by the page actually fitting, not by moving the bar.
|
||
|
||
2. **Hold from Draft/Scheduled — "no, leave as is."** The hold branch stays
|
||
reachable from any status. T7.3's raised question is closed; the shipped
|
||
behaviour is the decided behaviour.
|
||
|
||
3. **CR-014 email bodies — links back to the system; customer context is
|
||
allowed, confidential documents are not.** The T7.6-era rule ("no customer
|
||
IP in emails") is refined: naming the customer, the project, the package
|
||
and where the work happens is fine; what must never be embedded is
|
||
confidential document CONTENT (drawings, attachments, scope text). Every
|
||
work-package email carries a deep link back to the package in the system.
|
||
Build task, sink-verified.
|
||
|
||
4. **CR-008 merged-PDF export — known issue, not a build.** The export keeps
|
||
inline images + listed PDF attachments. Recorded as KNOWN-ISSUES.md §3 so
|
||
the limitation is a commitment, not a surprise.
|
||
|
||
5. **BL-023 → D12 — the productivity factor gets a spot on the dashboard.**
|
||
Placement delegated ("find a spot on the dashboard"). New item id **D12**:
|
||
actual ÷ estimated hours, from data the rollup endpoints already carry.
|
||
|
||
6. **BL-020 — "keep it."** The unsaved-work prompt on leaving the wizard
|
||
stays. Closed as decided-keep; no build.
|
||
|
||
Plus: **"do what's left on the housekeeping"** — BL-021 (the
|
||
critical-reopen recipient bug), BL-024 (the 21 console/launcher dialogs onto
|
||
the shared kit), BL-025 (the last second-blue tint + the widened check), and
|
||
S13 (seed_demo sign-in) are approved to build now, one commit each, on
|
||
`feat/wp-suite-r3-housekeeping`.
|