גייט: אושר ע"י בן (Creative Director), 2026-07-21. בעלים: סבב Claude Design.
Upstream:vision/vision-v2-delta.md·design/REFERENCE-RESEARCH.md.
Downstream: design/build_bundle.py (המימוש), SPEC.
המסמך הזה בר־ביצוע (P3): אם המימוש שונה מהמותג — המימוש שגוי.
ואם המותג לא יושם — המותג לא נבחן. ראה §0.
| מה | שפת המותג הוחלפה במלואה: מגרפיט־וענבר כהה לשפת Ben Console — נייר חם, אקסנט סגול, מצב כהה מלא |
| מתי | 2026-07-21 |
| בהכרעת מי | בן, גייט P6. שאלה: "האם brand.md מתבטל לטובת שפת Ben Console?" תשובה: "כן." ובנוסף — "brand.md צריך להיכתב מחדש, לא להישאר כסתירה." |
| הגרסה הקודמת | נשמרה במלואה: brand/brand-v1-2026-06-13.md (לא נמחקה) |
1. בן בחר רפרנס קיים שהוא כבר אוהב. ב־21.7:
*"אולי יותר נכון ש־Ben Console בסוף יתחבר לשם, אבל **כמעט כמו שהוא, ממש דומה —
כי הוא מעולה, מעוצב מעולה**."*
2. v1 אושר ומעולם לא יושם — ולכן מעולם לא נבחן. זו העובדה שמצדיקה את ההחלפה,
ולא טעם. v1 אושר 13.6 ובמשך חמישה שבועות לא נגע במסך אחד. כשסבב Claude Design
סוף־סוף ניסה ליישם אותו (21.7), הוא:
#FFB347 במקום #FFB000 המאושר — סטייה שקטה, איש לא שם לב;#3FB950 ש־v1 אוסר במפורש ("Running/healthy… never green").**מותג שאושר על נייר, לא יושם חודש, ונסתר בפועל ברגע הראשון של המימוש — הוא הצהרה,
לא מותג. בדיוק ההבחנה שהמוצר הזה כולו עוסק בה: מוצהר מול מדוד**.
3. ההחלפה מקטינה סיכון, לא מגדילה. Ben Console חי בפרודקשן, בן קורא בו,
ו־v1 הוא מסמך שלא נבחן. ובנוסף בן אמר ש־Ben Console "בסוף יתחבר לשם" — שפה משותפת
הופכת את החיבור העתידי לטבעי במקום להדבקה.
v1 לא טעה בכל. חוקי המשמעת האלה עוברים ל־v2 כלשונם:
| חוק מ־v1 | סטטוס ב־v2 |
|---|---|
| אקסנט מוקצב — ≤1 מוקד למסך אלא אם משהו באמת דורש יד | ✅ נשמר (§3) |
| אפור ≠ אדום — "לא יודע" הוא מצב נפרד מ"נכשל" | ✅ נשמר, והורחב (§4) |
| אדום שמור לכישלון אמיתי — כדי שהתראה תהיה נדירה ורועשת | ✅ נשמר (§4) |
| התיישנות היא כשל | ✅ נשמר, והפך לחוק מרכזי (§6) |
| גרפיט כהה־בלבד · ענבר · IBM Plex · שלושה פאנלים | ❌ בוטל |
נייר חם, לא חדר בקרה.
המפעל הזה לא צריך להיראות כמו נאס"א. הוא צריך להיראות כמו **משהו שאדם אחד קורא בבוקר
בטלפון ומבין תוך שלוש שניות מה דורש אותו. הרקע הוא נייר, לא זכוכית; הכרטיס מורם**
מעל הדף, לא שקוע לתוך מסך; והצבע היחיד שצועק שמור לדבר האחד שדורש יד.
היעד הרגשי (מ־vision-v2-delta.md §פער 4): רצפה רגועה.
לא "קוקפיט רגוע" — קוקפיט הוא טייס יחיד; רצפה היא אוכלוסייה. המחוון נשאר שקט;
הנוכחות של העבודה חייבת להיות מורגשת. מפעל שקט הוא עדיין מפעל. מה שאסור הוא
חדר ריק שמתחזה למפעל — ומכאן כל חוקי המקור בהמשך.
/Users/benariel/ben-console/public/index.html — 270 שורות, עצמאי, אפס תלות חיצונית.
הטוקנים למטה הועתקו משם מילה במילה, לא שוחזרו מהזיכרון.
חילוץ מלא ונימוקים: design/REFERENCE-RESEARCH.md §1–3.
/* === בהיר — ברירת המחדל === */
--bg:#f7f6f2; /* נייר חם. נוטה לצהוב, לא אפור־כחול */
--ink:#1c1a17; /* חום־שחור. לא #000 */
--muted:#6b6459; /* טקסט משני */
--line:#e2ddd3; /* קו 1px, בכל מקום */
--card:#fffdf9; /* כרטיס — בהיר מהרקע = מורם */
--accent:#5b21b6; /* סגול. הדבר האחד שדורש אותך */
--chip:#f1ede4; /* רקע תגית שקט */
--ok:#15803d; /* הצלחה */
--bad:#dc2626; /* כישלון אמיתי בלבד */
--warn:#b45309; /* דורש תשומת לב */
/* === כהה — נבחר אוטומטית ב־prefers-color-scheme === */
--bg:#171512; --ink:#ece7dd; --muted:#9a9284; --line:#2e2a24;
--card:#1f1c18; --accent:#c4b5fd; --chip:#26221c;
--ok:#4ade80; --bad:#f87171; --warn:#fbbf24;
חוקים:
#000 ואין #fff. בשני המצבים (יורש brand-isolation, quiet-not-flat).--card בהיר מ־--bg, ובמצב הכהה זה מתהפך נכון.אם שני דברים באמת דורשים יד — שניהם מקבלים אותו, אבל זה מקרה ולא ברירת מחדל.
--bad שמור לכישלון אמיתי בלבד. לא ל"אין נתונים", לא ל"ישן", לא ל"רדום".--ok קיים בשפת Ben Console ובן מכיר אותו.אבל "רץ" אינו ירוק — "רץ" הוא נוכחות + סימן מקור (§5).
הנוסחה, מאומצת מ־GOV.UK Tag + USWDS + WCAG 1.4.1:
סטטוס = צבע + תווית בשם־תואר + גליף + קו מלא/מקווקו + מיקום בעמודה
| מצב | גליף | קו | צבע | משמעות |
|---|---|---|---|---|
| חי | ● | מלא | --accent | נמדד, פועל עכשיו |
| חסום | ▲ | מלא | --bad | דורש אדם. נורת andon — חייבת גיל |
| ממתין | ◷ | מלא | --warn | בתור, לא תקוע |
| אין תזוזה | ◇ | מקווקו | --muted | אין עדות. לא כישלון |
| שקט מתוכנן | ◈ | מקווקו | --muted | שקט בכוונה. הנורה הכחולה של andon |
חוקים:
class שנדלק כש־value == null(Datadog: No Data הוא סטטוס רביעי עם ניתוב משלו).
כל מספר על כל מסך נושא את מקורו. שני מצבים בלבד:
| סימן | שם | משמעות |
|---|---|---|
| ◆ | נמדד | מכונה כתבה. גיט, או ה־harness. סוכן לא יכול לזייף — הוא לא הכותב |
| ◇ | מוצהר | אדם הקליד. נכון עד שיוכח אחרת, ואינו ראיה |
זו לא המצאה — זו המשכיות. ben-console/schema.sql כבר נושא עמודת provenance
על כל שורה (untrusted_human_input / agent_reported). הוא פשוט אף פעם לא צייר אותה.
הציור הוא ההרחבה.
למה זה הלב של המותג: בן הגדיר את המוצר כ*"הפנים שלנו ושל אוריון, **מי שעתיד לנהל
את המפעל**"*. כשאוריון ינהל, "מי כתב את זה" הופכת לשאלה התפעולית המרכזית.
המותג חייב לענות עליה בגליף, בכל מקום, בלי לשאול.
מקודד בצורה (חלול מול מלא), לא בצבע — WCAG 1.4.1.
חותמת אחת בכותרת היא בדיוק העיצוב שמאפשר לפיד מת להרעיל דף שלם.
ראיה: prism-live החזיר HTTP 200 עם generated_at: 2026-07-01 שלושה שבועות.
הורד ב־21.7. זה לא היה באג בקוד — זה היה באג בעיצוב.
0. אפס הוא מדידה; «—» הוא היעדר מקור. (Grafana ממפה null לטקסט נפרד שעוקף עיצוב יחידות, בדיוק כדי שלא ייקרא כאפס.)
--font:"Heebo",-apple-system,"Segoe UI",system-ui,sans-serif;
--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
@font-face עם woff2 ב־base64 (תת־קבוצה עברית, 12KB, OFL 1.1; מקור ומדידות: design/fonts/LICENSE.md).
<link> ל־gstatic ולא CDN — הבנדל חייב להיפתח מ־file://ולהיראות זהה. קישור היה מחזיר בדיוק את הכשל "מוצהר אבל אולי לא ייטען", בתחפושת.
"Heebo" ולא טענה כלום.במכונה בלי Heebo מותקן — ונמדד: 0 התאמות למכונה הזו — הטקסט נפל למה שהיה במערכת,
כולל דף הטוקנים שאמור להיות מפרט הטיפוגרפיה עצמו.
זה בדיוק אותו כשל שהמוצר הזה נבנה כדי לחשוף: הצהרה אינה מדידה.
לטיני נופל בכוונה למחסנית המערכת — התת־קבוצה מכסה עברית בלבד.
font-variant-numeric:tabular-nums) לכל מספר, זמן ומזהה —עשרות שורות עם ספרות לא מיושרות הן רעש.
line-height: 1.55. עברית ראשונה, RTL, לא תרגום בדיעבד.עברית אינה לטינית בגופן אחר. ארבעת האיסורים האלה הם שערי בנייה (G2–G4, §12):
| אסור | למה |
|---|---|
text-transform:uppercase | לעברית אין אותיות גדולות. חסר משמעות, ומפרק תווית מעורבת עב/אנ |
letter-spacing על עברית | ריווח אותיות שובר את לכידות המילה — האות העברית נשענת על צפיפות |
font-style:italic | לעברית אין נטוי אמיתי. הדפדפן מייצר הטיה מלאכותית ומכוערת |
| הצהרת גופן בלי טעינה | ראה למעלה — כלל 28 |
*(הערה: תוויות המקטע נכתבו במקור עם letter-spacing — טעות טיפוגרפית שנתפסה
ותוקנה ב־21.7. השער קיים כדי שלא תחזור.)*
זו הסקאלה. אין ערכים מחוץ לה.
| טוקן | ערך | px | תפקיד |
|---|---|---|---|
--fs-1 | .72rem | 11.5 | מיקרו — מטא, צ'יפ, חותמת |
--fs-2 | .8rem | 12.8 | כיתוב — תגית, מספר בשורה, הערת שוליים |
--fs-3 | .9rem | 14.4 | גוף משני — הקשר, כותרת משנה, שם תחנה |
--fs-4 | 1rem | 16 | גוף |
--fs-5 | 1.125rem | 18 | כותרת כרטיס |
--fs-6 | 1.5rem | 24 | כותרת עמוד |
⚠️ ההערה שהצדיקה את הסקאלה — ובדיקה שהפריכה הנחה:
נבדק בפועל: ל־Ben Console עצמו יש 13 מידות גופן שונות ב־270 שורות —
.68 .72 .75 .78 .8 .82 .85 .9 .92 .94 .95 1.05 1.5. כלומר הוא סובל מאותה בעיה
ואינו רפרנס לדיסציפלינת סקאלה. הסקאלה כאן היא תוספת שלנו, והערכים של Ben Console
מופו למדרגה הקרובה ביותר — הנאמנות הוויזואלית נשמרת, ההפרשים שאיש לא רואה נעלמו.
(.8 מול .82 = 0.32 פיקסל. זו לא סקאלה, זה font-size שנכתב בכל פעם מחדש.)
| טוקן | ערך | תפקיד |
|---|---|---|
--sp-1 | .25rem | צמוד — פנים תגית |
--sp-2 | .4rem | הדוק — בין שורות ברשימה |
--sp-3 | .6rem | רגיל — ריפוד פנימי |
--sp-4 | .8rem | נוח — בין רכיבים |
--sp-5 | 1.2rem | מקטע — בין כרטיסים |
--sp-6 | 1.8rem | הפרדה — בין אזורים |
רדיוס: כרטיס .7rem · פקד .5rem · צ'יפ .3rem. שלוש דרגות, לא תשע.
על עשרות אובייקטים, וגלילה הורגת "מבט אחד".
אם בכלל צריך לגלול, וכל פריט בה נושא את סימן המקור שלו.
ארבעה כרטיסים נקראים כדוח.
מקבלים מקום שווה — שם מתחיל הריקבון.
אין. אין spring, אין overshoot, אין breathe. הרצפה סטטית ונקראת בסריקה.
כל animation/transition שיתווסף בעתיד — מנוטרל תחת prefers-reduced-motion
(יורש aa-proof-kinetics; כבר קיים בקוד).
נימוק: ממצא FAA — ככל שהעומס עולה, מספר הקיבועים של הבקר בתצוגה יורד.
מסך עמוס חייב להבליט פחות, לא יותר. תנועה על רצפה עמוסה גוזלת את התקציב הזה.
טרסה, הווה, מספרים מובילים. תוויות מכשיר — לא שיווק.
גייט מדבר בפשטות ותמיד אומר שני דברים: מה קורה בשתיקה ומה הוא משחרר
(releases — של Ben Console; בן כבר קורא את זה שם).
הממשק אומר מה יש. הוא לא משכנע.
brand-isolation)| ממד | ben-portfolio | foodflow | orion-studio v2 |
|---|---|---|---|
| רקע | אינדיגו כהה | טורקיז חם | נייר חם #f7f6f2 — היחיד הבהיר |
| אקסנט | כחול־סרט | כתום | סגול #5b21b6 |
| גופן | Space Grotesk + Inter | Rubik | מערכת + Heebo + מונו |
| תנועה | סרט־גלילה קולנועי | עדינה | אין |
| ז'אנר | פורטפוליו/סרט | עריכותי ידידותי | מכשיר תפעולי |
אפס אסתטיקה משותפת, אפס חפיפת גופנים.
*(הערה: v1 טען בידול מול "ענבר"; v2 מבדל דרך הרקע הבהיר — הוא היחיד מבין
השלושה שאינו כהה, וזה הבידול החזק ביותר שהיה לנו אי־פעם.)*
זה הלקח המרכזי של 21.7: 22 חוקים נכתבו, שרדו שלושה — בדיוק אלה שהפכו לכשל בנייה.
v1 נכשל כי אף אחד לא אכף אותו.
design/build_bundle.py נופל — לא מזהיר — אם:
שערי טוקנים (enforce_tokens, רצים לפני הכתיבה לדיסק):
font-size שאינו var(--fs-1..6) — §7.1;rem גולמי ב־padding/margin/gap — §7.2;hex שאינו בפלטת §3;http, <script> או <link> חיצוני.שערי עיצוב (check_gates, G1–G8):
| # | שער | למה |
|---|---|---|
| G1 | @font-face עברי נטען בפועל | כלל 28 — הצהרה אינה טעינה (§7) |
| G2 | אין text-transform:uppercase | §7.0 |
| G3 | אין letter-spacing על עברית | §7.0 |
| G4 | אין font-style:italic | §7.0 |
| G5 | אין פס־צבע 3–4px על כרטיס מעוגל | הסימן המובהק ביותר ל"עיצוב AI" |
| G6 | prefers-color-scheme קיים | §3 — שני מצבים, לא אחד |
| G7 | ≤9 מידות גופן, אף אחת לא קרובה מ־1.5px לשכנתה | §7.1 — אוכף את הסקאלה מספרית |
| G8 | tabular-nums קיים | §7 — בלעדיו עמודות מספרים לא מתיישרות |
מסך שנכשל בשער אחד — לא נכתב לדיסק בכלל. רינדור → שער → כתיבה, בסדר הזה,
כדי שהפרה לא תוכל לשרוד על הדיסק ולהפוך שוב להמלצה.
חובה מפורשת: אם מישהו משנה את §3 או §7.1, הוא חייב לשנות את הטוקנים בקוד —
אחרת הבנייה נופלת. זה ההבדל בין מותג למסמך.
(יורש brand-tokens-as-code: *"components may consume only tokens, never raw values —
brand drift becomes grep-able."*)
SPEC יורש את כל האמור כאילוצים קשיחים (P3). מה שנשאר טכני ולא־גייט:
רכיבים, חוזה הקריאה מהמקורות (גיט · לוח workforce · claude agents --json),
ותנאי קבלה מדידים.
גייט פתוח שנשאר: לוגו. brand-v1 הגדיר "O עם נקודת פוספור ענברית" —
זה מת יחד עם הענבר. סימן הזהות ייגזר מסימן המקור (§5) ולא מפלטת v1.
לא ייבנה בלי הכרעת בן.
</content>