T9.1 - CR-008: the export, finally walked through
Every required field verified present under the Micron configuration: P6
Activity id and description, Priority, the Building/Floor/Sector location
row, Scope & Work, Material List, Constraints with their status carried by
WORDS (a black-and-white print keeps its meaning), Quality & Hold Points, and
the Drawings & Attachments index with per-file descriptions (T7.7's columns).
What must be absent, absent: the Micron samples now carry
fields:{costCode:false, acumaticaTask:false} - CR-002's two removals,
expressed as the toggles CLAUDE.md requires, in the creator sample AND the
wizard sample - so ACU Cost Code and Acumatica Task appear nowhere on the
Micron export while the columns, model and recorded values stay. CR-006-
suppressed sections (assets, kitting) are absent, as pinned since T5.7.
Tablet legibility, three real defects fixed:
- a bare `table { min-width:520px }` in the narrow-screen media block reached
the EXPORT tables too, dragging the whole document to 520px on a 390px
screen; scoped to .table-wrap (the form's scroll containers), because the
export must FIT a tablet, not scroll
- export tables now table-layout:fixed with overflow-wrap:anywhere
- at <=768px the doc sheds its 52/56px desk padding and neutralises the
inline column widths (the one legitimate !important: outranking an inline
style is its job)
RAISED, NOT DECIDED (the task says propose, do not assume) - merge versus
list for attachments: RECOMMEND MERGING image attachments into the printed
document (already done - they print inline as the sheet itself) and LISTING
PDFs as named, described links rather than merging them. Merging PDFs
server-side needs a PDF library dependency and re-renders every export for a
need the meeting expressed as "hand someone exactly the sheet" - which the
5MB single-sheet uploads plus inline images already serve. If merged-PDF
output is wanted anyway, it is a bounded server task - needs Nick.
Verification (each probe run alone): NEW tests/export_check.py 17/17.
Regressions: form_structure_check 50/51 (the standing F6 height question,
BL-022), sections_check 95/95.
Items: CR-008 (CR-002 field toggles applied to the samples)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -456,6 +456,7 @@ function loadSampleData(){
|
||||
// section added after today is not silently off for this SOP.
|
||||
if(typeof WPSections !== 'undefined'){
|
||||
state.sections = WPSections.normalize({assets: false, kitting: false}); // CR-009: Micron EUV is not kitting today
|
||||
state.fields = WPSections.normalizeFields({costCode: false, acumaticaTask: false}); // CR-002, mirrored on the export (T9.1)
|
||||
}
|
||||
|
||||
// The Micron FMCS sample includes BIM/VDC — enable it so the sequence shows the
|
||||
|
||||
@@ -16,6 +16,10 @@ const SAMPLE_SOP = {
|
||||
// Written as a partial map, not a full one: WPSections.normalize fills the rest
|
||||
// in as ON, so a section added later is not silently off for this SOP.
|
||||
sections:{assets:false, kitting:false}, // kitting off: Micron EUV is not kitting today (CR-009/T8.1)
|
||||
// CR-002 / T9.1: the two fields the review removed, expressed as the toggles
|
||||
// CLAUDE.md requires - hidden on the form AND absent from the export, while
|
||||
// the columns, the model and every recorded value stay exactly where they are.
|
||||
fields:{costCode:false, acumaticaTask:false},
|
||||
project:{name:'Micron — INC Construction Work Packages', number:'26-67-008', client:'Micron Technology, Inc.', division:'Semiconductor', pm:'Nick Siegfried', cm:'K. Boyd', qm:'D. Nguyen', site:'Boise, ID — Fab'},
|
||||
roles:[{role:'General Foreman',name:'M. Torres'},{role:'Superintendent',name:'K. Boyd'},{role:'Safety Manager / Lead',name:'A. Reyes'},{role:'Quality Manager',name:'D. Nguyen'},{role:'Planner',name:'L. Graver'}],
|
||||
governance:{ issuance:['By Sector / Area','By Discipline'], woSize:'Standard — 3–5 days (≈40–80 hrs)', woFormat:'WP##-[Sector]-[TYPE]', disciplines:['Mechanical','Electrical','Tech'], discMode:'choice', instanceSuffix:'letter', sizeHoursMax:'80' },
|
||||
|
||||
@@ -344,7 +344,19 @@
|
||||
.output-doc p { margin-bottom: 10px; }
|
||||
.output-doc ul { padding-left: 20px; margin-bottom: 10px; }
|
||||
.output-doc li { margin-bottom: 3px; }
|
||||
.output-doc table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 12px; border: 1px solid var(--border); }
|
||||
.output-doc table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 12px; border: 1px solid var(--border);
|
||||
/* CR-008 / T9.1: the export opens on tablets. Fixed layout + wrap-anywhere
|
||||
keeps every table inside the screen instead of laying out at its content's
|
||||
natural 520px and dragging the whole document sideways. */
|
||||
table-layout: fixed; }
|
||||
.output-doc td, .output-doc th { overflow-wrap: anywhere; }
|
||||
/* On a phone/tablet the inline column widths the desktop layout carries
|
||||
(width:200px on header cells) exceed the available line; !important is the
|
||||
one CSS mechanism that outranks an inline style, which is exactly the job. */
|
||||
@media (max-width: 768px) {
|
||||
.output-doc { padding: 20px 14px; }
|
||||
.output-doc th, .output-doc td { width: auto !important; }
|
||||
}
|
||||
.output-doc th { background: var(--surface2); border: 1px solid var(--border); padding: 6px 10px; font-family: var(--mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; text-align: left; color: var(--text-muted); }
|
||||
.output-doc td { border: 1px solid var(--border); padding: 7px 10px; vertical-align: top; }
|
||||
.output-doc .badge { display: inline-block; padding: 1px 8px; border-radius: 3px; font-family: var(--mono); font-size: 10px; font-weight: 600; }
|
||||
@@ -659,7 +671,10 @@
|
||||
.modal { max-width:100% !important; }
|
||||
.output-toolbar { flex-wrap:wrap; }
|
||||
.material-actions .add-btn { flex:1 1 auto; }
|
||||
table { min-width:520px; } /* keep columns legible; .table-wrap scrolls */
|
||||
/* Scoped to the FORM's scroll containers only. This was a bare `table` and
|
||||
it reached the export document too, forcing every printed table to 520px
|
||||
inside a 390px screen - the export must FIT a tablet, not scroll (CR-008). */
|
||||
.table-wrap table { min-width:520px; } /* keep columns legible; .table-wrap scrolls */
|
||||
.cstatus button { padding:6px 8px; }
|
||||
}
|
||||
@media (max-width: 480px) {
|
||||
|
||||
Reference in New Issue
Block a user