Cover
aaryan is not feeling well

Chapter 1 - Aaryan Dismisses a Niggling Discomfort at His Office

The fluorescent hum of overhead lights thrums like an irritated wasp in Aryan's skull as he squints at his computer screen. His left-hand hovers over the keyboard, two fingers twitching with the memory of a half-typed email. The air smells faintly of burnt coffee and synthetic lemon cleaner, the scent clinging to the center lock partition walls. It’s 9:47 a.m., according to the clock above Room 312’as door, its second hindering forward with mechanical indifference. He’s missed it again: the subtle shift in his gut that began as a faint fizz, the kind of sensation you blame on rushed takeout or forgotten breaks. But now, a sharp pinch digs below his ribs, as though someone’s inflated a balloon inside his abdomen. He exhales slowly, pressing his palm flat against his sternum.

Digestive tract spasms from caffeine overuse, he tells himself, though the diagnosis tastes hollow.

The chair creaks when he shifts to open a desk drawer. Bottles of antacids, ibuprofen, and a half-melted roll of breath mints clink together. He swallows two chalky tablets dry, their bitterness pooling at the back of his tongue. When he straightens, the movement jostles his stomach into a deeper ache. The spreadsheet on his monitor blurs as his eyes water. He blinks rapidly, typing the last line of quarterly expenses twice before deleting it.

“You look like hell,” Priya says, sidling up to his cubicle with a chipped cardboard coffee cup. A sticker on it reads “World’s Best Assistant Manager” in flaking silver ink.

“Ambrosia,” he mutters, thumping his fist lightly against the side of his monitor to sharpen the pixels.

She raises an eyebrow, the mole beside it trembling faintly. “You’re green. Like… lime Jell-O green.”

The keyboard clicks louder as his thumbs attack the keys. “Jealousy’s an ugly color, Priya.”

“Fine. Die of dysentery on my watch.” She knocks the styrofoam cup onto his desk, sloshing coffee across his wrist. Dark liquid seeps into a stack of invoices. Aaryan jerks his hand back, but not before the warmth spreads over his skin like spilled ink.

“I’m fine,” he snaps, too loud. The phrase boomerangs backward, echoing in the open-plan office. A few heads turn—Raj from Accounting, Mei-Ling with her ever-whirring printer—and then retreat like startled turtles. Priya’s mouth tightens into a line Aaryan knows too well, the one that precedes lectures about burnout and HR brochures. He pivots his chair to face the window.

The parking lot sprawls there, a cracked tarmac field studded with delivery trucks and employees slouching against cars for nicotine hits. A gull lands on a puddle, its shadow stretching thin over the asphalt. Aaryan’s stomach clenches violently. He digs his nails into his thigh, counting backward from one hundred.

LOKAL APP

Full Task Breakdown — Backend & Frontend

Project Manager Reference Document • All phases included • Admin: ozan@gmail.com / Entropy8

How to read this document

Backend

Server-side work — data, payments, emails, APIs, security. Users don't see this directly.

Frontend

What users see and click — screens, buttons, forms, notifications, navigation.

Bug

Something that is broken and needs to be fixed before or after launch.

Feature

Something that needs to be built — it doesn't exist yet.

Security

A safety or privacy gap that could expose user data or allow hacking.

Launch

Must be done before the app goes live to real users.

Phase 2 / 3

Planned for after launch — don't let devs work on these now.

BACKEND TASKS

53 total tasks • Backend = the engine behind the app. Stores data, handles payments, sends emails, runs security. Users never see it directly — but everything breaks without it.

#

Task / Bug Description

Team

Type

Phase

1

User suspension button does not call the API — suspension is never actually saved to the database

Backend

Bug

Launch

2

Authentication rejection email not sent when admin rejects a Local's application

Backend

Bug

Launch

3

Admin 7-day suspension call returns error: 'Invalid value, path: userId, location: params'

Backend

Bug

Launch

4

Audit log not recording moderation actions (suspension, rejection, flagging)

Backend

Bug

Launch

5

User notification not sent after moderation decision (suspension/rejection)

Backend

Bug

Launch

6

Manage Availability (Settings) — verify API endpoints exist; write memo to backend if missing

Backend

Bug

Launch

7

Payout Details (Settings) — verify API endpoints exist; write memo to backend if missing

Backend

Bug

Launch

8

Languages (Settings) — endpoint likely missing; verify and write memo to backend

Backend

Bug

Launch

9

Login Methods (Settings) — not connected to backend

Backend

Feature

Launch

10

Security (Settings) — not connected to backend

Backend

Feature

Launch

11

Push notification infrastructure (provisioning) — required for mobile app notifications when app is closed

Backend

Feature

Launch

12

In-app notifications while app is open — backend real-time event system needed (WebSocket/SSE)

Backend

Feature

Launch

13

Dashboard new message indicator — backend not pushing real-time updates

Backend

Bug

Launch

14

SQL injection prevention — penetration testing not done

Backend

Security

Launch

15

PII handling audit — personal user data flows not security-tested

Backend

Security

Launch

16

Malicious file detection — server-side scanning not implemented

Backend

Security

Launch

17

Virus scanning integration — no antimalware pipeline on file uploads

Backend

Security

Launch

18

Path traversal prevention — backend implementation unknown, needs verification

Backend

Security

Launch

19

File content validation — only MIME type checked, full validation missing

Backend

Security

Launch

20

Image processing security — resize/optimize pipeline not assessed

Backend

Security

Launch

21

Storage security audit — file storage permissions and access not reviewed

Backend

Security

Launch

22

Memory leak monitoring — long sessions (8+ hours), large chat histories, multiple uploads not monitored

Backend

Bug

Launch

23

Rate limiting verification — not confirmed to be active

Backend

Security

Launch

24

Error tracking setup (e.g. Sentry) — no error monitoring in place

Backend

Feature

Launch

25

Performance monitoring setup — no server-side performance tracking

Backend

Feature

Launch

26

Backup and disaster recovery — not tested

Backend

Feature

Launch

27

Scaling plan — not validated under load

Backend

Feature

Launch

28

City Pulse API — validate active traveler counts, topicsInDemand, exampleQuestions, timeContext logic

Backend

Feature

Launch

29

City Pulse admin city health states (healthy/warning/critical) — not validated

Backend

Feature

Launch

30

Tax calculations — not implemented (simple gross pricing only)

Backend

Feature

Phase 2

31

Refund workflow — not implemented

Backend

Feature

Phase 2

32

Revenue sharing calculation — not implemented

Backend

Feature

Phase 2

33

Minimum withdrawal amounts — backend ready but UI unclear

Backend

Feature

Phase 2

34

Automated payout system — not implemented

Backend

Feature

Phase 2

35

Tax reporting (1099 / documentation) — not implemented

Backend

Feature

Phase 2

36

Withdrawal approval workflow — manual process, not defined

Backend

Feature

Phase 2

37

Fraud detection triggers — no automated monitoring

Backend

Feature

Phase 2

38

Revenue reconciliation / accounting integration — not implemented

Backend

Feature

Phase 2

39

Double charge prevention — not tested

Backend

Bug

Phase 2

40

Currency conversion / multicurrency — USD only currently

Backend

Feature

Phase 3

41

Dispute resolution workflow — not implemented

Backend

Feature

Phase 2

42

Profanity check / automated content moderation — not implemented

Backend

Feature

Phase 2

43

Spam detection — not automated, manual review only

Backend

Feature

Phase 2

44

Automated moderation triggers — all manual currently

Backend

Feature

Phase 2

45

Typing indicators — not implemented

Backend

Feature

Phase 2

46

Online/offline status updates — not implemented

Backend

Feature

Phase 2

47

Photo sharing in chat — not implemented

Backend

Feature

Phase 2

48

Email system: city request digest, weekly digest, phone verification

Backend

Feature

Phase 2

49

Formal user appeal process — no appeal workflow exists

Backend

Feature

Phase 2

50

Escalation procedures — no escalation workflow exists

Backend

Feature

Phase 2

51

Multilanguage support — backend translation/locale system not implemented

Backend

Feature

Phase 2

52

Analytics > Platform Metrics — missing; weekly report, user growth, chat rates, revenue trends

Backend

Feature

Phase 2

53

Settings > Platform Settings — missing; policies, automated moderation rules, health, audit logs

Backend

Feature

Phase 2

FRONTEND TASKS

37 total tasks • Frontend = everything the user sees and taps on screen — buttons, pages, forms, chat windows, notifications, navigation.

#

Task / Bug Description

Team

Type

Phase

1

Profile photo not shown on dashboard and Personal Information page for Local users

Frontend

Bug

Launch

2

Profile photo not shown when uploaded during 'Become a Local' flow

Frontend

Bug

Launch

3

Story shown incorrectly on Local's profile page — layout or data mapping issue

Frontend

Bug

Launch

4

'Switch to Local' button still shows 'approval pending' even after user is approved

Frontend

Bug

Launch

5

Local Settings > Personal Information — all fields (city etc.) showing dummy/hardcoded data

Frontend

Bug

Launch

6

Local Settings > City Profile — not loading data from the database

Frontend

Bug

Launch

7

Local Settings > Languages — showing dummy data; not fetching real user language preferences

Frontend

Bug

Launch

8

Local profile does not show dietary preferences

Frontend

Bug

Launch

9

Dashboard does not show new messages and does not refresh when navigating between pages inside the app

Frontend

Bug

Launch

10

No unread message indicator (red dot/count) on chat icon in bottom navigation bar

Frontend

Bug

Launch

11

In-app chat notifications not visible when inside the app — messages not shown on bottom nav

Frontend

Bug

Launch

12

Traveler incoming chat dashboard — UI and bottom menu missing or incomplete

Frontend

Feature

Launch

13

Local incoming chat monitor dashboard — UI not complete

Frontend

Feature

Launch

14

App.tsx refactor — giant monolith file must be broken into components; state management needs restructuring

Frontend

Feature

Launch

15

Story Content Moderation — image does not upload in the Create Story flow

Frontend

Bug

Launch

16

Admin moderation workflow test interrupted — flag for further investigation button not working

Frontend

Bug

Launch

17

Credit card payment UI in 'Become a Local' flow — not tested / possibly not connected

Frontend

Bug

Launch

18

Apple Pay UI — not tested at start of flow

Frontend

Feature

Launch

19

PayPal UI — not tested

Frontend

Feature

Launch

20

Mobile: camera access and session retention — not working consistently

Frontend

Bug

Launch

21

Mobile: in-app notifications UI — not showing on mobile

Frontend

Bug

Launch

22

Admin: notification to user not shown after moderation action

Frontend

Bug

Launch

23

WCAG 2.1 AA accessibility compliance — not tested; VoiceOver check missing

Frontend

Feature

Launch

24

Page load times — must be under 3 seconds; performance testing not done

Frontend

Feature

Launch

25

City Pulse — Test CityPulseLocal component in Local Dashboard widget (local mode testing needed)

Frontend

Feature

Launch

26

City Pulse — Test in traveler home screen, local dashboard widget, and admin screens

Frontend

Feature

Launch

27

City Pulse — Verify responsive design and animations

Frontend

Feature

Launch

28

City Pulse — Test real-time updates in UI if implemented

Frontend

Feature

Launch

29

Admin — login with admin account and activate admin mode (Ctrl+Shift+A), test city editorial analytics UI

Frontend

Feature

Launch

30

Admin — test AI suggestions and intervention controls in admin UI

Frontend

Feature

Launch

31

React to React Native — convert web app to native iOS/Android mobile app

Frontend

Feature

Phase 2

32

Availability toggle in 'Become a Local' flow — does it have any actual effect? Needs UI verification

Frontend

Bug

Phase 2

33

Admin chat detail page shows 'coming soon' — needs to be built

Frontend

Feature

Phase 2

34

System messages — random/automated message UI not designed yet

Frontend

Feature

Phase 2

35

'Go Unlimited' and packages UI — subscription/package screens not designed

Frontend

Feature

Phase 2

36

Cross-language communication UI — multilanguage interface not implemented

Frontend

Feature

Phase 2

37

Emergency moderation — in-chat reporting feature UI for Local users not built

Frontend

Feature

Phase 2

PM QUICK NOTES

1. Two backlogs = one problem: Both MD files cover the same project but have small differences (File 2 adds Apple Pay, PayPal, and backend memo instructions). Merge everything into one master list in Jira. Having two separate documents means someone will update one and forget the other.

2. Security before launch: Items marked Security are not optional. SQL injection, virus scanning, and PII handling must be fixed before going live or you face legal and reputational risk.

3. Phase 2 items — freeze them now: There are 20+ Phase 2 features (refunds, multicurrency, tax, multilanguage). Make sure developers are not touching these before launch features are done. Lock them in Jira as Phase 2.

4. App.tsx refactor is a priority: The entire app lives in one giant file. This makes every bug harder to find and fix. This refactor should happen early — before new features are added on top of a messy foundation.

5. Backend memo process: For Settings pages (Availability, Payout, Languages), the frontend developer needs to write a memo to the backend team confirming which API endpoints exist and which are missing. Assign this action clearly in Jira.