feat: advance database and Herdr pilots
This commit is contained in:
1 parent
070ae74efa
commit
afe6aa9592
4 files changed
+61
-39
No files matched your search
@@ -71,15 +71,19 @@ indefinitely.
|
|||||||
- `yookr-workbench` decrypts once in memory and exports only its API login, four
|
- `yookr-workbench` decrypts once in memory and exports only its API login, four
|
||||||
database connections, Irristaud S3 credential, and test RabbitMQ credential.
|
database connections, Irristaud S3 credential, and test RabbitMQ credential.
|
||||||
- Central test API login and the read-only RabbitMQ overview passed.
|
- Central test API login and the read-only RabbitMQ overview passed.
|
||||||
- MySQL test/live `SELECT 1` and MongoDB test/live `ping` passed. The MongoDB
|
- MariaDB test/live example queries and MongoDB test/live example scripts passed.
|
||||||
endpoints publish SRV rather than direct address records and therefore use
|
Both MariaDB sessions negotiated TLS 1.3. The routers expose auto-generated
|
||||||
`mongodb+srv` URLs.
|
certificates from unavailable private CAs without valid host identities, so
|
||||||
|
only these two URLs disable certificate verification. The MongoDB endpoints
|
||||||
|
publish SRV rather than direct address records and therefore use `mongodb+srv`
|
||||||
|
URLs.
|
||||||
- The ephemeral `irristaud:` rclone remote found the sole `irristaud` container
|
- The ephemeral `irristaud:` rclone remote found the sole `irristaud` container
|
||||||
and listed its six root entries. No object content was downloaded and no
|
and listed its six root entries. No object content was downloaded and no
|
||||||
rclone configuration was persisted.
|
rclone configuration was persisted.
|
||||||
|
|
||||||
Dadbod's four display names require activation of the pending Neovim
|
Dadbod's four display names are active and both MongoDB connections work. The
|
||||||
configuration and explicit authorization of the changed workbench `.envrc`.
|
changed workbench `.envrc` still needs explicit re-authorization before the user
|
||||||
|
visually confirms the MariaDB fix.
|
||||||
|
|
||||||
## Excluded from migration
|
## Excluded from migration
|
||||||
|
|
||||||
@@ -105,5 +109,6 @@ credential is still active.
|
|||||||
the reviewed local contract and work independently.
|
the reviewed local contract and work independently.
|
||||||
- Management accepts an account-issued JWT only as the raw `Authorization` value,
|
- Management accepts an account-issued JWT only as the raw `Authorization` value,
|
||||||
contrary to its current OpenAPI Bearer declaration.
|
contrary to its current OpenAPI Bearer declaration.
|
||||||
- Herdr issue 197 is suitable for a local planning pilot, but the current Codex
|
- The Herdr issue 197 pilot produced local-only frontend and backend planning
|
||||||
session is not running inside Herdr and must not control it.
|
commits without touching company GitHub. Both identify the separate account
|
||||||
|
service, not `yookr-dashboard`, as the implementation owner.
|
||||||
@@ -50,30 +50,38 @@ restarted Kitty and closed the user's terminal session.
|
|||||||
The approved user-key SOPS authority now contains active credentials and ten
|
The approved user-key SOPS authority now contains active credentials and ten
|
||||||
provenance-preserving archive namespaces. Its workbench exports passed a test
|
provenance-preserving archive namespaces. Its workbench exports passed a test
|
||||||
API login, RabbitMQ overview, MySQL test/live `SELECT 1`, MongoDB test/live
|
API login, RabbitMQ overview, MySQL test/live `SELECT 1`, MongoDB test/live
|
||||||
`ping`, and read-only Irristaud object-storage listing.
|
`ping`, and read-only Irristaud object-storage listing. Dadbod exposes all four
|
||||||
|
names and the MongoDB connections work. Both MariaDB connections now use the
|
||||||
|
native client with narrowly scoped certificate-verification exceptions; their
|
||||||
|
exact example queries passed over TLS 1.3 in both environments. Direct test
|
||||||
|
login and authenticated reads still return HTTP 200 for Yookr, rules, and
|
||||||
|
management.
|
||||||
|
- Herdr ran the issue 197 planning pilot in two predictable, non-overlapping
|
||||||
|
dashboard worktrees. Codex produced frontend commit `20f9d0f`; Claude produced
|
||||||
|
backend commit `bd965ea`. Short, long, done, fallback-agent, and genuinely
|
||||||
|
approval-blocked states behaved correctly, and dirty worktree removal was
|
||||||
|
refused. Nothing reached company GitHub. Both plans found that password reset
|
||||||
|
belongs to the separate account service rather than `yookr-dashboard`.
|
||||||
|
|
||||||
## Active pilot gates
|
## Active pilot gates
|
||||||
|
|
||||||
These gates do not block work on each other.
|
These gates do not block work on each other.
|
||||||
|
|
||||||
- Activate the pending Neovim configuration, explicitly authorize the changed
|
- Explicitly authorize the changed workbench `.envrc`, restart Neovim, and
|
||||||
workbench `.envrc`, and confirm Dadbod shows the four centralized test/live
|
visually confirm the MariaDB examples and Kulala response chaining. Create a
|
||||||
connections. Create a Marimo-to-HTML report only when a concrete cross-system
|
Marimo-to-HTML report only when a concrete cross-system investigation gives it
|
||||||
investigation gives it durable value.
|
durable value.
|
||||||
- Keep Bruno, DBeaver, and PIM clients until their separate pilots decide them.
|
- Keep Bruno, DBeaver, and PIM clients until their separate pilots decide them.
|
||||||
- Wait for a real Monday ticket before adding anything beyond native GitHub,
|
- Route issue 197 to the actual account repositories before implementation;
|
||||||
Herdr, Git, and worktree workflows. Issue 197 is selected, but this Codex
|
leave the two local dashboard planning branches available as evidence.
|
||||||
session is outside Herdr and cannot safely control the pilot.
|
|
||||||
|
|
||||||
The Herdr pilot passes only when short, long, and approval-blocked sessions have
|
The remaining Herdr observations are that detach and reattach preserve output,
|
||||||
accurate attention state; detach and reattach preserve output; one Claude or Pi
|
each completed event produces exactly one notification, and both worktree
|
||||||
fallback works; and each completed event produces exactly one notification.
|
`.envrc` files receive explicit authorization. Short, long, approval-blocked,
|
||||||
Create two independently writing, non-overlapping task worktrees under
|
fallback-agent, predictable-path, non-overlapping-write, dirty-removal, and
|
||||||
`~/dev/work/.worktrees/<repository>/<branch-slug>`, explicitly authorize each
|
branch-retention behavior already passed. If a remaining component fails, fall
|
||||||
`.envrc`, and confirm paths are predictable, dirty removal is refused, and the
|
back independently to native agent sessions and Codex TUI notifications or
|
||||||
branches remain for review. If a component fails, fall back independently to
|
native `git worktree add/list/remove`; do not add a wrapper or Worktrunk yet.
|
||||||
native agent sessions and Codex TUI notifications or native
|
|
||||||
`git worktree add/list/remove`; do not add a wrapper or Worktrunk yet.
|
|
||||||
|
|
||||||
## Deferred pilots
|
## Deferred pilots
|
||||||
|
|
||||||
@@ -134,7 +142,10 @@ the fresh-shell GitHub read and restarted-Codex Context7 lookup must both work.
|
|||||||
tools wait for observed needs. Its one API environment catalogue covers the
|
tools wait for observed needs. Its one API environment catalogue covers the
|
||||||
Yookr, rules, aggregation, and management APIs; Kulala owns requests and
|
Yookr, rules, aggregation, and management APIs; Kulala owns requests and
|
||||||
Dadbod receives the four named database connections from the workbench's
|
Dadbod receives the four named database connections from the workbench's
|
||||||
SOPS-derived environment.
|
SOPS-derived environment. The two MariaDB routers expose auto-generated
|
||||||
|
private-CA certificates without a valid host identity, so only those URLs
|
||||||
|
disable certificate verification while retaining TLS; restore verification
|
||||||
|
when infrastructure provides usable CA and host certificates.
|
||||||
- The reviewed `yookr-api/openapi.yaml` remains the usable local contract. The
|
- The reviewed `yookr-api/openapi.yaml` remains the usable local contract. The
|
||||||
deployed generated document's dangling `ReadParameters` reference is accepted
|
deployed generated document's dangling `ReadParameters` reference is accepted
|
||||||
for now and does not block direct API requests.
|
for now and does not block direct API requests.
|
||||||
@@ -175,7 +186,7 @@ the fresh-shell GitHub read and restarted-Codex Context7 lookup must both work.
|
|||||||
|
|
||||||
## Next step
|
## Next step
|
||||||
|
|
||||||
Activate the pending Neovim change, authorize the changed workbench `.envrc`,
|
Activate the pending Neovim JavaScript-query mapping, authorize the changed
|
||||||
and confirm the four Dadbod names. Resume issue 197 from a Codex session launched
|
workbench and pilot-worktree `.envrc` files, and confirm the two MariaDB examples
|
||||||
inside Herdr, then complete one real cross-system investigation and the Herdr
|
inside Dadbod. Then confirm Herdr notifications and detach/reattach persistence,
|
||||||
pilot without mutating company GitHub.
|
and run one real cross-system investigation without mutating company GitHub.
|
||||||
@@ -162,14 +162,19 @@ and build configurations, then provide an activation command.
|
|||||||
|
|
||||||
## Remaining pilots
|
## Remaining pilots
|
||||||
|
|
||||||
- Activate and visually confirm the workbench's four SOPS-derived Dadbod
|
- Authorize the changed workbench `.envrc` and visually confirm its two MariaDB
|
||||||
connections. Add a Marimo report only for a real cross-system investigation.
|
examples. The four SOPS-derived Dadbod connections, both MongoDB connections,
|
||||||
|
and all four read-only example-query runs already passed. Add a Marimo report
|
||||||
|
only for a real cross-system investigation.
|
||||||
- Add another ephemeral read-only rclone remote only when credentials for a new
|
- Add another ephemeral read-only rclone remote only when credentials for a new
|
||||||
Leafcloud project become available. Irristaud listing has passed; do not upload.
|
Leafcloud project become available. Irristaud listing has passed; do not upload.
|
||||||
- Use the reviewed local Yookr OpenAPI contract while the accepted malformed
|
- Use the reviewed local Yookr OpenAPI contract while the accepted malformed
|
||||||
generated test document remains deployed.
|
generated test document remains deployed.
|
||||||
- Run the complete Herdr notification, fallback-agent, and safe worktree pilot
|
- Finish only the notification, detach/reattach, and per-worktree direnv
|
||||||
with a real Monday ticket.
|
observations for the Herdr pilot. Its Codex/Claude fallback, attention states,
|
||||||
|
local branches, parallel non-overlapping plans, and dirty-removal guard passed
|
||||||
|
with issue 197; the plans show that implementation belongs outside the
|
||||||
|
dashboard repository.
|
||||||
- Keep Bruno, DBeaver, and existing PIM clients until their independent gates are
|
- Keep Bruno, DBeaver, and existing PIM clients until their independent gates are
|
||||||
resolved.
|
resolved.
|
||||||
|
|
||||||
|
|||||||
@@ -6,36 +6,37 @@ local commands = {
|
|||||||
"DBUIRenameBuffer",
|
"DBUIRenameBuffer",
|
||||||
"DBUILastQueryInfo",
|
"DBUILastQueryInfo",
|
||||||
}
|
}
|
||||||
local filetypes = { "sql", "mysql", "plsql" }
|
local sql_filetypes = { "sql", "mysql", "plsql" }
|
||||||
|
local query_filetypes = { "sql", "mysql", "plsql", "javascript" }
|
||||||
|
|
||||||
require("lz.n").load({
|
require("lz.n").load({
|
||||||
{ "vim-dadbod" },
|
{ "vim-dadbod" },
|
||||||
{ "vim-dadbod-completion", ft = filetypes },
|
{ "vim-dadbod-completion", ft = sql_filetypes },
|
||||||
{
|
{
|
||||||
"vim-dadbod-ui",
|
"vim-dadbod-ui",
|
||||||
cmd = commands,
|
cmd = commands,
|
||||||
ft = filetypes,
|
ft = query_filetypes,
|
||||||
keys = {
|
keys = {
|
||||||
{ "<leader>qo", "<cmd>DBUIToggle<cr>", desc = "Toggle database workspace" },
|
{ "<leader>qo", "<cmd>DBUIToggle<cr>", desc = "Toggle database workspace" },
|
||||||
{
|
{
|
||||||
"<localleader>r",
|
"<localleader>r",
|
||||||
"<Plug>(DBUI_ExecuteQuery)",
|
"<Plug>(DBUI_ExecuteQuery)",
|
||||||
mode = { "n", "x" },
|
mode = { "n", "x" },
|
||||||
ft = filetypes,
|
ft = query_filetypes,
|
||||||
remap = true,
|
remap = true,
|
||||||
desc = "Execute database query",
|
desc = "Execute database query",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"<localleader>s",
|
"<localleader>s",
|
||||||
"<Plug>(DBUI_SaveQuery)",
|
"<Plug>(DBUI_SaveQuery)",
|
||||||
ft = filetypes,
|
ft = query_filetypes,
|
||||||
remap = true,
|
remap = true,
|
||||||
desc = "Save database query",
|
desc = "Save database query",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"<localleader>p",
|
"<localleader>p",
|
||||||
"<Plug>(DBUI_EditBindParameters)",
|
"<Plug>(DBUI_EditBindParameters)",
|
||||||
ft = filetypes,
|
ft = query_filetypes,
|
||||||
remap = true,
|
remap = true,
|
||||||
desc = "Edit query parameters",
|
desc = "Edit query parameters",
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in new issue
Block a user