* Find gbrain's config under GBRAIN_HOME in the source wireup and skill start (#4325)
Both helpers read only ~/.gbrain/config.json. With GBRAIN_HOME naming one
brain and ~/.gbrain holding another, the wireup locked the ~/.gbrain brain's
database_url and sent sources add and sync there, and skill start skipped
its /sync-gbrain hint. Both now resolve the path through one shared helper,
bin/gstack-gbrain-home.sh, using gbrain's configDir() rule. The wireup gains
a read-only --check-target mode that tells an operator whether an earlier
run could have written to the wrong brain, without printing any URL.
Co-authored-by: exGeni <135786749+exGeni@users.noreply.github.com>
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
* Use localhost test database URLs the credential scan accepts (#4325)
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
* Test the shared gbrain config path helper directly (#4325)
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
* Report the caller's database URL settings in the wireup target check (#4325)
--check-target printed the URL env after the startup lock had exported GBRAIN_DATABASE_URL, so it said a URL was set when the caller had none. The helper comment no longer calls gbrainConfigDir() an exact twin.
Review-Finding: p1/specialist-batched#1 reader=red-team
Review-Finding: p1/specialist-batched#2 reader=testing
Review-Finding: p1/specialist-batched#3 reader=testing
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
* Document the GBRAIN_HOME config path and the wireup target check (#4325)
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
---------
Co-authored-by: exGeni <135786749+exGeni@users.noreply.github.com>
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>