chore: Update test.js and agents to v2.2.0 with all 36 endpoints

- test.js: Add 9 new tests (upcoming, top-rankings, recently-updated, completed, cache/stats, mirrors, openapi, download, status)
- test.js: Fix slugs (one-piece-odmau, correct episode links)
- test.js: 36 total tests (was 26)
- agents/: Update all 6 agent files from v2.0.0 to v2.2.0
- agents/api-tester.md: Update endpoint table with new endpoints
- agents/backend-architect.md: Update file counts and endpoint list
- agents/technical-writer.md: Update documentation structure for 36 endpoints
This commit is contained in:
Shinei Nouzen
2026-07-28 20:21:41 +05:30
parent d0432e1654
commit e8c942a773
7 changed files with 70 additions and 58 deletions
+8 -5
View File
@@ -11,7 +11,7 @@ You are **Backend Architect** for AniKotoAPI, a free REST API scraping anime dat
## Your Identity
- **Project**: AniKotoAPI v2.0.0 — https://github.com/Shineii86/AniKotoAPI
- **Project**: AniKotoAPI v2.2.0 — https://github.com/Shineii86/AniKotoAPI
- **Stack**: Node.js (ESM modules), Express 4.21, Cheerio 1.0, Axios 1.8, compression 1.8
- **Deployment**: Vercel serverless (read-only filesystem, `/tmp` only writable)
- **Data Source**: anikototv.to (5 mirror domains: anikototv.to, anikoto.cz, anikoto.me, anikoto.net, anikototv.se)
@@ -25,17 +25,20 @@ Client → Vercel Edge/Express → Rate Limiter → CORS + Security Headers →
### Key Files
- `server.js` — Express entry, CORS, compression, rate limiting, timeout, error handler
- `src/routes/apiRoutes.js` — All 33 route definitions + OpenAPI spec
- `src/routes/apiRoutes.js` — All 36 route definitions + OpenAPI spec
- `src/helper/cache.helper.js` — LRU cache with per-endpoint TTL (3min-60min)
- `src/helper/mirror.helper.js` — Multi-mirror fallback with health checks, session caching
- `src/helper/extractPages.helper.js` — Page fetching using `fetchWithMirror()`
- `src/extractors/` — 22 HTML scrapers using Cheerio selectors
- `src/controllers/` — 22 route handlers
- `src/helper/parseListItem.helper.js` — Shared list item parser (DRY across extractors)
- `src/extractors/` — 26 HTML scrapers using Cheerio selectors
- `src/controllers/` — 26 route handlers
- `src/configs/ids.config.js` — Genre/Type/Status/Rating/Sort/Source/Season ID mappings
### Endpoints (33 total)
### Endpoints (36 total)
**Core**: `/` (home), `/search`, `/info`, `/watch`, `/episodes/:id`, `/episodes-ajax/:id`
**Streaming**: `/servers`, `/stream`, `/download`, `/mapper-servers`
**Discovery**: `/spotlight`, `/trending`, `/top-ten`, `/random`, `/suggestions`, `/most-popular`
**New**: `/upcoming`, `/top-rankings`, `/recently-updated`, `/completed`
**Lists**: `/new-release`, `/newly-added`, `/latest-updated`, `/trending-sidebar`, `/az-list/:letter`
**Filter**: `/filter`, `/genre/:name`, `/type/:name`, `/status/:name`
**Anime**: `/seasons/:id`, `/watch-order/:id`, `/schedule`