Conversation
Readme.md: added the slack invite link
Bug reports, Feature requests
tobiu
added a commit
that referenced
this pull request
Nov 12, 2019
Merge pull request #8 from neomjs/dev
neo-opus-4-7
pushed a commit
that referenced
this pull request
May 7, 2026
…n image) (#10913) Empirical pivot per @neo-gemini-3-1-pro — chromadb/chroma:1.5.9 published image is a single 541MB compiled binary at /usr/local/bin/chroma (built via docker-bake.hcl, NOT the python:3.11-slim-bookworm Dockerfile in the GitHub source). It has NO python, NO python3, NO curl, NO wget. bash IS present. This invalidates iterations #10909 (curl→python) and #10912 (python→python3) — all four probe binaries (curl, python, python3, wget) are absent. The 60s healthcheck timeout pattern was healthcheck command itself failing with exit 127 (command not found), NOT cold-start race or endpoint. Memory-anchor #8 lesson reinforced: WebFetch on a GitHub Dockerfile is NOT empirical verification of a published Docker Hub image. Only docker exec is. Fix: bash-builtin TCP socket probe via /dev/tcp/127.0.0.1/8000. Bash IS in the image, /dev/tcp is bash-builtin (no external binary needed), and TCP listener-up is the load-bearing readiness signal anyway (HTTP probe was overkill for what depends_on actually needs). Keeps start_period: 60s as defense in depth — bash TCP probe is fast but cold-start grace doesn't hurt.
tobiu
added a commit
that referenced
this pull request
May 7, 2026
…0914) * fix(deploy): add start_period for Chroma healthcheck cold-start grace (#10913) 5th iteration on Lane C #10899 integration row. Empirically grounded: 60s healthcheck timeout matches 5s × 12 retries exactly. Chroma's banner output (Connect to Chroma at: http://localhost:8000) appears during chroma run startup BEFORE uvicorn has bound port 8000, so the first ~12 probes all fail with connection-refused before HTTP is ready. start_period: 60s gives cold-start grace during which failed probes don't count toward retries. Total wait: 60s grace + 60s retries = 120s before unhealthy. Under Playwright webServer 240s timeout with ample margin (compose-up cold-start uses ~80s observed). Single-variable change — keeps python3 + /api/v2/heartbeat + 5s/5s/12 unchanged so CI gives unambiguous signal on this hypothesis. Cross- referenced with @neo-gpt's independent diagnosis (A2A 2026-05-07T16:28:34Z) — same cold-start-race read. Empirical verification chain still holding: - python3 IS in PATH (chromadb 1.5.9 base = python:3.11-slim-bookworm) - /api/v2/heartbeat IS the canonical endpoint (chromadb server source routes registered in chromadb/server/fastapi/__init__.py) - HTTP server is NOT yet bound when probes fire on cold-start CI * fix(deploy): switch Chroma healthcheck to bash TCP probe (no python in image) (#10913) Empirical pivot per @neo-gemini-3-1-pro — chromadb/chroma:1.5.9 published image is a single 541MB compiled binary at /usr/local/bin/chroma (built via docker-bake.hcl, NOT the python:3.11-slim-bookworm Dockerfile in the GitHub source). It has NO python, NO python3, NO curl, NO wget. bash IS present. This invalidates iterations #10909 (curl→python) and #10912 (python→python3) — all four probe binaries (curl, python, python3, wget) are absent. The 60s healthcheck timeout pattern was healthcheck command itself failing with exit 127 (command not found), NOT cold-start race or endpoint. Memory-anchor #8 lesson reinforced: WebFetch on a GitHub Dockerfile is NOT empirical verification of a published Docker Hub image. Only docker exec is. Fix: bash-builtin TCP socket probe via /dev/tcp/127.0.0.1/8000. Bash IS in the image, /dev/tcp is bash-builtin (no external binary needed), and TCP listener-up is the load-bearing readiness signal anyway (HTTP probe was overkill for what depends_on actually needs). Keeps start_period: 60s as defense in depth — bash TCP probe is fast but cold-start grace doesn't hurt. --------- Co-authored-by: tobiu <tobiasuhlig78@gmail.com>
This was referenced May 7, 2026
Merged
12 tasks
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.