# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/2.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.7.0] - 2026-08-24

### Added

- Rewrite bare GitHub Gist pages (`gist.github.com/<user>/<id>`) by appending `/raw`, so gist contents are fetched as clean plain text instead of Defuddle's rendered page
- Fall back to a site's `/llms.txt` index when a fetched page looks like an app shell or has little readable text, surfacing the substitution via `details.llmsTxtFallback`, an `llms-index` content kind, and an output note
- Probe each path's ancestor `/llms.txt` indexes (root plus the first-level section directory) once per cache TTL alongside the first page request, prefer the deepest usable one, and advertise it via `details.llmsTxtUrl` plus an output note
- Read llmstxt.org v2 discovery hints (`Link:` header and `<link>` elements): serve a page's advertised Markdown version (`rel="alternate" type="text/markdown"`) when the page itself is low-quality, reported via `details.markdownAlternateFallback`; prefer `rel="describedby"` indexes over blind probes

## [0.6.1] - 2026-08-23

### Fixed

- Preserve the absolute URL when extracting HTML so Defuddle never constructs `new URL(pathname)` for GitHub-style host + path pages, and guard Defuddle failures (including detached rejections) so extraction always falls back to the basic converter instead of surfacing an `ERR_INVALID_URL` to the caller

## [0.6.0] - 2026-08-20

### Added

- Persist fetched pages to a private cross-session disk cache (24h TTL) behind the existing in-memory cache
- Report honest-evidence metadata (`requestedUrl`, `finalUrl`, `contentKind`, `shellSuspected`, `confidence`) in `details`
- Rewrite GitHub `blob` URLs to their raw `raw.githubusercontent.com` counterpart for clean file fetching

## [0.5.4] - 2026-08-12

### Fixed

- Abort stalled response bodies instead of hanging ([0b0a080](https://github.com/zeldrisho/pi-packages/commit/0b0a080b6231944c3d7788af1a4710c3ca0cee78))
- Apply CodeRabbit auto-fixes ([ddaa177](https://github.com/zeldrisho/pi-packages/commit/ddaa17764aedf0127c4057d3abb6900acfab2b78))

## [0.5.3] - 2026-08-12

### Changed

- **deps:** Upgrade Vite+ toolchain to 0.2.9 ([9921cf3](https://github.com/zeldrisho/pi-packages/commit/9921cf3ffbed29f9c08ca3ab595a5096fadf2be0))

### Fixed

- Fall back across validated addresses before timing out ([32a000b](https://github.com/zeldrisho/pi-packages/commit/32a000bf367268d4ff38e7b45cb73d45ea894f5d))
- Cancel attempts when the caller signal is already aborted ([2f62c95](https://github.com/zeldrisho/pi-packages/commit/2f62c95906e171cc974c9f5cdbd66cf3ecd65b56))

## [0.5.2] - 2026-08-10

### Fixed

- Discard malformed schema metadata ([2ac7b02](https://github.com/zeldrisho/pi-packages/commit/2ac7b02f8952950aa60d4d22f080ab0774cdf50a))

## [0.5.1] - 2026-08-03

### Changed

- Clarify local package management ([f5b420e](https://github.com/zeldrisho/pi-packages/commit/f5b420eba246eb6a372a4b6a9036a060b9db623b))
- Strengthen repository maintenance boundaries ([a44da67](https://github.com/zeldrisho/pi-packages/commit/a44da679b93ae6ea7ebdd77389bf84716b195e33))
- Strengthen maintenance safety ([8a26436](https://github.com/zeldrisho/pi-packages/commit/8a26436780373f21535580224b59bc6dd2a4ad72))

### Fixed

- Handle selector-unsafe document ids ([fb5f224](https://github.com/zeldrisho/pi-packages/commit/fb5f22430b49f41c2b5d68f4e931e804cfb97532))
- Address pull request review feedback ([3b05033](https://github.com/zeldrisho/pi-packages/commit/3b05033003d173809134d9e2d2a53e82e45050b6))
- Allow global IPv6 allocations ([5c88fd8](https://github.com/zeldrisho/pi-packages/commit/5c88fd8cb57c5c4e502939a1504f1f439b8c3836))

## [0.5.0] - 2026-07-28

### Added

- Support larger documentation pages ([39cdb32](https://github.com/zeldrisho/pi-packages/commit/39cdb3213a9eee9e0c905319631ef3228e31c8d8))

### Fixed

- Apply CodeRabbit auto-fixes ([b9149ac](https://github.com/zeldrisho/pi-packages/commit/b9149ac91016bb25b49806af5c99b8486420dd74))

## [0.4.0] - 2026-07-25

### Added

- **web-tools:** strengthen independent tool boundaries ([71aba47](https://github.com/zeldrisho/pi-packages/commit/71aba47db47483b6a75935796a1747603850aa96))

## [0.3.1] - 2026-07-21

### Fixed

- enforce extraction timeout ([aab3828](https://github.com/zeldrisho/pi-packages/commit/aab3828c43459eba761672f7cc104e410cc540cc))

## [0.3.0] - 2026-07-20

### Added

- **web:** Add collapsible web tool results ([e8664d6](https://github.com/zeldrisho/pi-packages/commit/e8664d6c07b719d92f18d9a0048b47cc1970b97c))

## [0.2.0] - 2026-07-19

### Added

- Add bounded public page fetching ([b979496](https://github.com/zeldrisho/pi-packages/commit/b979496b32de1cead172ba570307e4a4a7b3421d))

[Unreleased]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.7.0...HEAD
[0.7.0]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.6.1...pi-web-fetch-v0.7.0
[0.6.1]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.6.0...pi-web-fetch-v0.6.1
[0.6.0]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.5.4...pi-web-fetch-v0.6.0
[0.5.4]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.5.3...pi-web-fetch-v0.5.4
[0.5.3]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.5.2...pi-web-fetch-v0.5.3
[0.5.2]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.5.1...pi-web-fetch-v0.5.2
[0.5.1]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.5.0...pi-web-fetch-v0.5.1
[0.5.0]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.4.0...pi-web-fetch-v0.5.0
[0.4.0]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.3.1...pi-web-fetch-v0.4.0
[0.3.1]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.3.0...pi-web-fetch-v0.3.1
[0.3.0]: https://github.com/zeldrisho/pi-packages/compare/pi-web-fetch-v0.2.0...pi-web-fetch-v0.3.0
[0.2.0]: https://github.com/zeldrisho/pi-packages/releases/tag/pi-web-fetch-v0.2.0
