mirror of
git://f0xx.org/android_cast
synced 2026-07-29 05:17:39 +03:00
4.1 KiB
4.1 KiB
Tickets, Gitea, and alpha smoke delegation
Gitea (/app/androidcast_project/git/)
Public URL should return Gitea HTML (assets under /app/androidcast_project/git/assets/…).
If clone/push fails while the page loads:
- Clone URL must include the subpath, e.g.
https://apps.f0xx.org/app/androidcast_project/git/<owner>/<repo>.git - Gitea
app.inion BE (:3000):
ROOT_URL = https://apps.f0xx.org/app/androidcast_project/git/
DOMAIN = apps.f0xx.org - FE
nginx.conf~983–996:proxy_pass http://artc0.intra.raptor.org:3000/;only works if Gitea is configured for that subpath (your HTML manifest suggests it is). - BE: Gitea must listen on
10.7.16.128:3000(or0.0.0.0:3000); no extra nginx required unless you proxy git through:80too.
Symptom checklist: 502 → Gitea down; broken CSS → ROOT_URL wrong; 401 on push → credentials / token; 404 on clone → remote path missing subpath.
Alpha smoke tickets (typical DB id → block)
Ingest order from tmp/alpha_smoke_round1.txt (skips pure “pass” rows):
| id (typical) | Block | Theme | Delegation |
|---|---|---|---|
| 1 | A3 | PIN/cast OK; rotation + preview NOK | App: sender preview / rotation crash |
| 2 | A4 | Video OK; frame drops, low res, few TX losses | App: UDP/encoder quality; monitor NDK only if native crashes appear |
| 3 | A5 | Audio works; laggy sound | App: AAC pipeline / jitter buffer |
| 4 | A6 | Notification resolution | Often lower priority (pass with notes) |
| 5 | A7 | Stop OK; wrong lifecycle (resume, notifications) | App: CastForegroundService, notification intents, task stack |
| 6 | A9 | Repeat soak; lifecycle again | Same as #5 |
| 7 | (manual) | Delegation / process | Console: assignees, workflow, comments (this doc) |
Confirm ids in UI (title contains Alpha smoke A3 etc.).
Console features (implementation)
| Feature | Status |
|---|---|
Workflow state (triage → in_progress → blocked / wont_fix → done) |
Migration 004 + UI |
| Assignees (0..n users, chip picker) | assignees_json + API |
| Comments (thread on ticket) | ticket_comments + API |
| Email notify reporter | Nice-to-have later |
| Attachments (files + links) | Migration 005 + ticket UI |
| Google Suite (OAuth, embed, Chat/Meet hooks) | Phase 2 — see below |
Attachments (deploy)
mysql -u root -p androidcast_crashes < examples/crash_reporter/backend/sql/migrations/005_ticket_attachments.sql
chown -R www-data:www-data examples/crash_reporter/backend/storage
- Links: paste HTTPS URL; Google hosts auto-tagged (Docs, Sheets, Slides, Drive, Meet, Chat, Forms).
- Files: stored under
backend/storage/ticket_attachments/{ticket_id}/, download via/api/ticket_attachment.php?id=….
Google Workspace — phase 2 (not implemented)
Requires Google Cloud project, OAuth consent, service account or user OAuth:
| Product | Integration idea |
|---|---|
| Docs / Sheets / Slides | Picker API → attach link + optional embed iframe |
| Drive | File picker + shared-drive ACL |
| Meet | Attach recording link after call |
| Chat | Webhook or Chat API for ticket updates |
| Gmail | Optional notify assignees |
Until then, paste share links — the console labels them and opens in a new tab.
Deploy migration (MariaDB, as root):
mysql -u root -p androidcast_crashes < examples/crash_reporter/backend/sql/migrations/004_ticket_workflow.sql
Agent / engineering queue (from your list)
- #1 (A3 NOK) — Reproduce rotation + preview crash; separate from PIN path.
- #5 / #7 / #6 (lifecycle) — Audit cold start, recents, notification tap, stop/receive; align with alpha A7/A9.
- #3 (laggy audio) — Measure end-to-end latency sender → receiver; tune buffer / sync.
- #2 (TX losses) — Log UDP gaps; recovery already OK — reduce loss if easy win.
- NDK — Only if crash console shows native reports for these sessions.
Use ticket comments for findings; set workflow + assignees when you hand off.