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
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ build into the local cache (`PLAYWRIGHT_BROWSERS_PATH` if set).
- Driver-era channel `IBrowserType` obtained only from the Node driver —
replaced by direct `BrowserTypeInfo` implementing `Microsoft.Playwright.IBrowserType`
- `ILocator` / `IFrameLocator` — not yet implemented in the earliest direct cut
(later waves restored locator work; see `tasks/todo.md`)
(later waves restored locator work)
- `IPageAssertions` / `ILocatorAssertions` — not yet implemented in the earliest
direct cut
- `ISelectors` — not yet implemented in the earliest direct cut
Expand Down
25 changes: 10 additions & 15 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Goal

PlaywrightNative is a .NET port of Microsoft Playwright for automating Chromium, Firefox, and WebKit browsers.
Expand All @@ -11,19 +13,11 @@ Public launch entry points match upstream playwright-dotnet:
There is no Node.js driver. Static `Playwright.Chromium` /
`LaunchChromiumAsync` helpers remain for convenience.

## Compatibility campaigns
## Upstream test parity

Leftover options ended at Wave 500 (`tasks/leftover-campaign.md`).
Locator core ended at Wave 523 (`tasks/locator-campaign.md`).
Expect matchers ended at Wave 549 (`tasks/expect-campaign.md`).
Screenshot, pause, client certificates, HAR update, Firefox launcher,
expect options, Firefox smoke, tracing chunks, and UnrouteBehavior
are on `main` (through Wave 586).
The active track is IgnoreDefaultArgs list: follow
`tasks/ignore-default-args-campaign.md` and `tasks/todo.md` Current Phase.
Campaign order and the paste-ready automation prompt: `tasks/campaign-chain.md`.
After IgnoreDefaultArgs: Firefox persistent.
Then stop.
Every portable upstream `tests/page` and `tests/library` title already has a
local `[PlaywrightTest]` twin. The remaining upstream titles are Node-only
internals. `tasks/validate-playwright-tests.py` checks this.

## Quick Reference

Expand Down Expand Up @@ -94,7 +88,7 @@ These rules cause build failures. Violating them will break CI:
### Project Structure

```
PlaywrightNative/ ← Main library (netstandard2.1 + net10.0)
PlaywrightNative/ ← Main library (net10.0)
├── Chromium/ ← Direct CDP (CRPage, CRNetworkManager, ...)
├── Firefox/ ← Direct Juggler (FFPage, FFConnection, ...)
├── WebKit/ ← Direct WIP (WKPage, WKConnection, ...)
Expand Down Expand Up @@ -146,8 +140,9 @@ PlaywrightNative.TestServer/ ← HTTP/HTTPS server for test fixtures

### CI Matrix

CI (`.github/workflows/dotnet.yml`) runs `net10.0` with `test.runsettings` (1-hour
session timeout). Matrix:
CI (`.github/workflows/dotnet.yml`) runs `net10.0` with `test.runsettings` (2.5-hour
session timeout). Jobs are split into shards by test class
(`.github/workflows/compute-test-shard-filter.sh` sets `TEST_FILTER`). Matrix:

- Chromium headless + headful on `ubuntu-latest` and `windows-latest`
(`PRODUCT=CHROMIUM`, full `PlaywrightNative.Tests` suite)
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Chromium is the primary, fully supported browser. Firefox and WebKit launch toda

**PlaywrightNative is a community-first project, created by the community, for the community.**

[Microsoft's playwright-dotnet](https://github.com/microsoft/playwright-dotnet) is a thin auto-generated wrapper around a bundled Node.js process. After years of accumulated community frustration — [89% of open issues unanswered](tasks/playwright-dotnet-pain-points-report.md), top feature requests open for 4+ years, and a widening gap with the Node.js version — we decided to build something better.
[Microsoft's playwright-dotnet](https://github.com/microsoft/playwright-dotnet) is a thin auto-generated wrapper around a bundled Node.js process. After years of accumulated community frustration — [89% of open issues unanswered](https://github.com/microsoft/playwright-dotnet/issues), top feature requests open for 4+ years, and a widening gap with the Node.js version — we decided to build something better.

### No Node.js. Pure .NET.

Expand Down
71 changes: 0 additions & 71 deletions tasks/api-response-leftover-campaign.md

This file was deleted.

172 changes: 0 additions & 172 deletions tasks/architecture.md

This file was deleted.

71 changes: 0 additions & 71 deletions tasks/aria-snapshot-json-campaign.md

This file was deleted.

Loading
Loading