aboutsummaryrefslogtreecommitdiff
path: root/.gitignore
AgeCommit message (Collapse)Author
2026-10-11test: keep host-provided packages out of dependencies (#36)Uttkarsh
Adds a manifest guard (scripts/check-manifest.ts + test/util/manifest-test.ts) so npm run check fails if a host-provided package such as typebox lands in dependencies, plus a daemon-startup troubleshooting section in the skill. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-08-02chore: remove the .rpiv folderamankumarsingh77
Four planning artifacts from the per-tab-isolation and multi-agent-safety work, all of which has since landed. Ignored going forward so local .rpiv scratch stays out of the repo. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-02docs: remove the docs/ folderamankumarsingh77
The plans, specs, and audit reports under docs/superpowers/ described work that has since landed, and ARCHITECTURE.md duplicated what the boundary scanner and the tool contract already enforce in code. CONTRIBUTING.md now points at the source that enforces each rule instead of at prose about it. .gitignore keeps docs/ ignored so local scratch docs stay out of the repo. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-02chore: ignore .worktrees/ and .harness/ pipeline artifactsamankumarsingh77
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-02docs: document the layer rules and tool authoring contractamankumarsingh77
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-02chore: fail the build on unguarded type assertionsamankumarsingh77
A clean tsc does not prove the absence of casts. This scans src/ for as any, ts-ignore, non-null assertions, inline object casts, and double casts, wired into a new npm run check that CI runs as a single step. The escape hatch is an external allowlist module rather than an inline comment marker: comments are not used in this codebase, and an entry carries a count, so adding a new cast to an already-exempted file still fails until someone raises a number that shows up in the diff. Exactly one exemption is needed today, for the dynamic sharp import. scripts/ was gitignored wholesale, so the two new files are un-ignored individually and everything else dropped there stays ignored. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-05-04feat: parallel tool execution with automatic mutation serializationamankumarsingh77
- Add lightweight async mutex (src/util/mutex.ts) for FIFO serialization - Add serialized?: boolean to BrowserToolDefinition - Wire mutex acquisition into registerBrowserTool execute wrapper - Expose mutationMutex() on BrowserClient - Mark all mutation tools (click, type, scroll, navigate, switch_tab, etc.) as serialized - Leave observation tools (screenshot, page_info, execute_js, http_get, etc.) unguarded - Update prompt and skill docs to reflect parallel-safe behavior - Fix scroll tool: add Page.bringToFront, explicit button:none/buttons:0/pointerType:mouse - Update .gitignore to ignore scripts/ and data/ folders
2026-05-04docs: add speed-optimizations research; chore: improve browser detection in ↵amankumarsingh77
setup
2026-05-02perf: v0.2.0 — event-based waitForLoad, fast ensureAlive, JPEG ↵amankumarsingh77
screenshots, page info caching 5 performance optimizations (14-36% faster end-to-end, output quality unchanged): - fast ensureAlive(): WS state check instead of CDP roundtrip (96% faster per-call) - event-based waitForLoad(): CDP load events instead of 300ms polling (99.5% faster for loaded tabs) - JPEG screenshot support: 29-49% smaller files, faster CDP transfer - page info caching: 1s TTL eliminates redundant evaluateJS calls - parallel domain enables: Promise.all instead of sequential await in switchTab() Benchmark: 3622ms vs 4243ms baseline on 3-tab navigation + screenshot task.
2026-05-02fix: commit package-lock.json for CI reproducibilityamankumarsingh77
Removes package-lock.json from .gitignore so npm ci works in CI. Without the lock file, actions/setup-node cache resolution fails and npm ci has no dependency tree to install from.
2026-04-29Initial release: pi-browser-harnessamankumarsingh77
Browser control extension for pi — 20 browser_* tools for navigating, clicking, typing, screenshotting, and extracting data from real Chrome via CDP. Includes self-extending harness (register_tool/remove_tool), guided /browser-setup, session persistence, and custom TUI renderers.