Skip to content

Commit 25f88b9

Browse files
committed
new design
1 parent 7386b92 commit 25f88b9

28 files changed

Lines changed: 14667 additions & 5101 deletions

AGENTS.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@ Browser test execution rules:
112112
- Major user flows MUST be covered by long Playwright scenarios that execute real browser interactions end to end.
113113
- Major browser scenarios MUST capture screenshot artifacts under `output/playwright/`.
114114
- Editor typing and latency fixes are not done until they are reproduced and cleared on the live dev-host editor with real keyboard input, not only synthetic input helpers or the static UI-test host.
115+
- When the user reports an editor regression on a specific script or exact `/editor?id=...` URL, reproduce on that same live script before treating browser-suite results as sufficient.
115116
- Editor surface changes must ship with real-browser checks for scroll behavior, floating toolbar dropdowns, and TPS section controls when those areas are touched; static component tests alone are not enough.
116117

117118
Do not override the production app runtime URL with `--urls` or random ports. Media permissions are origin-bound, so local development must stay on the stable launch-settings origin. If `dotnet run` fails because that port is already in use, stop the existing dev-server process instead of switching the app host to a new port. The browser-test harness is the exception: it must resolve a fresh dynamic loopback port and propagate the actual origin into Playwright `BaseURL` and permission grants.
@@ -345,6 +346,7 @@ Ask first:
345346
- runtime dependencies fetched from random external sources instead of vendored release artifacts
346347
- progress updates that talk about internal skill routing instead of the concrete repo change
347348
- long exploratory work before producing the concrete vendored files the user explicitly asked for
349+
- unexpected browser debugger pause hooks in the default dev launch profile; browser debugging must stay explicit opt-in
348350

349351
## Preferred Skills
350352

docs/Features/EditorAuthoring.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,12 +66,13 @@ sequenceDiagram
6666
- source edits refresh metadata, tree labels, preview overlay, and status
6767
- metadata edits rewrite the persisted TPS document without surfacing YAML in the editor body
6868
- typing stays local-first while autosave persists on a short debounce instead of every keystroke
69-
- active typing temporarily shows the native textarea text layer while the highlight overlay catches up after a short idle window, keeping keystrokes off the full highlight rebuild path
7069
- the styled TPS overlay remains visible while the real textarea owns caret and selection, so editing stays inline instead of switching to a plain-text mode
70+
- highlight overlay refresh is coalesced to the next animation frame, so typing stays immediate without dropping the editor into a plain-text fallback state
7171
- the highlight overlay subtree is JS-owned while Blazor keeps workflow state, preventing per-keystroke DOM diff churn and keeping browser typing responsive
7272
- plain `input` events no longer force a page-wide Blazor render; sidebar, metadata rail, and status refresh only after draft analysis or explicit selection/navigation interactions
7373
- selection interop stays off the keystroke path and runs only for caret/selection workflows that actually need toolbar anchoring or focus moves
7474
- the source highlight and textarea share the same wrapping metrics, preventing caret/text drift on multiline editing
75+
- segment and block header lines keep their styled header treatment even while the user is in a temporarily dirty edit state such as trailing text after `]` or an incomplete closing bracket
7576
- the authoring surface exposes a single vertical scroll container so the editor body does not fight a nested shell scrollbar
7677
- the floating selection toolbar emotion affordance opens a real TPS emotion picker instead of applying a single hardcoded wrap
7778
- the top toolbar shows direct TPS structure insert actions for `##` segments and `###` blocks, with the same actions still available from the insert dropdown
@@ -83,6 +84,7 @@ sequenceDiagram
8384
- `dotnet test /Users/ksemenenko/Developer/PrompterLive/tests/PrompterLive.Core.Tests/PrompterLive.Core.Tests.csproj`
8485
- `dotnet test /Users/ksemenenko/Developer/PrompterLive/tests/PrompterLive.App.Tests/PrompterLive.App.Tests.csproj`
8586
- `dotnet test /Users/ksemenenko/Developer/PrompterLive/tests/PrompterLive.App.UITests/PrompterLive.App.UITests.csproj`
87+
- `dotnet test /Users/ksemenenko/Developer/PrompterLive/tests/PrompterLive.App.UITests/PrompterLive.App.UITests.csproj --no-build --filter "FullyQualifiedName~EditorTypingTests"`
8688
- `dotnet test /Users/ksemenenko/Developer/PrompterLive/tests/PrompterLive.App.UITests/PrompterLive.App.UITests.csproj --filter "FullyQualifiedName~EditorTypingTests|FullyQualifiedName~EditorSourceSyncTests|FullyQualifiedName~EditorInteractionTests"`
8789
- `dotnet test /Users/ksemenenko/Developer/PrompterLive/tests/PrompterLive.App.Tests/PrompterLive.App.Tests.csproj --filter "FullyQualifiedName~Editor"`
8890
- `dotnet test /Users/ksemenenko/Developer/PrompterLive/tests/PrompterLive.App.UITests/PrompterLive.App.UITests.csproj --no-build --filter "FullyQualifiedName~Editor"`

0 commit comments

Comments
 (0)