Engineer - JerryNixon/2025-luca-ama-app GitHub Wiki

Engineer

Stories & Acceptance criteria

  • As an [engineer] I want to [secure the platform] so that [user data and access are protected]
    • I can enforce authentication and authorization
    • I can audit access logs
 flowchart LR
    start([Start])
    auth[Enforce AuthN/AuthZ]
    subgraph log [ ]
    access[Log Access Events](/JerryNixon/2025-luca-ama-app/wiki/Log-Access-Events)
    audit[Audit Logs]
    end
    stop([Stop])

    start --> auth --> access --> audit --> stop 
  • As an [engineer] I want to [monitor system performance] so that [I can detect and resolve issues]
    • I can set up alerts for performance thresholds
    • I can access logs for debugging.
 flowchart LR
    start([Start])
    monitor[Monitor Metrics]
    subgraph Met [ ]
    alert[Set Threshold Alerts]
    end
    logs[Access Logs](/JerryNixon/2025-luca-ama-app/wiki/Access-Logs)
    subgraph deb [ ]
    debug[Debug Issues]
    end
    stop([Stop])

    start --> monitor --> alert --> logs --> debug --> stop 
  • As an [engineer] I want to [enforce unit test coverage] so that [I can catch regressions early]
    • Coverage is measured as a percentage
    • PRs must meet at least 90% coverage to pass
 flowchart LR
    start([Start])
    subgraph Pull [ ]
    pr[Open Pull Request]
    test[Run Unit Tests](/JerryNixon/2025-luca-ama-app/wiki/Run-Unit-Tests)
    end
    subgraph Cov [ ]
    check{Coverage ≥ 90%?}
    pass[Pass Check]
    fail[Fail Check]
    end
    stop([Stop])

    start --> pr --> test --> check
    check -- Yes --> pass --> stop
    check -- No --> fail --> stop 
  • As an [engineer] I want to [run integration tests] so that [I can verify the system works end-to-end]
    • Tests simulate real user actions (e.g., add users, upvote)
    • Errors and performance issues are traceable
 flowchart LR
    start([Start])
    subgraph req [ ]
    pr[Open Pull Request]
    run[Run Integration Tests](/JerryNixon/2025-luca-ama-app/wiki/Run-Integration-Tests)
    simulate[Simulate User Actions]
    trace[Trace Errors & Performance]
    end
    subgraph Pass [ ]
    result{Tests Pass?}
    pass[Pass Check]
    fail[Fail Check]
    end
    stop([Stop])

    start --> pr --> run --> simulate --> trace --> result
    result -- Yes --> pass --> stop
    result -- No --> fail --> stop 
  • As an [engineer] I want to [collect telemetry] so that [I can debug issues in production]
    • Logs and metrics are captured for key actions
    • I can access logs for debugging
 flowchart LR
    start([Start])
    subgraph work [ ]
    actions[Track Key Actions]
    capture[Capture Logs & Metrics](/JerryNixon/2025-luca-ama-app/wiki/Capture-Logs-&-Metrics)
    store[(Store Telemetry)]
    end
    subgraph Logs [ ]
    access[Access Logs]
    debug[Debug Issues]
    end
    stop([Stop])

    start --> actions --> capture --> store --> access --> debug --> stop 
  • As an [engineer] I want to [enforce code style rules] so that [the codebase stays clean and consistent]
    • Code must follow the defined style guide
    • Style violations fail the PR check
 flowchart LR
    start([Start])
    subgraph style [ ]
    pr[Open Pull Request]
    lint[Run Style Check](/JerryNixon/2025-luca-ama-app/wiki/Run-Style-Check)
    end
    subgraph workflow [ ]
    valid{Style Passes?}
    pass[Pass Check]
    fail[Fail Check]
    end
    stop([Stop])

    start --> pr --> lint --> valid
    valid -- Yes --> pass --> stop
    valid -- No --> fail --> stop