# Integration of Custom Test Infrastructure & DOORS Replacement This implementation plan outlines the steps required to finalize the `TESTING_GUIDELINES.md` document and set up the UniversalisOS testing ecosystem. It leverages the robust, custom-built test infrastructure (`uos-target`, `uos-cover`) already present in the codebase, and defines the architecture for a full IBM DOORS replacement using Proxmox and the Aurelio ecosystem. ## Proposed Changes ### 1. Update TESTING_GUIDELINES.md We will rewrite the testing guidelines to act as the official manual for the existing UniversalisOS toolchain rather than generic tools: - **Test Execution (`uos-target.py`)**: Tests are compiled directly into the kernel payload/firmware. `uos-target.py` manages the execution via QEMU, automatically parsing `pass`, `fail`, and `skip` results directly from the UART output. - **Code Coverage (`uos-cover`)**: Instead of generic host tools, we use the custom `uos-cover` suite (`uos_cins.py` for C instrumentation, `uos_cover.py`, `uos_covparse.py`, `uos_trace.py`) to achieve precise, bare-metal ARINC/ISO 26262 compliant coverage (MC/DC, branch, statement). - **Lower Level Requirements (LLR)**: Managed in `plane.portugalfuturista.org` and tied directly to the CI execution pipeline. ### 2. DOORS Replacement Architecture (HLRs) To fully replace IBM DOORS for Higher Level Requirements (HLR) management, we will implement the following architecture: #### A. Backend & Data Management (Proxmox + Doorstop) - **Doorstop Integration**: The core requirement tracking will use Doorstop (`tools/doorstop-integration`). - **Hosting**: The Doorstop backend and its associated Git repositories will be hosted in a dedicated **Proxmox** Virtual Machine or LXC container to ensure high availability and isolation. #### B. User Interface (Aurelio Ecosystem) We will build a simple, tabular UI that precisely replicates the classic IBM DOORS interface to ensure a seamless transition for requirements engineers. This will be built out across the Aurelio ecosystem: - **`janela-do-desassossego-web` (formerly `aurelio-web`)**: The primary web-based application for requirements engineers to view, edit, and link HLRs. It will feature a DOORS-like grid view. - **`aurelio-theia` / `aurelio-vscode`**: IDE extensions/integrations for the development team. This allows test engineers to view HLRs and keywords directly inside their editor alongside the test framework documentation, seamlessly tracing test cases (e.g., testing `uint32_t` corner cases) back to the Doorstop requirements.