• Joined on 2026-03-27
mathias closed issue mathias/homelab#4 2026-10-04 20:52:23 +00:00
feat: email-triage-agent — multi-account Gmail digest + aging-based auto-archive via LLM classification
mathias closed issue mathias/homelab#1 2026-10-04 20:52:23 +00:00
Experiment brief: email-triage-agent — daily multi-account Gmail digest via Gmail API + LLM scoring + ntfy
mathias commented on issue mathias/hyperguild#43 2026-10-04 20:52:21 +00:00
Brain interface: intent↔interface mismatch analysis (problem statement, evidence-backed)

Closing — verified live 2026-10-04: all four done-when boxes in the body are checked. The last one was ticked 2026-08-22, when ADR-0009's Decision chose to split by authority, not by consumer,…

mathias commented on issue mathias/homelab#1 2026-10-04 20:52:19 +00:00
Experiment brief: email-triage-agent — daily multi-account Gmail digest via Gmail API + LLM scoring + ntfy

Closing — verified live 2026-10-04: this experiment brief was realised. homelab#4 names it as "original experiment brief (superseded by this issue)", and the resulting service runs in production:…

mathias commented on issue mathias/homelab#4 2026-10-04 20:52:17 +00:00
feat: email-triage-agent — multi-account Gmail digest + aging-based auto-archive via LLM classification

Closing — verified live 2026-10-04: this feature has moved to its own repo and is running. kubectl -n email-triage get cronjob email-triage shows schedule 0 7 * * * Europe/Stockholm, image…

mathias pushed to main at mathias/jepa-fx-risk 2026-10-04 20:49:58 +00:00
2c1cbdf548 chore(context): resync derived adapters from canonical AGENT.md
mathias pushed to main at mathias/gitea-mcp 2026-10-04 20:49:57 +00:00
9396b4daaa chore(context): resync derived adapters from canonical AGENT.md
mathias pushed to main at mathias/template-go-web 2026-10-04 20:49:55 +00:00
f41c7dbeff chore(context): resync derived adapters from canonical AGENT.md
mathias commented on issue mathias/tapir#61 2026-10-04 20:48:50 +00:00
Uploads: choose the transcription language (Swedish / other / auto-detect), route to the right engine

Interim fix built: PR #62 (branch sprint/language; merge, tag and live check follow once CI on its head is green).

What it does: the upload form has a Language field, Swedish (preselected)…

mathias commented on pull request mathias/tapir#62 2026-10-04 20:48:39 +00:00
feat(uploads): choose the language of a recording; Swedish default, Other = auto (#61 interim)

Adversarial review, round 2 (delta cc6fe70..e3288d0, agent, by execution): APPROVE.

Verified by flip tests (all compiling mutants): the WithTimeout language test goes red for a wrapper that…

mathias pushed to sprint/language at mathias/tapir 2026-10-04 20:48:32 +00:00
f704258fdf test(transcribe): the wrapper does not restart a cancelled job; PlanFor of an empty or unknown language is pinned (#61)
mathias commented on issue mathias/hyperguild#169 2026-10-04 20:44:15 +00:00
brain_tunnel: path traversal lets an MCP token holder rewrite any file the pod can write

Gatekeeper verdict on PR #170, round 2 (87fa28e): BLOCKED. Full review is on the PR (comments 15038 for round 1, 15040 for round 2).

The brain_tunnel, brain_update and session_log fixes hold…

mathias commented on pull request mathias/hyperguild#170 2026-10-04 20:44:07 +00:00
fix: brain_tunnel, brain_update and session_log confine caller-supplied paths (#169)

Adversarial review, round 2 (head 87fa28e): BLOCKED

Both round-1 handlers are fixed in the code, and I could not get past either fix through the MCP handlers. I'm blocking because two of the…

mathias commented on pull request mathias/hyperguild#170 2026-10-04 20:44:07 +00:00
fix: brain_tunnel, brain_update and session_log confine caller-supplied paths (#169)

Adversarial review, round 1 (head 9eb3d24): BLOCKED

Posted late: the round-1 verdict went to the coordinator but not to this thread. Exploit inputs are left out because the repo is public.

**T…

mathias commented on pull request mathias/tapir#62 2026-10-04 20:42:22 +00:00
feat(uploads): choose the language of a recording; Swedish default, Other = auto (#61 interim)

Adversarial review, round 1 (agent, by execution): BLOCK (narrow) on head cc6fe70. No bad language value could reach an engine (30 raw multipart bodies, 28 mutants), auto never reached the…

mathias pushed to sprint/language at mathias/tapir 2026-10-04 20:42:13 +00:00
e3288d0654 feat(web): the language is named on the recording's page in every state; the feature says what Other really does (#61)
e0c53f8719 feat(uploads): an auto-language job is planned without the engines it never runs (#61)
0828f0debf test(web): the language refusal asserts its message, not a word the form always contains (#61)
7282893877 test(transcribe): WithTimeout hands the engine the job's language, as on the production path (#61)
Compare 4 commits »
mathias opened issue mathias/hyperguild#171 2026-10-04 20:41:05 +00:00
#157 slices 1–3: per-caller tests with in-brain symlink targets (search, hydrate, vectorstore, context excerpt, ReadNote)
mathias commented on issue mathias/hyperguild#157 2026-10-04 20:40:39 +00:00
SECURITY: symlinks anywhere in the Syncthing-shared brain dir are followed by search, vectorstore, context and graph readers

Gatekeeper round 2 on PR #168 (slice 4, head d90ce66): PASS. Evidence is in review id 5 on the PR. Not merged, verdict only.

All three round-1 blockers are closed, and I verified each one by…

mathias commented on pull request mathias/hyperguild#168 2026-10-04 20:40:38 +00:00
fix(graph,wiki): read the brain through brainfs (#157, slice 4)

pr-gatekeeper verdict, round 2: PASS (PR #168 @ d90ce66). Not merged.

mathias commented on issue mathias/hyperguild#169 2026-10-04 20:38:31 +00:00
brain_tunnel: path traversal lets an MCP token holder rewrite any file the pod can write

Precision on the session_log call: the log line (2026-10-03 16:30, principal=local-cli) doesn't record the session_id, so I can't say from the log alone what it was. The only sessions file…