Repository navigation
Releases: Perlitten/project-brain-public
Release list
v0.9.2
v0.9.2
Productization
- Shorten the public README and separate source installation, MCP setup, model
providers, architecture, release verification and historical research. - Validate current documentation versions, local links, anchors and supported
installation commands automatically in CI. - Keep synthetic example labels visible on desktop and mobile; restore panels
and the memory map under reduced-motion preferences and improve keyboard access. - Provide an isolated synthetic deployment guard that rejects backend bindings
or operator credentials instead of exposing a live dashboard as a demo. - Remove the separately deployed Next.js app and Python bytecode from runtime
wheels while retaining frontend source and public templates in source archives. - Archive unreferenced synthetic demonstrations, label historical evaluation and
release tooling, and retain compatibility imports and frozen evidence.
Verified publication
The reviewed immutable tag passed CI and CodeQL. Anonymous downloads of the wheel, source archive and SPDX SBOM matched every published SHA-256 checksum. Separate fresh wheel and source installs passed CLI/API version checks and real MCP search/context outside the checkout. Linux source acceptance also covered bootstrap, indexing/reindexing, actual start/stop/restart and a clean dependency reinstall. Mock providers are functional smoke coverage; coding outcomes and token-cost benefits remain unproven.
Read-only synthetic demo · Final productization report and evidence limits
v0.9.1
v0.9.1
Launch remediation
- Correct public repository, installation, CI, security and dashboard links.
- Publish v0.9.1 with verified wheel, source archive, SBOM and SHA256 checksums.
- Correct privacy, memory approval and unproven efficiency claims.
- Require explicit credentials and image tags in the experimental image compose
configuration; fix Neo4j credential propagation and health-gated startup. - Exclude ignored frontend outputs from Git indexing without hiding tracked
source or weakening clean-commit provenance checks; skip symlink targets. - Render dashboard data mode from runtime API bindings instead of serving a
build-time demo snapshot in live containers; regression-test the existing
runtime robots policy and server-only credential handling. - Keep local credentials, npm dependencies and generated Next.js outputs out of
the web Docker build context.
Security
- Production startup (
ENVIRONMENT=production) now also rejects the
.env.exampleplaceholders forPROJECT_BRAIN_API_KEYand
PROJECT_BRAIN_WEBHOOK_TOKEN(the default database passwords were already
rejected in 0.9.0). scripts/bootstrap.shreplaces both placeholders with random 64-character
hex secrets;deploy/server_up.shregenerates anychange-me*value.- The development
docker-compose.ymlbinds Postgres, Redis, Neo4j and the API
to127.0.0.1instead of all interfaces. - CORS no longer allows credentials when the allowed origin is the wildcard
*. - Web UI login is throttled per client IP after repeated failures.
- Health check errors report only the exception type, not its message.
oracle_testcommands and git refs that start with-are rejected, so
they cannot be read as command-line options.- The web UI fails closed: a live deployment without a configured login, or
with a half-configured one, shows nothing and does not proxy API calls.
Local development can opt in to the old open mode withWEB_OPEN_MODE=true. - The web UI is marked
noindexoutside demo mode (robots.txt,
X-Robots-Tag). - Provider base URLs that point at cloud-metadata or link-local hosts are
rejected. - The
ciandbenchmarkGitHub Actions workflows run with
permissions: contents: read.
Changed
-
Quality on a fresh install shows "No benchmark run yet" with a "Run the
benchmark" button instead of "measurements unavailable"
(/api/web/qualityreturns{"available": false, "reason": "not_run"}
rather than HTTP 503 when no evidence file exists). A shipped evidence file
with"reference_run": trueis labelled "Reference run by maintainers". The
period-selector note appears only on the overview, which has one. -
The mock provider is labelled "smoke test only, results not meaningful" in
Setup,brain doctor,.env.exampleand the README, each with the one-line
keyless path to real results (Ollamanomic-embed-text). Setup's "Connect
AI models" step stays a warning on mock instead of turning green. -
Setup's "Choose the code to read" step lists the repositories Brain has
actually indexed and makes one the active repository in a click. When
TARGET_REPO_PATHwas never indexed but another repository was (for example
withbrain index --repo), the step says so instead of reporting done; the
default sample (Brain's own source) is labelled as such. -
scripts/start.shstarts the API, the worker and the web dashboard in one
terminal;scripts/bootstrap.shlists all three in its "Next" output, writes
--repointoTARGET_REPO_PATH, and says so when it falls back to Brain's
own source as a sample repository. -
/healthreports worker liveness (worker.running, from the heartbeat each
worker keeps in Redis). Without a worker, Setup blocks "Start Brain's
services", the sidebar shows "worker down", and a queued job's toast says
"Worker is not running. Start it with …" instead of waiting silently. -
First run: with no sign-in configured, the web dashboard opens without a
password when it listens on loopback and is opened from this machine
(npm run dev/npm run startnow bind127.0.0.1; change it with
WEB_HOST). Any other address, or a same-host reverse proxy that forwards a
publicHost, stays locked.WEB_OPEN_MODE=falselocks loopback too. -
Telegram alert messages are in English.
-
The web proxy returns a JSON 503 when the Brain API is unreachable.
-
Release docs moved from
docs/release/0.9.0-rc1/todocs/release/0.9.0/;
historical design docs, benchmark results and pre-release reports removed.
Fixed
-
Lexical search finds code by the identifiers a query names: CamelCase and
snake_case identifiers are kept whole and split into their words
(HTTPAdapter→httpadapter,http,adapter), and a file that defines a
symbol the query names leads the file channel, so "HTTPAdapter" returns
adapters.py. Identifiers with underscores or trailing digits are no longer
dropped from the keyword list. -
The NVIDIA embedding provider no longer fails on code that contains a
data:image/...;base64,literal. NIM parsed it as an image input and
rejected the request, so those chunks never got embeddings. -
Blank chunks left over from empty files no longer count as missing
embeddings, so nightly verification of repositories with an empty
__init__.pystops reporting "degraded" (providers reject empty input). -
The
benchmarkworkflow's service containers use the same database
passwords as the application defaults, so the job can connect.
Project Brain v0.9.0
Project Brain v0.9.0
Project Brain provides spatial navigation, dependency context and bounded context
packs for coding agents, with evidence-bound memory and background indexing.
This release includes the L1–L4 memory cycle, dashboard sign-in and agent-value
metrics already merged into main, plus the publication-readiness fixes:
- Storage services can start before
.envexists; Docker Compose 2.24.0+ is required. - Standard repository-wide Ruff and Linux Mypy checks pass.
- Audit query typing supports both SQLAlchemy 2.0 and the locked 2.1 dependency.
- Grafify output discovery uses configured or repository-relative paths.
- Swagger, ReDoc and OpenAPI are disabled by default in production.
- CI checks the entire repository with Ruff and rejects private commit email addresses.
- Consolidation database tests clean up all their helper tasks between cases.
- Python wheels exclude Next.js caches, npm dependencies and local env files.
The benchmark distinguishes navigation from coding tasks. The current evidence
does not establish general coding token or cost savings. The memory pipeline
requires captured evidence and review; installing it does not provide a body of
pre-existing learned experience.
API documentation remains enabled by default locally. API_DOCS_ENABLED=false
disables it explicitly; true opts in, including in production.
MIT license. Third-party notices are included in the repository.