System requirements
System-level behavior, constraints and architecture allocation.
Executable criteria and retained results: Executable requirement coverage and Initial MVP consolidated verification.
The system shall resolve each RST view invocation against the completed host Needs collection and associate it with a unique view instance and all explicitly selected valid starting objects, or an artificial project-named root linked to the stakeholder requirements when no IDs are supplied. Any explicitly supplied unknown or host-hidden seed shall fail with the invocation source location. Acceptance criterion: Zero-, one- and multiple-ID invocations resolve independently. Zero IDs selects the project root; multiple valid IDs select every specified object. Any invalid explicit ID fails with the ID, filename and invocation location. |
The system shall obtain artifact and relationship definitions from the host project and validate supplemental layout and acceptance mappings before generating views. Acceptance criterion: Two differently named host schemas generate correctly mapped views without duplicate type definitions; an unknown level or missing required mapping fails with its entry path. |
The system shall deliver all graph data, detail content and runtime assets required for exploration in the generated documentation bundle without a runtime service or network dependency. Acceptance criterion: The same output supports navigation and local-object inspection under file URLs with networking disabled and under static HTTP hosting. |
The system shall make authored relationships between non-hidden objects traversable in either direction while excluding host-hidden objects and incident links and preserving genuinely unresolved target identities and delegating broken-trace build failure to host validation. Acceptance criterion: A cross-document chain can be followed from either end; a missing target appears as a placeholder and host validation determines overall build failure. |
The system shall preserve the configured artifact row order independently of the starting object. Classified test cases and executions use the host model’s resolved rows; a configured legacy test role retains right-side placement. Acceptance criterion: Software-, test- and execution-seeded views preserve nine-category order and same-row top alignment. Custom hardware rows retain their configured index. Shared identity, finite nonoverlap and endpoint identity hold in both classified-row and legacy-role configurations. |
The system shall provide locally rendered Need information and its original documentation location for inspection, using available metadata, the original link and an unavailable-details indication for external Needs without locally rendered bodies. Acceptance criterion: A locally rendered object on another page has equivalent displayed metadata/body in hover or keyboard details and opens at its original anchor from file and HTTP URLs. An external object without a local body shows metadata, its original link and the unavailable-details indication; widget-specific script behavior is not required. Uncached remote embedded media uses the owner-approved unavailable-offline indication and explicit resource link, without automatic retrieval; local bundled media remains available. |
The system shall isolate each embedded view’s exploration and viewport state from other views on the same page. Acceptance criterion: Expanding, zooming and panning one of two views leaves the other unchanged. |
The system shall expose the project graph for exploration while limiting each view to 200 visible node occurrences and committing only transitions that respect that limit. Acceptance criterion: A tens-of-thousands fixture remains explorable; a transition to 200 succeeds and one to 201 leaves prior state unchanged with an explanation. |
The system shall provide an installable extension usable in a separate host project with Python 3.10+, Sphinx 8.1.3 and Sphinx-Needs 8.2.0. Acceptance criterion: A built wheel installs into a clean host environment and produces an embedded HTML view without copying repository implementation files. |
The system shall support the initial release workflow in stable desktop Firefox on Windows. Acceptance criterion: All in-scope MVP interaction checks pass on recorded stable Firefox and Windows versions against file and static HTTP output. |
The system shall turn a reader-requested visible-area snapshot into a self-contained SVG, including the visible graph and opened detail content, without runtime server calls or access to files outside the documentation output. It shall delegate file location/name and cancellation to browser/OS save behavior, with documented prompt settings where needed. Acceptance criterion: A saved SVG reopens in the supported browser after the original documentation directory is unavailable, under file and HTTP hosting. It preserves the captured crop and visible content/styles, contains no executable behavior or required external resource requests, and neither cancellation nor failure changes exploration state. Missing required local resources produce a readable export failure rather than a misleading success. |