mirror of
https://gh.wpcy.net/https://github.com/fairpm/fair-protocol.git
synced 2026-06-20 02:22:26 +08:00
Signed-off-by: Mika Ipstenu Epstein <ipstenu@ipstenu.org> Signed-off-by: Brent Toderash <brent@toderash.net> Signed-off-by: Ipstenu (Mika Epstein) <Ipstenu@users.noreply.github.com> Signed-off-by: Claudio Rimann <claudio@haptiq.studio> Signed-off-by: Joe Murray <joe.murray@jmaconsulting.biz> Signed-off-by: Ryan McCue <me@ryanmccue.info> Co-authored-by: Brent Toderash <brent@toderash.net> Co-authored-by: Claudio Rimann <claudio@haptiq.studio> Co-authored-by: Joe Murray <joe.murray@jmaconsulting.biz> Co-authored-by: Ryan McCue <me@ryanmccue.info>
23 lines
2 KiB
Markdown
23 lines
2 KiB
Markdown
# Submitting Aggregators to a Discovery Service
|
||
|
||
| <!-- --> | <!-- --> |
|
||
|----------|------------|
|
||
| Status | Proposal |
|
||
| Date | 2025-07-22 |
|
||
|
||
A Discovery Service is a higher-level directory that aggregates multiple Aggregators into a unified, federated search experience. It allows ecosystem stakeholders—like hosting companies, CMS vendors, or large developer communities—to curate and serve content from multiple trusted sources under one roof.
|
||
|
||
## Example Use Case
|
||
|
||
Let’s say **Hosting Company A** partners with **Dev Company 1** and **Dev Company 2.** Each of the dev companies runs their own Aggregator, listing packages from various Repositories they trust. Hosting Company A can build a Discovery Service that combines both Aggregators into a single interface or API, allowing end users to search across all included packages. Hosting Company A may also add its own custom plugins or themes by maintaining a Repository and Aggregator of its own.
|
||
|
||
This model enables the federation to scale **horizontally**, with many organizations creating trusted views of the ecosystem based on their needs and priorities—while still aligning with FAIR’s shared standards.
|
||
|
||
## Automated Checks
|
||
|
||
Before an Aggregator is accepted into a Discovery Service, it must pass the following automated compliance checks:
|
||
|
||
* **API compliance:** The Aggregator must fully implement the federation’s standardized API, including endpoints for search, metadata, and download resolution.
|
||
* **Security headers:** The Aggregator must be served over HTTPS and must include all required security headers (e.g., `Content-Security-Policy`, `X-Content-Type-Options`).
|
||
* **Repository integrity:** The Aggregator must only include Repositories that are compliant with FAIR federation guidelines. Aggregators found to be listing defederated or non-compliant Repositories may be rejected or flagged.
|
||
* **Rate limits and uptime:** The Aggregator must meet baseline performance standards for uptime and responsiveness, and implement reasonable rate-limiting or caching strategies to avoid abuse.
|