Skip to content

Commit 94d7eb8

Browse files
committed
fix: restore smoke deploy flow
1 parent 9fd82d4 commit 94d7eb8

6 files changed

Lines changed: 37 additions & 87 deletions

File tree

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ dist
1212
dist-ssr
1313
.npm-cache/
1414
.npm-logs/
15+
.playwright-cli/
16+
.preview.*
1517
.env*
1618
!.env.example
1719
*.local

.playwright-cli/page-2026-03-15T14-40-38-280Z.yml

Lines changed: 0 additions & 82 deletions
This file was deleted.

.preview.pid

Lines changed: 0 additions & 1 deletion
This file was deleted.

AGENTS.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# AGENTS.md
2+
3+
## Repo Snapshot
4+
- This is a single-module Vite + React + TypeScript app.
5+
- Most product code lives in `src/`; deployment lives in `.github/workflows/deploy.yml`; release notes and process docs live in `docs/`.
6+
- Pushes to `main` trigger the live Firebase Hosting deploy, so prefer feature branches and PRs unless the user explicitly wants a live `main` update.
7+
8+
## Read First
9+
- Start with `README.md` for setup, scripts, and env vars.
10+
- Read `docs/deployment.md` and `docs/release-checklist.md` before changing CI or release behavior.
11+
- When touching the new layout/mobile flow, read `docs/ux-effects-plan.md`.
12+
13+
## Working Rules
14+
- Read the existing code and docs before changing behavior.
15+
- Prefer minimal, local changes over broad rewrites.
16+
- If a task spans multiple files, the most likely hotspots are `src/App.tsx`, `src/GraphManager.ts`, `src/components/*`, `src/hooks/useGraphState.ts`, and matching tests under `src/`.
17+
- Do not commit generated local artifacts such as `.preview.*` or `.playwright-cli/`.
18+
- If instructions or release steps seem stale, call that out explicitly in the handoff.
19+
20+
## Verification
21+
- Install dependencies with `npm ci`.
22+
- Core local checks are `npm run lint`, `npm run test`, and `npm run build`.
23+
- Use `npm run check` as the default pre-merge gate.
24+
- If UI, search, or mobile interaction behavior changes, also run `npm run smoke`.
25+
26+
## Done Means
27+
- The requested behavior is implemented on the intended branch.
28+
- `npm run check` passes locally.
29+
- `npm run smoke` passes when UI/search/mobile behavior changed.
30+
- Any required docs or workflow notes were updated alongside the code change.

scripts/smoke.mjs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,16 @@ try {
2929
await page.getByRole('heading', { name: 'Physics' }).waitFor({ timeout: 15000 });
3030

3131
await page.goto(baseUrl, { waitUntil: 'networkidle' });
32-
await page.getByRole('button', { name: // }).first().click();
32+
await page.getByRole('button', { name: /Run path/i }).first().click();
3333
await page.getByRole('button', { name: 'ABORT' }).waitFor({ timeout: 15000 });
3434
await page.getByRole('button', { name: 'ABORT' }).click();
3535
await page.getByText('Search cancelled').waitFor({ timeout: 15000 });
3636

3737
const mobilePage = await browser.newPage({ viewport: { width: 390, height: 844 }, isMobile: true });
3838
await mobilePage.goto(baseUrl, { waitUntil: 'networkidle' });
39-
await mobilePage.getByText('Select In Details').waitFor({ timeout: 15000 });
40-
await mobilePage.getByRole('button', { name: // }).first().click();
39+
await mobilePage.getByRole('button', { name: 'Open Ideas' }).click();
40+
await mobilePage.getByRole('button', { name: /Run path/i }).first().waitFor({ timeout: 15000 });
41+
await mobilePage.getByRole('button', { name: /Run path/i }).first().click();
4142
await mobilePage.getByRole('button', { name: 'ABORT' }).waitFor({ timeout: 15000 });
4243
await mobilePage.getByRole('button', { name: 'ABORT' }).click();
4344
await mobilePage.getByText('Search cancelled').waitFor({ timeout: 15000 });

src/components/SearchStatusOverlay.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,7 @@ export function SearchStatusOverlay(props: {
327327
<span>
328328
Path:{' '}
329329
<strong className="text-gray-200">
330-
{props.isTouchDevice ? 'Select In Details' : 'Shift+Click'}
330+
{props.isTouchDevice ? 'Select For Path' : 'Shift+Click'}
331331
</strong>
332332
</span>
333333
<span>

0 commit comments

Comments
 (0)