Skip to content

docs(specs): update SPEC-PLATFORM-SERVICE post v1.1.0#461

Open
omid-aignostics wants to merge 9 commits intomainfrom
docs/update-platform-spec-post-v1.1.0
Open

docs(specs): update SPEC-PLATFORM-SERVICE post v1.1.0#461
omid-aignostics wants to merge 9 commits intomainfrom
docs/update-platform-spec-post-v1.1.0

Conversation

@omid-aignostics
Copy link
Collaborator

Summary

Test plan

  • No functional changes — documentation/specification update only.

omid-aignostics and others added 9 commits March 4, 2026 17:22
…n tests

- Refine SHR-UTILS-1: remove plugin references, use Developers actor
- Add SHR-UTILS-2 (Plugin System for SDK Extension) with SWR-UTILS-2-1/2/3
- Update SPEC-UTILS-SERVICE with new SWRs and FR-11/12/13
- Add TC-UTILS-PLUGIN-02/03 feature files linked to SWR-UTILS-2-2/3
- Add plugin integration tests for CLI and GUI plugin registration
- Extend mcp_dummy_plugin with Typer CLI and BaseNavBuilder artifacts
- Fix di_test.py: replace non-existent SPEC-UTILS-DI refs with SPEC-UTILS-SERVICE

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Non-test source files (e.g. dummy plugin modules) live under tests/resources/
and should not be required to follow the *_test.py naming convention.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Escape dot in main\.py and group alternation for correctness and clarity.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ftest

Move the session-scoped install_dummy_plugin fixture from plugin_test.py
and mcp_test.py into a shared tests/aignostics/utils/conftest.py so the
package is only installed/uninstalled once per session regardless of how
many test files use it.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Backslash must be doubled in YAML double-quoted strings.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Fix audit pipeline failures by upgrading vulnerable packages:
- lxml-html-clean 0.4.3 → 0.4.4 (fixes CVE-2026-28348, CVE-2026-28350)
- authlib 1.6.6 → 1.6.9 (fixes CVE-2026-28802)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- FR-04: add 'test' to supported deployment environments (#422)
- ApplicationRun.results(): document item_ids and external_ids filter parameters (#442)

skip:ci, skip:test:long-running, skip:test:matrix-runner, skip:test:very-long-running

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings March 5, 2026 09:05
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates specifications to reflect recent Platform API/environment changes and extends the Utils specification with a plugin system, adding integration test scaffolding (dummy plugin + tests) to validate plugin discovery/registration.

Changes:

  • Update SPEC_PLATFORM_SERVICE to include the test environment and document ApplicationRun.results() filtering parameters.
  • Extend SPEC-UTILS-SERVICE + add new requirements/features around plugin discovery and CLI/GUI registration.
  • Add integration tests + a dummy plugin package used to verify plugin auto-discovery (and update pre-commit exclusion for test resources).

Reviewed changes

Copilot reviewed 18 out of 19 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
uv.lock Updates locked dependency versions (authlib, lxml-html-clean).
specifications/SPEC_PLATFORM_SERVICE.md Docs/spec updates for environments and ApplicationRun.results() signature.
specifications/SPEC-UTILS-SERVICE.md Adds FRs for plugin discovery + CLI/GUI registration.
requirements/SHR-UTILS-1.md Refines requirement wording/scope for MCP server audience and functionality.
requirements/SHR-UTILS-2.md Introduces high-level requirement for SDK plugin extensibility.
requirements/SWR-UTILS-2-1.md Adds requirement for plugin module discovery/loading.
requirements/SWR-UTILS-2-2.md Adds requirement for plugin CLI command integration.
requirements/SWR-UTILS-2-3.md Adds requirement for plugin GUI page integration.
tests/resources/mcp_dummy_plugin/pyproject.toml Dummy plugin package metadata + entry point registration for tests.
tests/resources/mcp_dummy_plugin/src/mcp_dummy_plugin/_cli.py Dummy Typer CLI contributed by plugin.
tests/resources/mcp_dummy_plugin/src/mcp_dummy_plugin/_nav.py Dummy GUI nav builder contributed by plugin.
tests/resources/mcp_dummy_plugin/src/mcp_dummy_plugin/__init__.py Exposes dummy plugin CLI/nav for discovery.
tests/aignostics/utils/conftest.py Adds session fixture to install/uninstall dummy plugin for integration tests.
tests/aignostics/utils/mcp_test.py Reuses shared plugin-install fixture; removes in-test install logic.
tests/aignostics/utils/plugin_test.py New integration tests for plugin CLI + GUI nav registration/discovery.
tests/aignostics/utils/di_test.py Updates recorded spec ID metadata for DI tests.
tests/aignostics/utils/TC-UTILS-PLUGIN-02.feature Feature spec for plugin CLI registration.
tests/aignostics/utils/TC-UTILS-PLUGIN-03.feature Feature spec for plugin GUI nav registration.
.pre-commit-config.yaml Excludes tests/resources/ from the name-tests-test hook.

Comment on lines +27 to +32
subprocess.run(
[sys.executable, "-m", "pip", "install", "--no-deps", "-e", str(DUMMY_PLUGIN_DIR)],
check=True,
capture_output=True,
text=True,
)
Copy link

Copilot AI Mar 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The session fixture installs the dummy plugin via pip install -e. With a PEP 517 backend (hatchling), pip will use build isolation by default, which can trigger additional build-env installs and potentially network access during test runs. Consider adding --no-build-isolation (and ensuring hatchling is available in the test environment) to make the integration tests more reliable and faster in constrained CI environments.

Copilot uses AI. Check for mistakes.
Comment on lines +1 to +5
"""Integration tests for plugin CLI and GUI registration."""

from __future__ import annotations

from typing import TYPE_CHECKING
Copy link

Copilot AI Mar 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR description indicates “documentation/specification update only”, but this PR also adds new integration tests and a dummy plugin package under tests/resources. Please update the PR description/test plan (or split into separate PRs) so reviewers/CI expectations match the actual scope and runtime effects (pip install/uninstall during tests).

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants