Skip to content

checklist #146

Description

@quarz12

Service

  • give better error messages if request fails due to missing profile, not "failed to load"
  • roadmap
  • improve embedding search?
  • test coverage (esp. genai, client?)
  • seed db in deployment
  • remove sourcemaps
  • azure logs
  • k8 dashboards

Team and Process Compliance

  • Team has 3 registered members with GitHub username, TUMonline login, and matriculation number documented.
  • Each member has a primary subsystem (client/server/GenAI) and contributes to cross-subsystem integration.
  • All work is done through feature branches and pull requests.
  • No normal direct commits to main.
  • Peer review and approval happen before each merge.
  • Contribution traceability is visible via commits, PR authorship, reviews, and infra work.
  • Planning/questions/feedback are tracked in official Artemis channels.
    System Architecture and Stack Compliance
  • Mono-repo contains client, server, GenAI, deployment, CI/CD, and docs.
  • Client is implemented with an allowed framework and communicates via REST.
  • Server is Spring Boot and contains at least 3 distinct microservices.
  • Database is persistent and schema is documented.
  • GenAI service is a separate Python microservice with defined interface.
  • GenAI provides a real user-facing capability (not only technical presence).
  • OpenAPI/Swagger documentation exists and is exposed.

Containerization and Local Reproducibility

  • Each component has its own Dockerfile (client, server services, GenAI, DB).
  • Full system runs end-to-end via compose setup.
  • Local startup is possible in 3 commands or fewer.
  • Setup instructions are reproducible for a new user without hidden manual steps.

Kubernetes and Deployment Compliance

  • Deployment manifests/charts exist for Kubernetes.
  • CD deploys automatically to Kubernetes on merge to main.
  • Deployment works on course infra (Rancher) and Azure.
  • Environment-specific config is externalized (env vars, secrets, config files).
  • No hardcoded credentials/tokens/environment constants in source code.
  • A stable deployed URL is available for tutor interaction.

CI/CD Compliance

  • GitHub Actions pipeline runs on every PR.
  • CI builds all relevant services.
  • CI runs automated tests.
  • CI includes linting/static analysis where appropriate.
  • CI fails reliably on broken code/tests.

Observability Compliance

  • Prometheus is integrated for metrics collection.
  • Metrics include at least request count, latency, and error rate.
  • Grafana dashboards visualize meaningful system behavior.
  • Grafana dashboards are exported as .json files for submission.
  • At least one meaningful alert rule is configured and documented.

Testing Compliance

  • Unit tests cover critical server logic.
  • Unit tests cover relevant GenAI logic.
  • Client tests cover key user workflows/interactions.
  • All tests run automatically in CI.

Engineering Artifacts and Documentation Compliance

  • High-level architecture description is available and matches implementation.
  • Mandatory diagrams are present: Subsystem Decomposition, Use Case, Analysis Object Model.
  • API documentation and Swagger/OpenAPI references are in README/docs.
  • README documents setup, architecture, API docs, CI/CD, monitoring, and responsibilities.
  • Monitoring config, dashboards, and alerts are versioned in the repo.
  • Testing instructions are documented.

Presentation and Oral Exam Readiness

  • Team can demonstrate working end-to-end system live.
  • Team can explain architecture, pipeline, trade-offs, and operational aspects.
  • Each member can clearly explain and defend their own subsystem/artifact.
  • Evidence of monthly progress/checkpoint improvements is prepared.

Failure Guard (Must Be True)

  • Contributions are transparently documented (GitHub + Artemis evidence).
  • Every member can explain their own subsystem during presentation/exam.
  • End-to-end system works in a real demo.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions