chore(release): promote v1.1.4 to production - #57
Merged
Merged
Conversation
Bumps the github-actions group with 3 updates: [actions/checkout](https://github.com/actions/checkout), [github/codeql-action/init](https://github.com/github/codeql-action) and [github/codeql-action/analyze](https://github.com/github/codeql-action). Updates `actions/checkout` from 7.0.0 to 7.0.1 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@9c091bb...3d3c42e) Updates `github/codeql-action/init` from 4.37.0 to 4.37.1 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@99df26d...7188fc3) Updates `github/codeql-action/analyze` from 4.37.0 to 4.37.1 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@99df26d...7188fc3) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: github/codeql-action/init dependency-version: 4.37.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: github/codeql-action/analyze dependency-version: 4.37.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
…dev/github-actions-e210efbe6e build(deps): bump the github-actions group with 3 updates
Bumps the github-actions group with 4 updates: [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv), [docker/login-action](https://github.com/docker/login-action), [github/codeql-action/init](https://github.com/github/codeql-action) and [github/codeql-action/analyze](https://github.com/github/codeql-action). Updates `astral-sh/setup-uv` from 8.3.2 to 9.0.0 - [Release notes](https://github.com/astral-sh/setup-uv/releases) - [Commits](astral-sh/setup-uv@11f9893...c771a70) Updates `docker/login-action` from 4.4.0 to 4.5.2 - [Release notes](https://github.com/docker/login-action/releases) - [Commits](docker/login-action@af1e73f...371161b) Updates `github/codeql-action/init` from 4.37.1 to 4.37.3 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@7188fc3...e4fba86) Updates `github/codeql-action/analyze` from 4.37.1 to 4.37.3 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](github/codeql-action@7188fc3...e4fba86) --- updated-dependencies: - dependency-name: astral-sh/setup-uv dependency-version: 9.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: docker/login-action dependency-version: 4.5.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions - dependency-name: github/codeql-action/init dependency-version: 4.37.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions - dependency-name: github/codeql-action/analyze dependency-version: 4.37.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps the python-runtime group with 1 update: [fastapi](https://github.com/fastapi/fastapi). Updates `fastapi` from 0.139.2 to 0.140.0 - [Release notes](https://github.com/fastapi/fastapi/releases) - [Commits](fastapi/fastapi@0.139.2...0.140.0) --- updated-dependencies: - dependency-name: fastapi dependency-version: 0.140.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-runtime ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps the python-development group with 1 update: [ruff](https://github.com/astral-sh/ruff). Updates `ruff` from 0.15.22 to 0.16.0 - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](astral-sh/ruff@0.15.22...0.16.0) --- updated-dependencies: - dependency-name: ruff dependency-version: 0.16.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: python-development ... Signed-off-by: dependabot[bot] <support@github.com>
…dev/github-actions-1ee6e6dd9d build(deps): bump the github-actions group with 4 updates
…untime-648060bf20 build(deps): bump fastapi from 0.139.2 to 0.140.0 in the python-runtime group
…evelopment-c784f51798 build(deps-dev): bump ruff from 0.15.22 to 0.16.0 in the python-development group
… for unknown models
…d control block handling
…ude 'Official' column
… include 'is_official' attribute
…e for improved state management
…ebUI stream updates
…l' attribute in Model class
…ng and testing practices
…official' attribute
…introduce 'is_official' attribute
…ntroduce 'is_official' attribute
…nd metadata changes
…ation and model docs rendering scripts
Contributor
There was a problem hiding this comment.
Pull request overview
Promotes release v1.1.4 by updating the client to handle Perplexity’s current schematized SSE stream format, refreshing the model registry/metadata, and aligning tests + documentation + CI automation with the new model/status semantics.
Changes:
- Add schematized stream support (
workflow_block+ incrementaldiff_block) while retaining legacytextparsing. - Refresh model registry semantics (remove
unstable, addis_official, recordlast_tested_at) and propagate through API/MCP/docs/tests. - Bump release/versioning + dependency/tooling pins and update automation/docs to match.
Reviewed changes
Copilot reviewed 40 out of 43 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/test_thread_continuation.py | Formatting-only tweak in test helper. |
| tests/test_parser.py | Adds coverage for schematized SSE parsing, diffs, markdown/web-result merging, and DONE marker handling. |
| tests/test_models.py | Updates registry invariants to match new status set + is_official metadata. |
| tests/test_mcp_tools.py | Makes MCP tool registration assertions derive from registry rather than hardcoded counts. |
| tests/test_http.py | Formatting-only spacing adjustments in fake HTTP client. |
| tests/test_cli.py | Updates CLI tests to pass risk acknowledgement flag in scenarios impacted by new status rules. |
| tests/test_api.py | Updates API tests to validate /v1/models metadata and risky-model acknowledgement logic. |
| tests/test_account.py | Updates entitlement/risk behavior expectations and adds ty ignores on direct _http assignment in tests. |
| src/perplexity_webui_scraper/models/types.py | Removes unstable status and introduces is_official model metadata. |
| src/perplexity_webui_scraper/http/client.py | Minor formatting changes inside request helpers. |
| src/perplexity_webui_scraper/core/parser.py | Implements schematized stream parsing, JSON Patch application, and DONE marker parsing. |
| src/perplexity_webui_scraper/core/conversation.py | Persists schematized stream state across SSE events in Conversation. |
| src/perplexity_webui_scraper/core/client.py | Minor formatting changes around account API helpers. |
| src/perplexity_webui_scraper/cli/commands/chat.py | Minor UX/flow formatting in prompts; prepares for non-available model handling. |
| src/perplexity_webui_scraper/cli/commands/_token_store.py | Minor formatting in token/config helpers. |
| src/perplexity_webui_scraper/cli/main.py | Minor formatting in CLI entrypoint branching. |
| src/perplexity_webui_scraper/api/schemas/response.py | Adds is_official to API model metadata and removes unstable from schema. |
| src/perplexity_webui_scraper/api/routes/models.py | Exposes is_official in /v1/models response. |
| src/perplexity_webui_scraper/api/routes/completions.py | Minor formatting in streaming branch. |
| src/perplexity_webui_scraper/api/conversation_cache.py | Minor formatting in cache hit path. |
| src/perplexity_webui_scraper/_static/models.json | Updates model catalog entries (ordering/metadata/status/test timestamps, is_official). |
| src/perplexity_webui_scraper/_internal/logging.py | Minor formatting in logging configuration branch. |
| src/perplexity_webui_scraper/_internal/constants.py | Switches defaults to schematized stream + adds cache-control/accept-language headers; updates request flags. |
| scripts/render_model_docs.py | Adjusts generated docs to include is_official and removes unstable status behavior. |
| scripts/ci_changed_paths.py | Minor formatting and output writing flow tweaks. |
| README.md | Updates documentation for the new 3-status model system and is_official semantics. |
| pyproject.toml | Bumps version to 1.1.4 and updates dependency/tool versions and lint ignores. |
| pnpm-workspace.yaml | Removes workspace config. |
| pnpm-lock.yaml | Updates Prettier version pin in lockfile. |
| package.json | Updates Prettier version and removes packageManager pin. |
| docs/usage.md | Minor formatting spacing in example snippet. |
| docs/mcp-server.md | Updates risky tool behavior docs and regenerates model tool table with is_official. |
| docs/api-reference.md | Updates model status docs/table generation and reformats JSON examples. |
| CONTRIBUTING.md | Adds pre-push hook guidance and updates model endpoint + registry/test/docs discipline. |
| CHANGELOG.md | Adds 1.1.4 release notes and adjusts prior entries. |
| AGENTS.md | Introduces consolidated agent/project instructions for changelog/model metadata/python quality. |
| .pre-commit-config.yaml | Renames local hook and scopes it to pre-push. |
| .gitignore | Ignores local example Python scripts (example*.py). |
| .github/workflows/security.yml | Updates pinned action SHAs. |
| .github/workflows/publish.yml | Updates pinned action SHAs (checkout/setup-uv/login). |
| .github/workflows/docs.yml | Updates pinned action SHAs (checkout/setup-uv). |
| .github/workflows/ci.yml | Updates pinned action SHAs and bumps pnpm version used in CI. |
Files not reviewed (1)
- pnpm-lock.yaml: Generated file
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+309
to
+313
| if "blocks" in data: | ||
| if schematized_state is None: | ||
| schematized_state = SchematizedStreamState() | ||
|
|
||
| return _process_schematized_blocks(data, search_results, citation_mode, schematized_state) |
Comment on lines
+34
to
+36
| official_positions = [index for index, model in enumerate(models) if model.is_official] | ||
| historical_positions = [index for index, model in enumerate(models) if not model.is_official] | ||
| assert not historical_positions or max(official_positions) < min(historical_positions) |
Comment on lines
131
to
133
| def test_risky_model_api_requires_and_accepts_acknowledgement(client: TestClient) -> None: | ||
| risky_model_id = next(model.id for model in MODELS.list_all() if model.status != "available") | ||
| with patch("perplexity_webui_scraper.api.routes.completions.MODELS", MODELS): |
Comment on lines
30
to
34
| ### Added | ||
|
|
||
| - **Unified model status:** Added the four-state `available`, `unstable`, `unknown`, and `unavailable` model status, preserving historical records instead of deleting them. | ||
| - **Grok 4.5:** Added the Pro-tier Grok 4.5 and Grok 4.5 Thinking models after successful live probes against both picker identifiers. | ||
| - **Model test timestamps:** Added nullable `last_tested_at` metadata with the UTC instant of the test supporting each model status. | ||
| - **Generated model catalog:** API and MCP documentation tables are now rendered from `models.json`, keeping runtime tools and documentation aligned with one source of truth. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Promotes the
1.1.4release candidate fromdevtoprod.Changes
textresponse format./rest/models/config/v2.Validation
uv build