|
| 1 | +# AGENTS.md |
| 2 | + |
| 3 | +## Project Purpose |
| 4 | + |
| 5 | +This repository contains a public catalogue of services offered by QTSPs |
| 6 | +participating in the WE BUILD project. |
| 7 | + |
| 8 | +The catalogue is intended to: |
| 9 | + |
| 10 | +- present participating QTSPs and their offerings clearly; |
| 11 | +- help use case groups discover relevant trust services and capabilities; |
| 12 | +- remain simple to publish as a static single-page application on GitHub Pages; |
| 13 | +- stay easy to maintain and contribute to, including for contributors with |
| 14 | + limited technical experience. |
| 15 | + |
| 16 | +## Product Scope |
| 17 | + |
| 18 | +The catalogue should allow each listed QTSP to present multiple trust services |
| 19 | +or functional roles. Examples include: |
| 20 | + |
| 21 | +- QEAA issuer |
| 22 | +- verifier |
| 23 | +- QES provider |
| 24 | + |
| 25 | +The structure should remain flexible so more service types and capabilities can |
| 26 | +be added in the future without major rework. |
| 27 | + |
| 28 | +## Implementation Expectations |
| 29 | + |
| 30 | +- The catalogue should remain a simple static site. |
| 31 | +- It should work well as a single-page application hosted on GitHub Pages. |
| 32 | +- It should support a dedicated single-QTSP view on top of the current |
| 33 | + catalogue functionality. |
| 34 | +- Each QTSP should have a stable identifier that can be used in the URL, for |
| 35 | + example through a query parameter such as `?id=<qtsp-id>`. |
| 36 | +- When a valid QTSP identifier is present in the URL, the application should |
| 37 | + show only that QTSP's page or detail view. |
| 38 | +- When no QTSP identifier is present, the application should continue to show |
| 39 | + the normal catalogue overview. |
| 40 | +- The contribution flow should favor low-complexity edits over heavy tooling. |
| 41 | +- Prefer approaches that allow non-technical contributors to update content with |
| 42 | + minimal risk. |
| 43 | + |
| 44 | +## Contribution Principles |
| 45 | + |
| 46 | +When updating this project: |
| 47 | + |
| 48 | +- prioritize readability over cleverness; |
| 49 | +- keep the content structure easy to understand; |
| 50 | +- avoid introducing unnecessary build steps or deployment complexity; |
| 51 | +- preserve compatibility with GitHub Pages hosting; |
| 52 | +- make it straightforward to add, edit, or remove QTSP entries and their |
| 53 | + service offerings. |
| 54 | +- keep interoperability test results as a single source of truth outside this |
| 55 | + catalogue when they are maintained centrally. |
| 56 | + |
| 57 | +## How to update the catalogue |
| 58 | + |
| 59 | +Catalogue content lives in [`catalogue/catalogue.md`](catalogue/catalogue.md), where each |
| 60 | +organisation is one `##` section, ordered alphabetically by name. Edits to |
| 61 | +`index.html` are not needed — the page renders the markdown at load time. |
| 62 | + |
| 63 | +Contributors typically do not have write access, so changes are submitted via a |
| 64 | +**fork and pull request** against the upstream repository |
| 65 | +`webuild-consortium/wp4-qtsp-group`: |
| 66 | + |
| 67 | +1. Fork the upstream repo to your own account (the GitHub "Edit this file" pencil |
| 68 | + offers to do this automatically, or run `gh repo fork webuild-consortium/wp4-qtsp-group --clone`). |
| 69 | +2. Add or edit your organisation's section in `catalogue/catalogue.md`, following |
| 70 | + the entry template and keeping entries alphabetical. Use `TODO` for any field |
| 71 | + not yet available. |
| 72 | +3. Commit on a branch in your fork and open a pull request against `main` of the |
| 73 | + upstream repository. |
| 74 | + |
| 75 | +Step-by-step instructions, including the full entry template and both web-UI and |
| 76 | +command-line flows, are in [`catalogue/README.md`](catalogue/README.md). |
| 77 | + |
| 78 | +## Content Model Guidance |
| 79 | + |
| 80 | +Each QTSP entry should be able to include: |
| 81 | + |
| 82 | +- a unique id suitable for use in URLs; |
| 83 | +- the QTSP name; |
| 84 | +- a short description; |
| 85 | +- one or more trust services or functionalities; |
| 86 | +- a QTSP-level reference to the shared conformance or interoperability test |
| 87 | + results source; |
| 88 | +- optional supporting details relevant for use case groups. |
| 89 | + |
| 90 | +The model should support one QTSP having several listed services at the same |
| 91 | +time. |
| 92 | + |
| 93 | +Interoperability or conformance test results should not be duplicated under |
| 94 | +individual attestations when a shared central source exists. In that case, the |
| 95 | +catalogue should reference the central source once at QTSP level. |
0 commit comments