@@ -24,41 +24,59 @@ const rateLimiter = createRateLimiter({ max: 60, windowMs: 60 * 1000 })
2424export function akritesRouter ( ) : Router {
2525 const router = Router ( )
2626
27- router . get ( '/metrics' , safeWrap ( metricsHandler ) )
27+ router . get (
28+ '/metrics' ,
29+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all' ) ,
30+ safeWrap ( metricsHandler ) ,
31+ )
2832 // /packages/scatter registered before router.use('/packages', ...) so Express evaluates this
2933 // explicit route first; without this ordering the sub-router would receive the request first
3034 // and call next() on no match, adding unnecessary overhead.
31- router . get ( '/packages/scatter' , rateLimiter , safeWrap ( packageScatterHandler ) )
32- router . get ( '/packages' , rateLimiter , safeWrap ( packageListHandler ) )
33- router . get ( '/activity' , safeWrap ( activityFeedHandler ) )
35+ router . get (
36+ '/packages/scatter' ,
37+ rateLimiter ,
38+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all' ) ,
39+ safeWrap ( packageScatterHandler ) ,
40+ )
41+ router . get (
42+ '/packages' ,
43+ rateLimiter ,
44+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all' ) ,
45+ safeWrap ( packageListHandler ) ,
46+ )
47+ router . get (
48+ '/activity' ,
49+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all' ) ,
50+ safeWrap ( activityFeedHandler ) ,
51+ )
3452
3553 // --- packages ---
3654 router . post (
3755 / ^ \/ p a c k a g e s : b a t c h - s t e w a r d s h i p \/ ? $ / ,
3856 rateLimiter ,
39- requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'any ' ) ,
57+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all ' ) ,
4058 safeWrap ( batchGetStewardship ) ,
4159 )
4260 const packagesSubRouter = Router ( )
4361 packagesSubRouter . use ( rateLimiter )
4462 packagesSubRouter . get (
4563 '/metrics' ,
46- requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'any ' ) ,
64+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all ' ) ,
4765 safeWrap ( getPackagesMetrics ) ,
4866 )
4967 packagesSubRouter . get (
5068 '/detail' ,
51- requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'any ' ) ,
69+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all ' ) ,
5270 safeWrap ( getPackage ) ,
5371 )
5472 packagesSubRouter . get (
5573 '/advisories' ,
56- requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'any ' ) ,
74+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all ' ) ,
5775 safeWrap ( getPackageAdvisories ) ,
5876 )
5977 packagesSubRouter . get (
6078 '/history' ,
61- requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'any ' ) ,
79+ requireScopes ( [ SCOPES . READ_PACKAGES , SCOPES . READ_STEWARDSHIPS ] , 'all ' ) ,
6280 safeWrap ( getPackageHistory ) ,
6381 )
6482 router . use ( '/packages' , packagesSubRouter )
0 commit comments