feat(content-node): CID allowlist and takedown denylist for the public gateway
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 30/100
Línea de trabajo
Start with dependency #71 and the spike it produces; the issue does not identify implementation files or tests. Decide whether Kubo configuration, a reverse proxy rule, or a Boxo-based gateway fits the spike, then trace how the audit collection and provenance storage provide allowed CIDs and how admins maintain the denylist. Done means unlisted and denylisted CIDs are refused, with behavior covered by a test.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Make sure the public gateway only serves platform-published content and can drop content on request.
Estimated size: M
Motivation
Otherwise the gateway is an open proxy to the IPFS network at our cost.
Proposal
- Implement in the form the spike recommends (reverse-proxy rule, Kubo setting or a small Boxo-based gateway).
- Allowlist fed from the audit collection and the provenance storage references; denylist maintained by admins.
Acceptance criteria
- A request for a CID not on the allowlist is refused.
- Denylisted CIDs are refused even if allowlisted.
- Behavior is covered by a test.
Technical notes and risks
- Conditional: if the spike shows Kubo configuration is enough, adapt the scope to that.
Dependencies
- #71
Part of #43. Ground rules for the content layer: no secrets in the repo, content-layer failures must never block or discard quantum execution, and tests and docs ship with every PR.
- Lenguaje dominante
- Python
- Estrellas
- 2
- Forks
- 4
- Merge medio
- 5 h 19 min
- PR fusionados (30 d)
- 11
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de QMeshPy/distributed-quantum
-
enhancement good first issue helia storage tier-1
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
QMeshPy/distributed-quantum#53 ·
Los mantenedores suelen responder en 1 día
-
chain-integration enhancement payments research-spike tier-2
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
QMeshPy/distributed-quantum#78 ·
Los mantenedores suelen responder en 1 día
-
chain-integration enhancement payments research-spike tier-2
Dificultad 3/5 1-2 días Aptitud para principiantes 66/100
QMeshPy/distributed-quantum#77 ·
Los mantenedores suelen responder en 1 día
-
chain-integration enhancement payments tier-2
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
QMeshPy/distributed-quantum#76 ·
Los mantenedores suelen responder en 1 día
-
documentation good first issue kubo storage tier-1
Dificultad 2/5 1-3 horas Aptitud para principiantes 42/100
QMeshPy/distributed-quantum#75 ·
Los mantenedores suelen responder en 1 día
Todos los issues de QMeshPy/distributed-quantum
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
gramaziokohler/compas_timber#870 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
autowarefoundation/autoware_carla_scenario#500 ·
Los mantenedores suelen responder en 1 día
-
good first issue priority: low size: XS testing
Dificultad 1/5 1-3 horas Aptitud para principiantes 86/100
cubrid-lab/cubrid-mcp-server#385 ·
Los mantenedores suelen responder en 1 día
-
good first issue priority: low size: S testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
cubrid-lab/cubrid-cookbook-python#447 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100