Some checks failed
release / build-release (push) Has been cancelled
- IChannel: creators -> sub-channels -> video posts (public listing API, search mapped) - IRequiresMediaInfoCallback -> signed proxy URLs; stream controller rewrites HLS so the AES-128 key is fetched server-side with the session cookie, segments stay on the CDN - delivery/info cached per token lifetime and throttled (~2/min) - config page: paste sails.sid + validate, extra creators, quality, search test - scripts/package.sh -> plugin folder + zip + md5 + manifest.json; Gitea release workflow - research docs, HAR analysis (HAR itself gitignored), install-pi5.sh Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
25 lines
1006 B
Markdown
25 lines
1006 B
Markdown
# API shape artifacts (Phase 3.1)
|
|
|
|
Authenticated (and optional unauth list) **response field-tree** baselines for the
|
|
Floatplane API Watch canary. Separate from `artifacts/frontend/`.
|
|
|
|
```
|
|
artifacts/api-shape/
|
|
baselines/{endpointId}.schema.json
|
|
captures/{captureId}/
|
|
meta.json
|
|
trees/{endpointId}.schema.json
|
|
diff.json
|
|
report.md
|
|
refresh-evidence.local.json # gitignored — local probe output
|
|
refresh-lifetime-evidence.json # committed redacted lifetimes (no tokens)
|
|
```
|
|
|
|
- Commit baselines and reviewable capture reports (structure only).
|
|
- Never commit access/refresh tokens, DPoP private keys, or raw response bodies with PII/content.
|
|
- Auth session: `state/api-shape-auth.local.json` (gitignored; refresh + DPoP).
|
|
- Schedule: `make api-shape-schedule-json` (separate from Phase 1/2 frontend watch).
|
|
- Offline refresh window (live 2026-10-11): `refresh_expires_in=7776000` (90d sliding) with rotation.
|
|
|
|
See `tools/fp-api-shape-canary/README.md` and `automation/PROMPT.md`.
|