You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Após #174 mergeado (coverage 30.09%, floor 28), próximo bloco do roadmap: admin pages + endgame do dashboard antigo. Tudo 0% atualmente, somando ~1227 LOC. Caminho crítico tocando dados persistidos (form schema, submission edit).
Sprints (cada um = 1 commit no PR único)
Sprint M — ffc-admin.js (494 LOC)
Hub do admin geral. Likely contém:
Geração de códigos randômicos (ajax_generate_random_codes handler já existe no PHP)
Load template (HTML pré-fab)
Possivelmente tabs, modais, validações de form admin
Pattern: mock $.ajax, simula clicks/submits, asserta side effects no DOM.
Target: 50%+. ~10-12 testes.
Sprint N — ffc-admin-field-builder.js (323 LOC)
UI de construção de fields do form. Cada field tem tipo (text/select/radio/checkbox/etc.), label, name, options, required flag. Drag-and-drop reorder. Add/delete row.
Pattern: render template + simula clicks de add/delete, asserta estrutura DOM resultante.
Target: 50%+. ~12-15 testes.
Sprint O — ffc-admin-submission-edit.js (192 LOC)
Edição inline de submission (admin altera dados de submissões). AJAX-bound.
Pattern: mock $.ajax, simula form submit, asserta success/error paths.
Target: 60%+. ~8-10 testes.
Sprint P — ffc-certificates-dashboard.js (218 LOC)
O único arquivo do "dashboard antigo" ainda 0%. Renderiza um calendário mensal de forms keyed por geofence start date (depende de FFCCalendarCore — pode complicar).
Verificar primeiro se vale o esforço: se for puramente bridge para o FullCalendar excluído, possivelmente excluir formalmente em vez de testar.
Target (se testável): 50%+. ~8 testes.
Sprint Q — Floor ratchet
Após M+N+O+P, mede baseline. Estimativa: 30.09% → 40-45%. Floor sobe pra ~38-42%.
Background
Após #174 mergeado (coverage 30.09%, floor 28), próximo bloco do roadmap: admin pages + endgame do dashboard antigo. Tudo 0% atualmente, somando ~1227 LOC. Caminho crítico tocando dados persistidos (form schema, submission edit).
Sprints (cada um = 1 commit no PR único)
Sprint M —
ffc-admin.js(494 LOC)Hub do admin geral. Likely contém:
ajax_generate_random_codeshandler já existe no PHP)Pattern: mock
$.ajax, simula clicks/submits, asserta side effects no DOM.Target: 50%+. ~10-12 testes.
Sprint N —
ffc-admin-field-builder.js(323 LOC)UI de construção de fields do form. Cada field tem tipo (text/select/radio/checkbox/etc.), label, name, options, required flag. Drag-and-drop reorder. Add/delete row.
Pattern: render template + simula clicks de add/delete, asserta estrutura DOM resultante.
Target: 50%+. ~12-15 testes.
Sprint O —
ffc-admin-submission-edit.js(192 LOC)Edição inline de submission (admin altera dados de submissões). AJAX-bound.
Pattern: mock
$.ajax, simula form submit, asserta success/error paths.Target: 60%+. ~8-10 testes.
Sprint P —
ffc-certificates-dashboard.js(218 LOC)O único arquivo do "dashboard antigo" ainda 0%. Renderiza um calendário mensal de forms keyed por geofence start date (depende de
FFCCalendarCore— pode complicar).Verificar primeiro se vale o esforço: se for puramente bridge para o FullCalendar excluído, possivelmente excluir formalmente em vez de testar.
Target (se testável): 50%+. ~8 testes.
Sprint Q — Floor ratchet
Após M+N+O+P, mede baseline. Estimativa: 30.09% → 40-45%. Floor sobe pra ~38-42%.
Estimativa total
Mocking infrastructure reutilizada
mockAjaxSuccess(response)/mockAjaxError(xhr)de [Coverage] Deep — profile panel + device-signals pipeline + frontend AJAX flows #173.installXXX()helpers se algum admin tocar terceiros.Out of scope
ffc-csv-download.js(668 LOC, File API) — próximo PR.ffc-reregistration-frontend.js(507 LOC) — próximo PR.ffc-audience-admin.js,ffc-reregistration-admin.js,ffc-custom-fields-admin.js,ffc-url-shortener-admin.js,ffc-admin-move-submissions.js,ffc-recruitment-admin.js— admin médio, PR próprio.ffc-audience.js(skipped via [Skipped] Sprint J — split ffc-audience.js (won't do, see body) #167).Branch / PR
claude/js-coverage-admin-and-certs-dashboardAcceptance
npm run test:js≥ 250 tests (era 208).npm run test:js:coverageoverall ≥ 38%.lint.ymlratchets pra valor ~1.5-2% abaixo do novo baseline.