Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions public/promptly/support/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ <h1>Promptly support is already public and easy to use.</h1>
<section class="card-grid">
<article class="info-card reveal delay-1">
<p class="eyebrow">Email route</p>
<h3>A support address that is ready now.</h3>
<h2>A support address that is ready now.</h2>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preserve card styling when promoting the headings

At every viewport, changing these elements to h2 also changes their presentation: the global h2 rule in public/styles.css:212-216 uses a 2.2–4.2rem size and a 12ch maximum width, whereas these cards previously received the 1.65–2.35rem h3 size and the .info-card h3 spacing in public/styles.css:218-220,703-705. Consequently all three card headings become substantially larger and reflow, despite this change's stated semantic-only outcome; add equivalent card-scoped styling for the promoted h2 elements.

Useful? React with 👍 / 👎.

<p>
Promptly support goes directly to Tiny Studio’s public support
inbox using an app-specific subject line for cleaner triage across
Expand All @@ -86,7 +86,7 @@ <h3>A support address that is ready now.</h3>

<article class="info-card reveal delay-2">
<p class="eyebrow">Related pages</p>
<h3>Support, privacy, and contact stay connected.</h3>
<h2>Support, privacy, and contact stay connected.</h2>
<p>
Promptly’s support page sits alongside the app privacy page, the
studio contact page, and the broader Tiny Studio support hub.
Expand All @@ -95,7 +95,7 @@ <h3>Support, privacy, and contact stay connected.</h3>

<article class="info-card reveal delay-3">
<p class="eyebrow">Public role</p>
<h3>Useful before launch and after it.</h3>
<h2>Useful before launch and after it.</h2>
<p>
This page is already stable enough for App Store Connect and will
remain useful once Promptly is publicly available.
Expand Down
4 changes: 4 additions & 0 deletions scripts/test-active-operator-surfaces.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@ const LOOM = "https://www.loom.com/share/1234567890abcdef1234567890abcdef"
const {equal: eq, deepEqual: deq, notEqual: neq, match: mat, doesNotMatch: dnm, ok} = assert
const trackedArtifactDate = readFileSync(join(C, "growth-brain/ops/proof-library.md"), "utf8").match(/^Generated:\s*(\d{4}-\d{2}-\d{2})$/m)?.[1]
if (!trackedArtifactDate) throw new Error("Tracked proof library must contain a Generated YYYY-MM-DD date")
const promptlySupport = readFileSync(join(C, "public/promptly/support/index.html"), "utf8")
const promptlySupportHeadings = [...promptlySupport.matchAll(/<h([1-3])\b/gi)].map(match => Number(match[1]))
ok(promptlySupportHeadings.indexOf(2) > promptlySupportHeadings.indexOf(1), "Promptly support must introduce H2 content after its H1")
ok(!promptlySupportHeadings.slice(promptlySupportHeadings.indexOf(1) + 1).some((level, index, levels) => level === 3 && (index === 0 || levels[index - 1] < 2)), "Promptly support must not skip H2 before content H3 headings")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Assert every promoted card heading

If either the second or third content-card heading regresses to h3, the resulting sequence still begins h1, h2, h3, so both new assertions pass because every later h3 is effectively blessed by the first card's h2. This therefore does not guard the three promotions it was added to protect; select the three .info-card headings or compare their expected levels directly.

Useful? React with 👍 / 👎.

const fixedClockImport = pathToFileURL(sp("lib/test-fixed-clock.mjs")).href
const retiredSurfacePattern =
/npm run\s+owned:|npm run\s+(?:retention:checkups|client:weekly-loop|value:stress)|client brain|convert a won prospect|filled weekly report|won sprint\(s\) with close package and won note|(?:weekly|full-stack) growth desk|weekly client value loop|every closed deal becomes a client sprint folder|convert the prospect into a client sprint folder/i
Expand Down