eba522f06e169ce3c7b92fd204ba940a712b0c29
5 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
9a55f0bbc7 |
marketing/facebook: the Facebook APP measured; cover C to your layout (R-919)
gates / gates (push) Successful in 4m43s
The app is no longer the unmeasured view. Solved against the laptop frame, your Facebook Lite shot gives a visible window of x 349..1290 and your Chrome-mobile shot x 349..1291 -- the LITE APP CROPS EXACTLY LIKE SIGNED-IN MOBILE WEB, and both agree with the emulator's 351..1289. Their profile circle is at x 645..1021 from y 451, LOWER than the emulator's y 369, so that figure was pessimistic rather than wrong and the margin it bought was real. Five views measured now; the signed-out one is still the binding constraint. Cover C follows your draft: the wordmark big on top (88 px, was 44), a small gap, then the catchphrase. The catchphrase is ONE line, not the two you drew, and the measurement forces it: with the signed-out circle starting at y 232, a wordmark that size plus two catchphrase lines cannot both sit above it. Drawn as two lines it measured 392 sampled text pixels behind that circle -- "saját szabályaid" read "saját szab" there, which is the R-919 defect itself. Sizing the two lines to fit instead drops the capital to 25 px, the legibility floor. One line keeps the wordmark big, the capital at 34 px and every measured view clean: 0 text pixels behind any circle. The laptop moved right and shrank to 540 px to free the width; 64% of it is cropped or covered somewhere, which the build reports and which is what the decor layer is for. |
||
|
|
b9073e8fb6 |
marketing/facebook: a phone has TWO views of the cover, not one (R-919)
gates / gates (push) Failing after 11m54s
You saw the cover uncropped signed out, after R-919 said the sides are cut. Both are true; my first measurement was one view generalised to "the phone". SIGNED IN, confirmed on your real phone (Chrome/Android, 1080 px): the crop is real. The cover band is 708 px tall across 1080 = 1.525:1 against the file's 2.628:1, and solving the laptop frame's left edge against that scale puts the window at x 351..1298 where the emulated Pixel 9 said 351..1289 -- the left edge to the pixel. R-919 is confirmed on hardware, not replaced. SIGNED OUT, measured from your screenshot: the box is 412x132 = 3.121:1, WIDER than the file, so the height is cut, not the width -- and the file's blue top rule is still visible at the top edge, which puts the cut at the BOTTOM: the top 525 px of 624 survives. The circle is far bigger and higher: x 486..1150 from y 232, 41% of the width. So the sides are cut for one visitor and the bottom for the other. build.py now carries both views; SAFE is their intersection, (391,40)-(1249,485). Two changes made that workable rather than merely safe: - the circles are modelled as DISCS, not rectangles running to the bottom. Near its top a disc is a few pixels wide; the rectangle was discarding most of the lower cover for nothing, which is much of why the frame looked empty. - TWO LAYERS. The READ layer (catchphrase, wordmark) must survive every view and the check fails on it. The DECOR layer may be cropped or covered, and the build REPORTS the cost instead of forbidding it (B 39%, C 62%). Before the split one check governed both, so no laptop big enough to read could ever pass. Red-proof again: the two-view geometry convicted all three covers as they stood -- A 908 content px under a circle (its wordmark sat inside the signed-out circle), B 1715 plus content past the cut bottom, C 1962. control_old_window still convicts the pre-R-919 layout, so there are two controls now. Covers redrawn: C is your laptop idea -- catchphrase and wordmark left, the dashboard at 640 px (was 370) running off the right edge, readable at last. B's home motif grew the same way. A lifted into the tighter band. Capitals 48/45/43 against the 25 px floor. Profile pictures untouched, not in the diff. Still VERIFY: three views measured, all disagreeing with each other and with Meta's help page, and the Facebook APP is still the one nobody has measured. |
||
|
|
ba7174012a |
marketing/facebook: the mark alone on the profile, the real lettering on the covers
gates / gates (push) Successful in 4m28s
Operator refinements after looking at the rebuilt pictures. No geometry changed: R-919's measured constants, its band and every check stand, and the red-proof still convicts the old layout. Profile picture: the logo MARK only. The mark plus the "felhom.eu" lettering was too much for the 176 px Facebook shows -- and smaller than the shape the Page carried before this work, because build.py shrinks the artwork to fit inside the circle where the original was simply cropped by it. Dropping the lettering grows the mark from 69% to 76% of the circle; canvas 932 -> 648 and the profile_width floor 720 -> 640 (twice Meta's recommended 320 source; 720 was above what the mark alone needs and would have shrunk it for nothing). logo.png is split at a MEASURED row: ink y 5-289, blank band y 290-295, wordmark y 296-403. Covers: the headline is now set the way the WEBSITE sets its h1. site.css .page-index .hero-text h1 is font-weight 700, letter-spacing -0.03em; this file used ExtraBold 800 with no tracking, so the cover did not actually match the page. HEADLINE_WEIGHT/HEADLINE_TRACK now carry those, with real per-glyph spacing. Bold is narrower so headlines grew: A 57->62, B 58->63, C 47->50. "felhom.eu" is no longer typed anywhere: wordmark() draws the logo's own lettering, which is set in "M+ 2c"/"Vremena Grotesk" -- fonts this machine does not have (R-916) -- so any typed version was a look-alike. The website hero shows the same logo.png on the same dark background, so the covers match the page. The DOMAIN constant is removed rather than left as dead code. Caught before it shipped: the preview's new profile paragraph added a fourth %d and the argument tuple stayed in the old order, so the phone paragraph rendered "the centre 76 px of the 938-pixel width, with a profile circle 1640 cover-pixels across". Every number was real, just in the wrong slot, which is why it read as plausible instead of crashing. Found by reading the rendered paragraph back, not by the exit code. Built on DooPlex; all checks pass, the phone simulation still shows 0 px cut and 0 px under the profile circle on all three covers. R-919 stays VERIFY. |
||
|
|
796a9fdf40 |
marketing/facebook: covers rebuilt to the MEASURED phone view (R-919 -> VERIFY)
gates / gates (push) Successful in 4m28s
build.py believed a phone shows 640x360 of the cover. It shows 412x274 =
1.504:1 -- the full height and only the centre 938 px of 1640, 351 px off each
side. PHONE_HDR = (412, 274) now drives CW_PHONE, so SAFE is (391,40)-(1249,584),
858 px wide with a 40 px margin inside each crop edge.
QUIET is no longer one formula for both circles: the computer circle is
left-anchored, the phone circle is CENTRED and hides only its measured box
(637,369,393). The old shared formula, applied to a centred circle, would have
blanked everything from x 0 to x 1054 below y 345.
Every cover draws in a derived BAND (408,48)-(1249,340), and a cap check holds
each headline's capital at >= 4% of the cover height; A/B/C come out at 45, 45
and 37 px against a 25 px floor.
RED-PROOF, and it is permanent: control_old_window() runs on every build and
draws the headline where the old assumption put it (x 328); the check must
reject it. The phone's crop edge is x 351, so 23 px were cut; the measured safe
edge is x 391. Against the covers as committed at
|
||
|
|
f0dc6a9d4e |
Facebook Page: profile pictures, three covers, preview page and texts (marketing/facebook); R-916 opened
gates / gates (push) Successful in 4m24s
build.py (Pillow, site tokens + Plus Jakarta Sans) with in-build checks: profile circle (today's shape 6823 pixels outside, new 0), cover safe area and profile-circle clearance, sizes read back. COPY.md: intro 99/100, long description, Messenger welcome, three first posts, each claim traced to the website. R-914 gets the listing-based removal proof and the picture-API tasks; R-915 the footer-link note; R-916 the logo's vector master. |