sourcegraph / sourcegraph-public-snapshot

Code AI platform with Code Search & Cody
https://sourcegraph.com
Other
10.1k stars 1.28k forks source link

Source tracking issue: Stop the bleeding #57457

Closed mrnugget closed 8 months ago

mrnugget commented 1 year ago

Goal

Make the system predictable, reliable, debuggable; ensure team’s mastery of it by getting the code and the team to a level of confidence about our systems that allows us to reason about it and provide great support.

Work

Port legacy code to new patterns (or delete), simplify, add debug features, e2e tests; cherry-on-top: remove repo-updater

Impact

Reduced support load, happier site-admins, increased future velocity, enabled more innovation, stretch: easier deployment

Milestones/Tasks

This section contains high level goals, and is not a fully exhaustive list of what we'll be working on in detail. We expect to find bugs along the way, which we will prioritize as well. After all, whatever can create support load we want to fix, next priority is working towards our north stars.

Reduce support load 33d

Improve visibility into repository lifecycle 26d

Increase confidence in our codebase by cleaning up tech debt 36d

Performance: Fix the biggest memory/CPU sinks 15d (timebox)

North stars

_This section describes directions we want to work towards, but not necessarily ship this quarter. Decisions we make should be influenced by these to provide a path way for achieving them eventually.

North star: Get rid of repo-updater

North star: Pluggable git backends and understand usage/performance of functions

North star: Services can react to events they're interested in, no more high baseline load from constant polling

/cc @sourcegraph/source

eseliger commented 8 months ago

Made substantial progress towards more stable services.

eseliger commented 8 months ago

QA Test Plan

Summary

See summary above.

Test Plan

Functional testing: Verify that the application functions as expected and meets the requirements. This will include testing of user interfaces, inputs, outputs, and all other functionalities.

Dotcom is our test bed, thousands of users use it every day and help us discover issues. At the time of writing this, none that are newly introduced by our changes are known.

Performance testing: Verify that the application performs efficiently and effectively under different loads and stress levels.

We've monitored the performance of Gitserver and repo-updater throughout this work in prometheus, and have not seen any potential bottlenecks.

Cody Checklist (If applicable)

  1. Does your feature respect the global Cody feature flag? Default experience is OFF for Self Hosted

    • [ ] Yes
    • [ ] No
    • [x] N/A
  2. Have you backtested prompts and questions that have worked before? IE - Can you summarize the following file?

    • [ ] Yes
    • [ ] No
    • [x] N/A

    If yes, please specify your test prompts and the response:

  3. Have you made any client-side changes to Cody? To prevent breakages, please ensure your changes have been tested on other Cody platforms (Web, App, etc)

    • [ ] Yes, I've tested my changes across the different applicable Cody platforms
    • [ ] No
    • [x] N/A
  4. Which clients have your changes been tested on?

    • [ ] VS Code
    • [ ] Cody App
    • [ ] Sourcegraph Web
    • [ ] IntelliJ
    • [ ] Other

    If other, please specify:

    1. Please provide any additional testing you've done that has not been covered above:

    If you notice any bugs related to the setup experience or Cody in general please raise them in #team-cody and tag @teamcody & @design-team.

QA Checklist

  1. Have you made any infra related changes to environment variables, new services, or deployment methods that could affect customers?

    • [ ] Yes - I've informed #team-cloud and #team-delivery of the changes.
    • [ ] Yes - Changelog or documentation has been updated, this includes changes to defaults and site config flags.
    • [x] No

    If your change is non-trivial, please review the Cloud Launch process.

    If you've made changes to documentation, please link them in the comments below.

    Comments:

  2. Which environments have the changes been tested on?

    • [ ] rctest.sourcegraph.com
    • [x] sourcegraph.sourcegraph.com
    • [x] sourcegraph.com
    • [ ] cody-dev.sgdev.dev (running based off 5.2 release branch)
    • [ ] scaletesting.sgdev.org
    • [ ] other

    If other, please specify:

  3. Experimental features have been marked and behind a feature flag?

    • [ ] Yes
    • [ ] No
    • [x] N/A

    If no, please specify why:

  4. Has telemetry been added as part of the product requirements?

    • [ ] Yes
    • [ ] No
    • [x] N/A
  5. Completed entry to release post.

    • [ ] Yes
    • [ ] No
    • [x] N/A
  6. Is a feature flagged in a way when turns the feature off, it behaves as-if the feature does not exist?

    • [ ] Yes
    • [ ] No
    • [x] N/A

    If no, please specify why:

  7. A CHANGELOG entry has been added for the feature/change?

    • [x] Yes, for the changes that warranted one
    • [ ] No
    • [ ] N/A
  8. Please provide any additional testing you've done that has not been covered above:


Tech Lead/DRI sign off: @eseliger