More robust server handling
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Domain
- api, backend, backend-api-design
Research direction
Start by locating the AEPsych server's handling for setup, ask, tell, and other messages, then inspect the existing unit-test coverage. Done means setup-required responses, graceful handling of malformed messages, Sobol fallback after model-fit failure, client-disconnection recovery, detailed logging, and tests for each case.
Written by the indexing model from the issue text.
Description
The AEPsych server receives data from clients through "tell" messages and fits a model to that data to recommend trials that it sends back to the client through "ask" messages. There are a number of things that could go wrong in this process (all of these issues should be recorded in the logs with sufficient detail to understand what happened):
- The server cannot process ask, tell, or other messages before it has received a setup message. Right now it just crashes if this happens, but it should have a "setup required" response.
- The server could receive ill-formatted messages. It should be able to fail gracefully, and wait to receive another message.
- The server could fail to fit the model after an "ask" message. It should fallback to sending a Sobol trial.
- The server could lose connection to the client. It should recognize this and wait for a new connection.
- There are surely lots of other scenarios that the server should be prepared for.
Unit tests should be written to test all these cases and to see where the cracks are in the current error-handling.
- Dominant language
- HTML
- Stars
- 75
- Forks
- 57
- PR merge metrics
- No merged PRs in 30d
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from facebookresearch/aepsych
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
facebookresearch/aepsych#379 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
facebookresearch/aepsych#369 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
facebookresearch/aepsych#367 ·
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
facebookresearch/aepsych#195 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
facebookresearch/aepsych#194 ·
All issues in facebookresearch/aepsych
Similar issues
-
Xiaomi Mimo语音识别服务异常Openpending triage
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
bug doc-audit
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
github/github-mcp-server#3581 ·
Maintainers usually reply within 2 days
-
agent-review-finding chore
Difficulty 1/5 Under an hour Newbie friendliness 85/100
jordansmall/spindrift#6033 ·
Maintainers usually reply within 1 day
-
area-domain-modeling p1-recommended technical-debt
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
Maintainers usually reply within 1 day