08-Project-Health / 08.06.Status-Tracking08.06.Status Tracking
08.06. Status Tracking
Last updated: 2026-02-11
Module Versions
| Module |
Version |
Latest Commit |
| bnc-cpt-wui |
v0.2.5 |
4d6e9cb feat: add i18n completeness and user journey test suites |
| bnc-cpt-api |
v0.2.4 |
b667485 refactor: standardize local env abbreviation lde → lcl |
| bnc-cpt-utl |
v0.2.3 |
3003d21 feat: add PARENT and ASSIGNEE support to linear-create-issue action |
Test Coverage
WUI (Puppeteer UI Tests)
Total: 53 passing, 1 pending
| Suite |
Tests |
Status |
Description |
| test-101.landing-page |
21 |
PASS |
Page load, meta tag, brand/model selector, step indicator |
| test-102.payment-step |
9 |
PASS |
Plan cards, prices, payment methods, terms checkbox |
| test-103.language-switcher |
7 |
PASS |
en/fi/sv switching, localStorage persistence |
| test-104.i18n-completeness |
8 |
PASS |
81 translation keys validated across en/fi/sv via $t() |
| test-105.user-journey |
5 |
PASS |
Full landing→brand→model→payment flow, state persistence |
| test-201.payment-wizard |
3 + 1 pending |
PASS (partial) |
Payment interactions pass; Stripe E2E pending (BNC-79) |
Component Coverage: 7/18 Vue components tested directly (~39%), but critical user path is now covered end-to-end.
API (pytest)
| Suite |
Tests |
Description |
| test_health.py |
6 |
Health check, /docs, /redoc, OpenAPI schema |
| test_auth.py |
8 |
JWT login, token validation, protected endpoints |
| test_payment.py |
15 |
Stripe/PayPal intent creation, verification, receipts |
| test_validation.py |
5 |
Input validation |
| test_api_endpoints.py |
5 |
Async, concurrent requests, 404 handling |
| test_report.py |
3 |
PDF content-type, receipt storage |
| test_tesla.py |
49 |
OAuth flow, vehicle data, charging, service, warranty |
| test_post_deploy.py |
7 |
Smoke tests: health, docs, payment, auth rejection |
Total: 98 unit tests + 7 post-deploy smoke tests
CI/CD Pipeline Coverage
| Pipeline |
Pre-deploy |
Post-deploy |
Environments |
| WUI (ci.yaml) |
Puppeteer headless in Docker |
Puppeteer against deployed URL |
inf, dev, tst |
| API (cd.yaml) |
pytest unit tests |
Health check + smoke tests |
inf, dev, tst |
Production (prd) is excluded from post-deploy tests by design.
Linear Issues
Blockers
| Issue |
Status |
Owner |
Description |
| BNC-78 |
Blocked |
Yordan |
Fix Stripe Checkout integration test — blocked by BNC-79 |
| BNC-79 |
Todo |
Petri |
Update Stripe test secret key in GCP Secret Manager |
Root cause (BNC-78/79): The bnc-cpt-stripe-secret-key secret in GCP Secret Manager (dev) contains an invalid value (starts with ovdevden instead of sk_test_*). Petri has Stripe Dashboard access to retrieve the correct key.
Fix command:
echo -n "sk_test_REAL_KEY" | gcloud secrets versions add bnc-cpt-stripe-secret-key --data-file=- --project=bnc-cpt-dev
In Progress
| Issue |
Priority |
Owner |
Description |
| BNC-76 |
Medium |
- |
Support / Knowledge Base |
| BNC-68 |
High |
- |
Tesla Fleet API — Partner registration OAuth and API integration |
In Review
| Issue |
Owner |
Description |
| BNC-56 |
- |
UI — Landing Page Refactor |
| BNC-57 |
- |
Marketing — Example PDF Report (mockup) |
| BNC-42 |
Petri |
RE-DESIGN App UI / UX |
| BNC-53 |
- |
Help and Legal page |
| BNC-40 |
Petri |
ApplePay payment integration |
| BNC-41 |
Petri |
GooglePay payment integration |
Backlog
| Issue |
Priority |
Description |
| BNC-77 |
Medium |
Add artifact generation service to API |
| BNC-70 |
None |
Build PDF report template with real Tesla data sections |
| BNC-69 |
None |
Fix warranty endpoint — pass VIN as query parameter |
| BNC-62 |
None |
Front-End send echo of Back-End API call |
| BNC-59 |
None |
Update UI text from Tesla-only to multi-brand platform |
| BNC-55 |
None |
UI — "How It Works" Section |
| BNC-54 |
None |
UI — Supported Brands Section |
| BNC-52 |
None |
How to add DDOS prevention |
| BNC-58 |
None |
Marketing — Demo Video |
| BNC-16 |
None |
Payment PDF generation TRACEABILITY |
On Hold
| Issue |
Owner |
Description |
| BNC-51 |
Petri |
Is our Architecture horizontally scalable |
| BNC-31 |
Yordan |
Provision proper GCP groups step |
Recently Closed
| Issue |
Description |
| BNC-80 |
Add i18n completeness and user journey test suites |
| BNC-75 |
Refactor Testing — post-deploy pipeline, GCP secrets integration |
| BNC-73 |
Setup Slack bot for shell-to-Slack messaging |
| BNC-72 |
Tesla Fleet API mock server for local development |
Infrastructure
Environments
| Env |
Project |
Cloud Run |
Status |
| dev |
bnc-cpt-dev |
dev.carpulsetracker.com |
Deployed |
| tst |
bnc-cpt-tst |
tst.carpulsetracker.com |
Deployed |
| prd |
bnc-cpt-prd |
carpulsetracker.com |
Deployed |
| inf |
bnc-cpt-inf |
Shared resources, DNS |
Active |
Local Development
| Container |
Port |
Status |
| con-bnc-cpt-api |
8100 |
Available |
| con-bnc-cpt-wui |
3333 |
Available |
| con-bnc-cpt-the-bot |
- |
Available (Puppeteer) |
| con-bnc-cpt-tesla-mock |
9100 |
Available |
| con-bnc-cpt-tf-runner |
- |
Available |
Network: all_lcl_docker (external bridge)
Shell Actions (Integrations)
| Integration |
Actions |
| Linear |
do_linear_list_issues, do_linear_create_issue (with PARENT/ASSIGNEE), do_linear_fetch_issue, do_linear_close_issue, do_linear_comment_issue |
| Slack |
do_slack_post_msg, do_slack_post_thread |
Testing Commands
# Headless in Docker (CI mode)
make test-wui
# Visible browser locally (watch mode)
make test-wui-headed
# Against specific environment
make test-wui-dev
make test-wui-tst
# API tests
make test-api
make test-api-cov
Known Limitations
- No database yet (in-memory storage only)
- MobilePay, GooglePay, ApplePay payment providers are placeholders
- Stripe E2E test blocked on invalid API key in GCP Secret Manager (BNC-79)
- Production post-deploy tests are skipped by design
- 11/18 Vue components lack direct test coverage (covered indirectly via user journey)