docs planning history P32_UI_OPENING_20261005 - AlexandreZanata/Abastevo GitHub Wiki
Current execution state
-
BATCH 2026-10-05 LOCAL_DONE: P26 INTEGRATED (
938fc1f, PR #117); P32 T01–T04 + P33 T01–T03 code-ready and pushed (branchescodex/phase-32-station-profile-app,codex/phase-33-profile-acceptance); teste backend UNVERIFIED (Fortinet CA, curl 60, no bypass). Owed: end manual batch, required CI, cumulative PR/guarded merge, merged-SHA wiki, then G09/P10. Evidence: batch closure. iOS archived; G09 UNCERTIFIED; no production/pilot claim. -
P33-T03 LOCAL_DONE 2026-10-05 on
codex/phase-33-profile-acceptance: pinned candidate + handoff (candidate manifest, newprofile-review.mdrunbook; docs-only on tested tree, diff-check + secrets PASS; G33 code-ready, live/device/G09 OWED). Evidence: p33-t03. Phase P33 LOCAL_DONE (T01–T03 pushed); next: conjunto closure (manual batch → cumulative CI/PR/merge/wiki). No per-phase PR/merge/wiki; iOS archived; G09 UNCERTIFIED. -
P33-T02 LOCAL_DONE 2026-10-05 on
codex/phase-33-profile-acceptance: authority lifecycle locked end-to-end (open→reissue→approve→terminal-closed + rival isolation; test-only, 5/5-racepkgs ok, diff/secrets PASS; device/provider rows OWED). Evidence: p33-t02. -
P33-T01 LOCAL_DONE 2026-10-05 on
codex/phase-33-profile-acceptance: adversarial campaign (rival/divergent bursts + proof exhaustion; fixed real publish-window 404→Busy/409 + harness races; 10/10-raceGREEN, vet/fmt/compat/diff/secrets PASS). Evidence: p33-t01. -
P32-T04 LOCAL_DONE 2026-10-05 on
codex/phase-32-station-profile-app: offline/restart code acceptance (rule + recovery test; full domain/application/data/app suites 0-fail + assemble PASS, diff-check + secrets PASS; device/a11y rows OWED). Evidence: p32-t04. Phase P32 LOCAL_DONE (T01–T04 pushed); next: P33 via new phase branch. No PR/CI/merge/wiki per batch closure; iOS archived; G09 UNCERTIFIED. -
P32-T03 LOCAL_DONE 2026-10-05 on
codex/phase-32-station-profile-app: management/invitations/contest (capability rule + orchestration + action labels; RED→GREEN + assemble PASS, diff-check + secrets PASS; server-authoritative, no optimistic approval/replay). Evidence: p32-t03. -
P32-T02 LOCAL_DONE 2026-10-05 on
codex/phase-32-station-profile-app: claim export-sign-import (domain rule + application orchestration + status labels; RED→GREEN + assemble PASS, diff-check + secrets PASS; no PDF rewrite/key collection/backend change). Evidence: p32-t02. No PR/CI/merge/wiki per batch closure; iOS archived; G09 UNCERTIFIED. -
P32-T01 LOCAL_DONE 2026-10-05 on
codex/phase-32-station-profile-app: public profile/badge (domain/application/data/app, no migration/network; RED→GREEN badge/usecase/DTO/UI + assemble PASS, diff-check + secrets PASS; privacy by projection-filter tests). Evidence: p32-t01. -
P31-T04 LOCAL_DONE 2026-10-05 on
codex/phase-31-verified-representation: scoped edits + official replies (migration 000040, server-side privileges, at-time attribution; unit + PostGIS PASS, contracts green, full build PASS). Evidence: p31-t04. Next (other session): P31-T05 contestation/suspension. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P31-T03 LOCAL_DONE 2026-10-05 on
codex/phase-31-verified-representation: restricted review + atomic grants (migration 000039, tx convergence, moderation target; unit + PostGIS race PASS, suites green). Evidence: p31-t03. Next: P31-T04 edit/reply permissions. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P31-T02 LOCAL_DONE 2026-10-05 on
codex/phase-31-verified-representation: authority checker (linkage + powers + joint/mismatch/expiry rules; unit 4/4 PASS; sourcing stays OPEN). Evidence: p31-t02. Next: P31-T03 review/grants. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P31-T01 LOCAL_DONE 2026-10-05 on
codex/phase-31-verified-representation: signature/declaration verification (chain/validity/revocation vectors + VerifyProof service; synthetic PKI logic-only, real trust owed; unit + PostGIS PASS). Evidence: p31-t01. Next: P31-T02 company/authority verification. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P30-T04 LOCAL_DONE 2026-10-05 on
codex/phase-30-station-profiles: proof intake/expiry (migration 000038 + validation + metadata + 503-without-storage; unit + PostGIS PASS, contracts green, full build PASS). Evidence: p30-t04. Next: P30 phase exit, then P31 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P30-T03 LOCAL_DONE 2026-10-05 on
codex/phase-30-station-profiles: claims + one-use declarations (migration 000037 + service + routes + OpenAPI/wiring; unit + PostGIS lifecycle/privacy/race PASS, contracts green, full build PASS). Evidence: p30-t03. Next: P30-T04 proof intake/expiry. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P30-T02 LOCAL_DONE 2026-10-05 on
codex/phase-30-station-profiles: operator link + public unclaimed profile (new module, migration 000036, handler + OpenAPI/wiring; unit + PostGIS race/convergence PASS, contracts green, full build PASS). Evidence: p30-t02. Next: P30-T03 claims/declarations. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P30-T01 LOCAL_DONE 2026-10-05 on
codex/phase-30-station-profiles: profile contract freeze (ceremony/roles/fields/retention/states + 4 OPEN items; docs-only, links/secrets PASS). Evidence: p30-t01. Next: P30-T02 operator link/unclaimed profile. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P29-T03 LOCAL_DONE 2026-10-05 on
codex/phase-29-catalog-acceptance: candidate/handoff recorded (pinned SHAs, runbooks, G09/P10 prerequisites; P28 unselected, no SLA). Evidence: p29-t03. Next: P29 phase exit, then P30 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P29-T02 LOCAL_DONE 2026-10-05 on
codex/phase-29-catalog-acceptance: lifecycle reacceptance (PostGIS source→app chain + closed/replay honesty; backend + Android suites green; device rows owed). Evidence: p29-t02. Next: P29-T03 candidate/handoff. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P29-T01 LOCAL_DONE 2026-10-05 on
codex/phase-29-catalog-acceptance: capacity campaign (10k rows 5.3 s, burst p95 553 µs, catch-up + backlog + indexes PASS; simulation, no SLA). Evidence: p29-t01. Next: P29-T02 lifecycle reacceptance. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P27-T05 LOCAL_DONE 2026-10-05 on
codex/phase-27-station-intake: abuse/privacy/lifecycle (liveness gate, quota 20/21, races, cross-module suites green; retention/runbook explicit). Evidence: p27-t05. Next: P27 phase exit, then P29 via--from-checkpoint(P28 optional). No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P27-T04 LOCAL_DONE 2026-10-05 on
codex/phase-27-station-intake: suggest/correct/status journey (intake client/gateway/use cases + ViewModel/screen/nav + strings; 10 new tests PASS, full Android suites + assemble green). Evidence: p27-t04. Next: P27-T05 abuse/privacy/lifecycle. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P27-T03 LOCAL_DONE 2026-10-05 on
codex/phase-27-station-intake: Room v8 catalog cache + offline replay (Room 4/4 + migration guard PASS, memory retired, targets verified); full Android suites + assemble PASS. Evidence: p27-t03. Next: P27-T04 suggest/status journey. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P27-T02 LOCAL_DONE 2026-10-05 on
codex/phase-27-station-intake: verified decisions (exact-official auto-verify + audited review + unknown pins, worker job wired; unit + PostGIS approve/defer/projection/race PASS, full build PASS). Evidence: p27-t02. Next: P27-T03 Android catalog/cache/targets. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P27-T01 LOCAL_DONE 2026-10-05 on
codex/phase-27-station-intake: signed suggestions + private status (migration 000034 + service + handler + OpenAPI + api wiring; unit + PostGIS idempotency/isolation PASS, contracts green, full build PASS). Evidence: p27-t01. Next: P27-T02 decisions/corrections/locations. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P26-T03 LOCAL_DONE 2026-10-05 on
codex/phase-26-regulatory-discovery: review/catch-up/acceptance (weekday backfill, correction edges, runbook; unit 4/4 PASS; G26 BLOCKED on live access, recorded). Evidence: p26-t03. Next: P26 phase exit, then P27 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P26-T02 LOCAL_DONE 2026-10-05 on
codex/phase-26-regulatory-discovery: act classification + chronology/revocation (deterministic rules, no opening-date output; unit 6/6 + PostGIS grant→revoke same-identity PASS). Evidence: p26-t02. Next: P26-T03 review/catch-up/acceptance. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P26-T01 LOCAL_DONE 2026-10-05 on
codex/phase-26-regulatory-discovery: INLABS access/fetch/parse/checkpoints (RED→GREEN 7/7, no live access — explicit refusal, provisional fixtures). Evidence: p26-t01. Next: P26-T02 act classification/reconciliation. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P25-T05 LOCAL_DONE 2026-10-05 on
codex/phase-25-national-registry: jobs/acceptance (reconcile handler + disabled daily schedule + runbook + freshness query; handler 3/3 + platform/directory suites PASS, worker builds). Evidence: p25-t05. Next: P25 phase exit, then P26 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P25-T04 LOCAL_DONE 2026-10-05 on
codex/phase-25-national-registry: canonical reconciliation (complete-runs-only, stable UUIDs, revocation sticks, reviewed-point projection; unit 4/4 + PostGIS e2e/race + zero-price reads PASS, directory suites green). Evidence: p25-t04. Next: P25-T05 jobs/acceptance. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P25-T03 LOCAL_DONE 2026-10-05 on
codex/phase-25-national-registry: API discovery (typed traversal/targeted lookup, module-owned guarded transport, coordinate honesty; unit 8/8 + PostGIS traversal/replay/404 PASS, directory suites + vet green, no live fetch). Evidence: p25-t03. Next: P25-T04 reconciliation/reads. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P25-T02 LOCAL_DONE 2026-10-05 on
codex/phase-25-national-registry: bounded CSV staging (migration 000031 + sqlc +StageCSVwith run ledger/checksum/batches; unit 11/11 + PostGIS replay/concurrency/quarantine/recovery PASS, full directory suites green). Evidence: p25-t02. Next: P25-T03 API discovery. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P25-T01 LOCAL_DONE 2026-10-05 on
codex/phase-25-national-registry: source contracts frozen (REGISTRY_SOURCES policy + executableregistrypackage RED→GREEN 6/6 + v1 fixtures, provisional columns/budgets flagged). Evidence: p25-t01. Next: P25-T02 CSV staging. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P38-T03 LOCAL_DONE 2026-10-05 on
codex/phase-38-app-acceptance: candidate/handoff recorded (P34–P38 scope, trust/blocker state, P25 entry + final-closure plan; no integration claim). Evidence: p38-t03. Next: P38 phase exit, then P25 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P38-T02 LOCAL_DONE 2026-10-05 on
codex/phase-38-app-acceptance: consolidated end manual/device matrix planned (P24/P29/P33 + P35–P37 rows, execution OWED, no runs per directive). Evidence: p38-t02. Next: P38-T03 candidate/handoff. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P38-T01 LOCAL_DONE 2026-10-05 on
codex/phase-38-app-acceptance: integrated code regression (backend unit+PostGIS + full Android suites + assemble + contracts, 0 failures retained as 0); live/device rows owed, not waived. Evidence: p38-t01. Next: P38-T02 end manual matrix. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P37-T03 LOCAL_DONE 2026-10-05 on
codex/phase-37-live-contributions: storage/expiry verification (24h all-copy matrix PASS unit+PostGIS, no new semantics); live photo journey BLOCKED_MEDIA (no attached VPS storage), never fabricated. Evidence: p37-t03. Next: P37 phase exit, then P38 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P37-T02 LOCAL_DONE 2026-10-05 on
codex/phase-37-live-contributions: upload/outbox lifecycle (confirmed→enqueue with target+fuel-match guards, worker/gateway verified, no backend defect found); capture + contribution/outbox suites + assemble PASS; live UNVERIFIED, photo bytes out of live path. Evidence: p37-t02. Next: P37-T03 storage/expiry. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P37-T01 LOCAL_DONE 2026-10-05 on
codex/phase-37-live-contributions: contextual capture/review (ContributionTargetRED→GREEN + ViewModel bind + target-aware nav, legacy FAB flow kept); capture/nav suites + assemble + photo/OCR + evidence suites PASS; live UNVERIFIED. Evidence: p37-t01. Next: P37-T02 upload/outbox lifecycle. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P36-T03 LOCAL_DONE 2026-10-05 on
codex/phase-36-live-community: activity/account rights (session→discussion binding +2 tests, deletion/session-revocation verified, export contract frozen NOT IMPLEMENTED); app discovery 10/10 + full app suite PASS, backend account/identity/feedback/moderation race+PostGIS PASS. Evidence: p36-t03. Next: P36 phase exit, then P37 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P36-T02 LOCAL_DONE 2026-10-05 on
codex/phase-36-live-community: station/fuel feedback screens on canonical UUID targets (FeedbackTargetRED→GREEN 3/3 +StationFeedbackSectionin server detail, guest reads/signed writes, legacy untouched); stations+community suites + assemble PASS; live UNVERIFIED. Evidence: p36-t02. Next: P36-T03 activity/account rights. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P36-T01 LOCAL_DONE 2026-10-05 on
codex/phase-36-live-community: staging account/provider wiring locked (origin guard 3/3, auth/account/identity suites PASS, no creds in Git); provider delivery/device proof OWED, live UNVERIFIED (curl60, no bypass). Evidence: p36-t01. Next: P36-T02 feedback UUID wiring. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P35-T03 LOCAL_DONE 2026-10-05 on
codex/phase-35-live-discovery: search/degraded regression (transient nearby use case, cancellable loads, refresh-preserving selection, GPS-denied honesty; legacy untouched); application 7/7 + app 8/8 + full domain/application/data/app suites PASS, assemble PASS; live still UNVERIFIED (curl60, no bypass). Evidence: p35-t03. Next: P35 phase exit, then P36 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P35-T02 LOCAL_DONE 2026-10-05 on
codex/phase-35-live-discovery: Explore/station-detail integration (flag-gated server use cases + ViewModel UUID state + row/detail sheet + en/pt-BR, legacy untouched); new application/app suites 10/10 + existingStationsViewModelTestPASS, assemble PASS; live still UNVERIFIED (curl60, no bypass). Evidence: p35-t02. Next: P35-T03 search/degraded regression. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P35-T01 LOCAL_DONE 2026-10-05 on
codex/phase-35-live-discovery: canonical Directory UUID ports/cache (domainServerStation+ gateway/cache ports, data HTTP client/codec/gateway/memory-cache +DirectoryModule, legacy CNPJ untouched, no Room migration); RED→GREEN domain/data suites + Hilt KSP +:app:assembleDebugPASS; vacuum/apicontract/PostGIS PASS; live still UNVERIFIED (curl60, no bypass). Evidence: p35-t01. Next: P35-T02 Explore/detail integration. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P34 phase exit 2026-10-05 on
codex/phase-34-vps-connection(headd05c7d3, base0067e86): T01-T03 LOCAL_DONE; exit checks PASS once (apicontract, vacuum, directory/health PostGIS, ApiEnvironment--rerun-tasks, diff/secret, no-bypass). Record: p34 exit. Next: checkpoint then P35 via--from-checkpoint. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P34-T03 LOCAL_DONE 2026-10-05 on
codex/phase-34-vps-connection: bounded synthetic catalog spec (contracts/testdata/p34/catalog.jsonv1, 3 owned[P34-TEST]stations + 9 exercise cases); RED→GREENTestP34Catalog*+ full apicontract + vacuum + real-PostGIS directory PASS. NOT SEEDED, population unclaimed. Evidence: p34-t03. Next: P34 phase exit, then P35. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P34-T02 LOCAL_DONE 2026-10-05 on
codex/phase-34-vps-connection: sharedApiEnvironmentstaging origin wired into auth/identity/community/feedback/contribution DI; RED→GREENApiEnvironmentTest+ client/session regression + Hilt KSP +:app:assembleDebugPASS; vacuum/apicontract/health PASS; live still UNVERIFIED (curl60, no bypass). Evidence: p34-t02. Next: P34-T03 synthetic catalog spec. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
P34-T01 LOCAL_DONE 2026-10-05 on
codex/phase-34-vps-connection(9b4740c, base0067e86): staging client/flag/contract inventory + TLS verification without bypass. Livehttps://teste.abastevo.com.brUNVERIFIED (Fortinet middlebox CAFG6H0FTB23902129,curl60 on 4 probes); local vacuum/apicontract/health/directory-PostGIS + Android HTTPS tests PASS. Evidence: p34-t01. Next: P34-T02 explicit origin config. No PR/CI/merge/wiki per ADR-018; iOS archived; G09 UNCERTIFIED. -
App-first planning 2026-10-05: ADR-019, ANDROID_VPS_PLAN; branch
codex/phase-34-vps-app-plan, source baselineb4754b2. Next authorized implementation P34-T01, then P34–P38 Android/VPS source integration before P25–P33 catalog/profile scope. All new tasks PLANNED / LOCAL_ONLY; no runtime/server/publication done by this planning edit. -
Staging origin
https://teste.abastevo.com.br; 2026-10-05 read-only retries could not verify live JSON due runner/server certificate-chain trust (curlexit 60), not diagnosed as a VPS outage. Earlier smoke is historical. P34 verifies trust/contracts/data; private media/provider/device proof remains explicit. Continuation prompt. -
Cadence update 2026-10-05: explicit user request adopts ADR-018. P01-T18 local workflow implementation on
codex/phase-01-project-batch-flow, isolated from existing follow-up/planning work. Evidence: project batch validation. Remote rollout PENDING; no existing PR merged/closed here. -
Next construction: accepted local phase checkpoint → next authorized dependency branch; no CI polling/PR waits/merge/wiki between phases. At final project closure: acceptance matrix + cumulative PR + required current Quick verification/reviews + guarded merge + wiki once. Task critical tests remain immediate; manual Android batch OWED; iOS archived; G09 UNCERTIFIED unchanged.
-
Updated: 2026-10-01. User authorized current icons/plan publication and wiki Home alignment. ADR-016 records Android-first commercial direction and explicit iOS deferral.
-
Updated: 2026-10-05. P25 INTEGRATED: PR #111 (
a3c1eb3), issues #106–#110 CLOSED, wiki9ddc2e9. Phase 26 authorized: evergreen educational guides under milestone 20 and branchcodex/phase-26-landing-guides(issues #112–#116). -
P26-T01 LOCAL_DONE (issue #112): landing guides content contract created and approved; 3 evergreen guides specified (/guias/pesquisa-anp/, /guias/etanol-ou-gasolina/, /guias/como-ler-precos/) plus /guias/ hub index; strict B-BR-L01 truthfulness, B-BR-L04 static content, zero runtime deps;
git diff --checkPASS;bash scripts/scan-secrets.shPASS. -
P26-T02 LOCAL_DONE (issue #113): 4 static guias pages + hub authored with breadcrumbs/semantic HTML, discreet /guias/ nav/footer links, build.mjs extended; pre-existing guide CSS tokens preserved + EOF fix;
npm --prefix landing run buildPASS,run checkPASS,test21/21 PASS,git diff --checkPASS, secret scan PASS; SEO/sitemap stay P26-T03-owned. Next: P26-T03. -
P26-T03 LOCAL_DONE (issue #114): guides SEO complete — titles 42–51 chars, descs 149–157 chars, OG/Twitter large cards, CollectionPage/TechArticle+BreadcrumbList JSON-LD with unique IDs, sitemap 8 URLs (4 guides), llms.txt discovery, privacidade nav consistency preserved; titles paraphrased within bounds vs contract wording (recorded, not rewritten);
buildPASS,checkPASS,test21/21 PASS,diff --checkPASS, secret scan PASS. Next: P26-T04 regression tests. -
P26-T04 LOCAL_DONE (issue #115):
landing/tests/guides-content.test.mjs(3 suites: content/breadcrumbs/truthfulness, schemas/sitemap/llms, budgets) GREEN; 404/excluir/termos Guias nav consistency preserved;buildPASS,checkPASS,test24/24 PASS,test-gate-selection.sh15/15 PASS,diff --checkPASS, secret scan PASS. Next: P26-T05 release evidence/closure. -
P26-T05 LOCAL_DONE (issue #116):
docs/release-evidence/p26-landing-guides.mdrecorded (G26 local only; commits T01–T04 pushed);quick-verify.shok 10s at33cc11f; teste backend UNVERIFIED (Fortinet CA, curl 60, no bypass); PR #117 stays draft — manual/CI/cumulative-PR/guarded-merge/wiki OWED at conjunto closure. Next: Android P32 (branch isolada de P31). -
P25 INTEGRATED record: issues #106–#110 CLOSED, required Quick verification + CI/test PASS, merge commit
a3c1eb3, wiki snapshot9ddc2e9. G25-STATIC-READY achieved. -
Integrated history: G09-LOCAL/P09 PR #14 (
6f4f048); P12 #21 (bf40a44); P13 #27 (fb5ac45); P14 #33 (47bdffe); P15 #39 (207936b); P16 #44 (cb131b0); P10 local #54 (be680d1); P17 #59 (047a347). See preserved current-state history for gates/check/wiki evidence and limits; do not recreate merged tasks. -
P00-T01–T03 INTEGRATED: PR #66 (
fd3dbcd), approved brand/README/native vectors; wiki0cf4dce. Brand ledger. -
P18 local validation INTEGRATED: PR #67 (
9c090c6577b9cedb6119f9d5f8f8de96f2c6aa96), tested head37e21cc, required Quick verification + fast/integration SUCCESS; local quick PASS once; wikib4b6c97. Ledger, local exit. -
P18/G18 full acceptance remains NOT_ACCEPTED; issues #60–#62 and milestone 10 remain OPEN. Android instrumented regressions 2/2 PASS, cached-home 382ms; this is not full functional/cold-start/performance acceptance. Native iOS/device and local private-storage matrix gaps remain recorded.
-
iOS: DEFERRED_EXPLICIT_RESUME_ONLY, archived by explicit user request. No Mac; preserve source/KMP ports/assets/evidence. Resume only after a new explicit request, never automatically. Archived backlog.
-
G09: real-production RELEASE, DEFERRED_UNTIL_G24_ANDROID_COMMERCIAL, tracker #13. Historical full multiplatform G18 is not accepted; future Android/backend certification scope is explicit. No production deployment/tag/public pilot authorized by this plan.
-
P19 INTEGRATED: PR #75 (
b5ae5d7), issues #71–#74 CLOSED; G19 entry satisfied for P20. -
P20 INTEGRATED: PR #80 (
2788356), issues #76–#79 CLOSED with reason completed, required Quick verification SUCCESS; wiki472b331. G20 entry satisfied for P21. -
P21 INTEGRATED: PR #85 (
f24afd1), issues #81–#84 CLOSED with reason completed, required Quick verification SUCCESS; wiki9fbaf9b. G21 entry satisfied for P22. -
P22 INTEGRATED: PR #90 (
cdd395f), issues #86–#89 CLOSED with reason completed, required Quick verification SUCCESS; wiki12f75e8. G22 entry satisfied for P23. -
P23 INTEGRATED: PR #95 (
b4f664e), issues #91–#94 CLOSED with reason completed, required Quick verification SUCCESS; wiki2913d1d. G23 entry satisfied for P24. -
Previous delivery record: P10-T09 definition+smoke INTEGRATED (PR #104, merge
4cd745e, base59ea845; Quick verification SUCCESS; branch deleted local/remote verified). Issue #53 stays OPEN (launch blocked); #13, #60–#62 OPEN. Temp staging env RUNNING (isolated, local-only, teardown on owner word). Wiki: WIKI_PENDING. Remote/runtime state not reverified by P25 planning. -
User directive 2026-10-02 (PLANNING): no emulator/device runs — manual validation only after ALL P phases; code tests only until then. User further directed advancing with that future manual validation treated as valid: P24/G24 accepted BY USER DECISION, not by device evidence (record:
docs/release-evidence/p24-g24-user-acceptance.md). Manual batch stays OWED; G09 stays UNCERTIFIED; no deployment/tag/pilot authorized. -
P24 INTEGRATED: PR #100 (
aedfdd3, head guard9f46ff8, baseb4f664e), issues #96–#99 CLOSED with reason completed, required Quick verification + test SUCCESS; local quick PASS; branch deleted local/remote (verified). Acceptance by explicit user decision 2026-10-02 (code slices + deferred end manual batch; recorddocs/release-evidence/p24-g24-user-acceptance.md); wiki87683e6fromaedfdd3. G24 entry satisfied for P09/G09 by that decision. -
P23-T01 LOCAL_DONE (issue #91): duplicate-alert suppression for local opt-in price-drop alerts (once per vehicle per week; device-local history port + DataStore + codec + DI); no follows/subscriptions/backend push (no measured need, contract frozen for if-ever). Evidence:
docs/mobile/p23-t01-return-flows.md. Validation::domain:test408 +:application:test248 +:data:testDebugUnitTest207 (1 pre-existing skip), 0-fail;:app:assembleDebugPASS;git diff --checkPASS; secret scan PASS. -
P23-T02 LOCAL_DONE (issue #92): onboarding contributor page (4th intro page, safe/legible/honest guidance) + Help screen (contribute/rules/report-appeal/privacy, Perfil entry, en/pt-BR); no invite flow (no need). Evidence:
docs/mobile/p23-t02-onboarding-rules.md. Validation::app:testDebugUnitTest147/0-fail;:app:assembleDebugPASS;git diff --checkPASS; secret scan PASS. -
P23-T03 LOCAL_DONE (issue #93): frozen community metric definitions + pilot operating model (8 aggregates with purpose/denominator/window/min-aggregation/retention/status, low-coverage honesty, staffing checklist, measured-only costs); nothing new collected. Evidence:
docs/mobile/p23-t03-metrics-operations.md, definitionsdocs/product/COMMUNITY_METRICS.md. Validation: links/state checks PASS;git diff --checkPASS; secret scan PASS. -
P23-T04 LOCAL_DONE (issue #94): synthetic lifecycle rehearsal (onboarding→contribution→correction→report→moderate→notify→erase/export→no-coverage, all green) + pilot-city runbook + hypotheses evaluation (none implemented). Evidence:
docs/mobile/p23-t04-community-rehearsal.md, runbookdocs/operator/pilot-city.md. Validation: backend-racePostGIS feedback/moderation 0-fail,:domain:test408 +:application:test248 +:data:testDebugUnitTest207 (1 pre-existing skip) +:app:testDebugUnitTest147, 0-fail;:app:assembleDebugPASS;git diff --checkPASS; secret scan PASS. Phase P23 ready for exit / PR merge. -
P00-T04 LOCAL_DONE: issue #68, commit
1de6423; native Android white-background A and density/monochrome assets; assembly PASS, source/geometry/gradient/dimension/opacity checks PASS. iOS catalog PREPARED/DEFERRED, not compiled. Icon guide. -
P00-T05 LOCAL_DONE (issue #69, commit
28bf779): commercial community plan/new P19–P24 tasks, policy/iOS archive, current-state reconciliation and explicit wiki Home adoption. Plan, experience, batch evidence. -
Future source sequence: P34–P38 Android/VPS → P25/P26/P27/P29 catalog (P28 selected only) → P30/P31/P32/P33 profile → end manual/device acceptance → final cumulative CI/PR merge/wiki → P09/G09 real certification → P10 public pilot. P11 optional; iOS archived. New source tasks PLANNED, not executed by this planning batch.
-
Required protection: Quick verification, current head/base and guarded merge; immediate critical risk tests and local phase exit checkpoints; local quick/remote checks through finish at final project closure, merged-SHA wiki once per batch (ADR-018). No release evidence is inferred from plans.
-
User choices: comments/replies 280 Unicode scalar characters; free email-code/Google/Apple accounts; ANP is dated reference, community current projection primary; private audit photos all-copy maximum 24h; payment never changes trust/free social participation.
-
P19-T01 LOCAL_DONE (issue #71, commit
da637cb, draft PR #75): inherited screen/contract inventory, toolchain pins, P18 gaps carried forward;docs/mobile/p19-t01-baseline.md. Validation:git diff --checkPASS, secret scan PASS,:app:assembleDebugPASS. -
P19-T02 LOCAL_DONE (issue #72, commit
93487bb): frozen Explorar/Comunidade/Perfil + Atualizar-preço IA, source/condition hierarchy grounded inBackendPriceGroup, state matrix; novice testing explicitly PENDING. Evidence:docs/mobile/p19-t02-information-architecture.md. Validation:git diff --checkPASS, secret scan PASS,:domain:test --rerun-tasks378/0-fail. -
P19-T03 LOCAL_DONE (issue #73, commit
771d5b1): abastevo brand token aliases (no new hex), accessibleSourceTimeBadge(text+icon+screen-reader, no domain rules),app_name→ abastevo. Validation: RED→GREENSourceTimeBadgeTest3/0-fail,:app:testDebugUnitTest115/0-fail,:app:assembleDebugPASS. -
P19-T04 INTEGRATED (issue #74, PR #75
b5ae5d7): migrated navigation shell with frozen 3 tabs (Explorar/Comunidade/Perfil) + persistent primary action ("Atualizar preço" FAB), preserved legacy expert tools and deep link support. -
P20-T01 LOCAL_DONE (issue #76): bounded
DiscoveryQuery(city+fuel, search/sort/page 1..100, no GPS/account/photo fields) reusingBackendPriceGroupmoney/condition/dated-ANP semantics; no new backend index. Evidence:docs/mobile/p20-t01-discovery-contract.md. Validation:DiscoveryQueryTest6/0-fail,:domain:test384/0-fail,git diff --checkPASS, secret scan PASS. -
P20-T02 LOCAL_DONE (issue #77): list-first Explore (manual city + fuel chips + station-name search + price sort, no map) with failed-refresh cache recovery. Evidence:
docs/mobile/p20-t02-explore-journey.md. Validation:DiscoveryStationsRuleTest7/0-fail (RED→GREEN),StationsViewModelTest7/0-fail,:domain:test391/0-fail,:app:testDebugUnitTest126/0-fail,:app:assembleDebugPASS,git diff --checkPASS, secret scan PASS. -
P20-T03 LOCAL_DONE (issue #78): station detail bottom sheet (explicit no-coverage community slot, dated ANP reference with stale/unknown states, route + update-price actions, screen-reader source labels). Evidence:
docs/mobile/p20-t03-station-detail.md. Validation:StationDetailRuleTest6/0-fail (RED→GREEN),StationsViewModelTest9/0-fail,:domain:test397/0-fail,:app:testDebugUnitTest128/0-fail,:app:assembleDebugPASS,git diff --checkPASS, secret scan PASS. -
P20-T04 LOCAL_DONE (issue #79): discovery acceptance + legacy regression, no new behavior. Evidence:
docs/mobile/p20-t04-discovery-acceptance.md. Validation::domain:test397 +:application:test238 +:app:testDebugUnitTest128 = 763/0-fail (--rerun-tasks),:app:assembleDebugPASS,git diff --checkPASS, secret scan PASS. Novice campaign/device matrix stay P24-owned; no fake coverage. Phase P20 ready for exit / PR merge. -
P21-T01 LOCAL_DONE (issue #81): frozen contribution states (queued/pending/accepted/disputed/rejected, review precedence, cancelled → no status) + 24h evidence retention boundary, optional-photo API unchanged. Evidence:
docs/mobile/p21-t01-contribution-contract.md. Validation:ContributionStateRuleTest9/0-fail (RED→GREEN),:domain:test406/0-fail,git diff --checkPASS, secret scan PASS. -
P21-T02 LOCAL_DONE (issue #82): editable capture review (selectable OCR candidates, manual price entry, explicit fuel + condition picks, one explicit confirm; backend
SanitizeForward+ P15 budgets verified existing, no backend change). Evidence:docs/mobile/p21-t02-capture-review.md. Validation:PortablePriceOcrTest8 +ConfirmPriceCaptureUseCaseTest8 +CaptureOcrViewModelTest4, 0-fail;:domain:test408 +:application:test240 +:app:testDebugUnitTest129, 0-fail;:app:assembleDebugPASS;git diff --checkPASS; secret scan PASS. Low-end-device encode measurement stays P24-owned. -
P21-T03 LOCAL_DONE (issue #83): private owner status (durable
listOwned+ P21-T01 state mapping + cancel, Perfil card; payload location-integrity proof; no migration/backend change). Evidence:docs/mobile/p21-t03-outbox-status.md. Validation:RoomContributionOutboxRepositoryTest6 +GetOwnedContributionsUseCaseTest2 +EnqueueContributionUseCaseTest6 +ContributionStatusViewModelTest4, 0-fail;:domain:test408 +:application:test243 +:data:testDebugUnitTest200 (1 pre-existing live-network skip) +:app:testDebugUnitTest133, 0-fail;:app:assembleDebugPASS;git diff --checkPASS; secret scan PASS. Worker unit test + restart-restore proof stay P21-T04/P22-owned. -
P21-T04 LOCAL_DONE (issue #84): storage/expiry evidence, no product change (tmpfs PostGIS + S3Mock substituted for unreachable MinIO; evidence unit + integration 7/7 pkgs, backup 10/0, restore drill 9/0, no-storage path ok). Evidence:
docs/mobile/p21-t04-storage-expiry.md. Validation:go test -raceunit +-tags=integration,git diff --checkPASS, secret scan PASS. Full matrix/MinIO-parity stay future-owned. Phase P21 ready for exit / PR merge. -
P22-T01 LOCAL_DONE (issue #86): self-deletion in auth UX (two-step confirm, Deleted notice, failure keeps session) + session-aware Perfil card; export needs a backend extension (deferred). Evidence:
docs/mobile/p22-t01-account-journey.md. Validation:AuthViewModelTest13/0-fail, backend account+identity unit + real-PostGIS integration 0-fail,:app:testDebugUnitTest135/0-fail,:app:assembleDebugPASS,git diff --checkPASS, secret scan PASS. Real provider proof stays P24-owned. -
P22-T02 LOCAL_DONE (issue #87): ratings transport end-to-end (backend rate/remove/stats routes + OpenAPI + golden vectors, Android client, application stats read, ViewModel rate/delete/stats +
ratingLineseparate from price confidence); comments/replies/votes transport reused unchanged. Evidence:docs/mobile/p22-t02-ratings-comments-votes.md. Validation: backend feedback unit + real-PostGIS integration 0-fail,vacuum lintPASS,:domain:test408 +:application:test246 +:data:testDebugUnitTest203 (1 pre-existing live-network skip) +:app:testDebugUnitTest142, 0-fail;:app:assembleDebugPASS;git diff --checkPASS; secret scan PASS. Screen-level discussion wiring (needs CNPJ→UUID target mapping) is the next slice; moderation UI stays P22-T03. -
P22-T03 LOCAL_DONE (issue #88): report/moderation/support journey (user-facing moderation policy + frozen no-mute contract, Comunidade report & moderation card en/pt-BR, report-path tests locking received-without-deletion/quota/blank-guard). Evidence:
docs/mobile/p22-t03-moderation-support.md. Validation: backend moderation/feedback/ops unit +-racereal-PostGIS integration 0-fail,:app:testDebugUnitTest145/0-fail,:app:assembleDebugPASS,git diff --checkPASS, secret scan PASS. Reporter case-status/author-history reads need a future backend extension; in-screen report buttons wait on the station-identity mapping; help channel is P23-T02-owned. -
P22-T04 LOCAL_DONE (issue #89): abuse/lifecycle + phase acceptance (astral-plane 280-scalar boundary test, comment/vote/rate hot-path benchmarks ~0.5–0.7 µs/op app-layer, full scenario matrix proven on existing suites, T01–T04 gate record). Evidence:
docs/mobile/p22-t04-abuse-acceptance.md. Validation: full backend unit 0-fail,-racereal-PostGIS integration (feedback/moderation/account/identity/ops) 0-fail,apicontract+vacuum lint+check-compat.shPASS,:domain:test408 +:application:test246 +:data:testDebugUnitTest203 (1 pre-existing skip) +:app:testDebugUnitTest145, 0-fail;:app:assembleDebugPASS;git diff --checkPASS; secret scan PASS. G24/G18/P09 acceptances stay owner-held; low-end encode + provider proof stay P24-owned. Phase P22 ready for exit / PR merge. -
P09/G09 record INTEGRATED: PR #102 (merge
4e1c73a) + follow-up PR #103 (merge59ea845); G09 stays UNCERTIFIED/BLOCKED, tracker #13 OPEN; history #60–#62 OPEN. Wiki snapshot for the record phase: WIKI_PENDING. -
P10-T09 INTEGRATED as definition+smoke (PR #104, merge
4cd745e, head guard5bef97b):pilot-plan.md+ temp smoke athttps://teste.abastevo.com.br(30/30 migrations, honest-empty 200s, 400/404 negatives, no-store; peers healthy). Issue #53 stays OPEN — launch,pilot-results.mdand G09 cert NOT RUN. Temp env configs/secrets local-only by owner order.