Skip to content

S-QUORUM: agent tool_call_log + capability claiming filter (gated) + CI gate#25

Merged
DealAppSeo merged 2 commits into
mainfrom
feat/cc-2026-06-02-tool-call-logging
Jun 12, 2026
Merged

S-QUORUM: agent tool_call_log + capability claiming filter (gated) + CI gate#25
DealAppSeo merged 2 commits into
mainfrom
feat/cc-2026-06-02-tool-call-logging

Conversation

@DealAppSeo

Copy link
Copy Markdown
Owner

S-QUORUM Phases 4, 5, 7 for the swarm agents. All flag-gated default-off, on-branch, no merge. Node tests green (getNextTask 8/8, provenance, pulseCheckExecutor 9/9).

Phase 4 — tool_call_log (gated TOOL_CALL_LOGGING)

  • lib/tool-call-logger.js: logToolCall() — sha256(output), jsonb input, inserts via the direct-pg pooler into the hash-chained tool_call_log; never throws.
  • Wired into callLLM (fire-and-forget — no latency, no-op unless flag set). Write path + hash-chain trigger verified live (row inserted, previous_entry_hash stamped, then removed).

Phase 5 — capability claiming filter (gated CAPABILITY_FILTER, default OFF)

  • getNextTask query gains a capability predicate that is a no-op when the flag is off (byte-identical). When on, agents only claim AGENT_TASK_TYPES (default = the 9 knownTypes), so cait/EVERGREEN (~84% of shadow_rejects per S-HARDEN) stop being claimed-then-rejected.

Phase 7 — CI

  • .github/workflows/ci.yml: syntax-check core libs + run the node test suite.

⚠️ Deconfliction

getNextTask/callLLM overlap GA's in-flight feat/ga-2026-05-30-t12-concurrency. These changes are intentionally small + flag-gated for easy folding into T12 — GA/Sean to fold, not blind-merge. No self-merge.

🤖 Generated with Claude Code

…ed) + CI gate

S-QUORUM Phases 4, 5, 7 (trinity-symphony-shared). All flag-gated, default-off;
both verified not to alter current behavior when flags are unset.

Phase 4 - tool_call_log (gated TOOL_CALL_LOGGING):
- lib/tool-call-logger.js: logToolCall() - sha256(output), jsonb input, inserts via
  direct-pg pooler into the hash-chained tool_call_log; never throws.
- Wired into callLLM (fire-and-forget; no latency, no-op unless flag set). Logs
  tool_name=llm:<provider>:<model> + prompt_sha256. Write path + hash-chain trigger
  verified live (row inserted, previous_entry_hash stamped 64-char sha256, then removed).

Phase 5 - capability claiming filter (gated CAPABILITY_FILTER, default OFF):
- getNextTask query gains a predicate that, when capFilter is null (flag off), is a
  no-op (byte-identical to prior behavior). When on, agents only claim
  AGENT_TASK_TYPES (default = the 9 knownTypes), so cait/EVERGREEN
  (~84% of shadow_rejects, per S-HARDEN) stop being claimed-then-rejected.

Phase 7 - .github/workflows/ci.yml: syntax-check core libs + run the node test suite.

Node tests green (getNextTask 8/8, provenance, pulseCheckExecutor 9/9). Deconfliction:
getNextTask/callLLM overlap GA's in-flight feat/ga-2026-05-30-t12-concurrency - these
changes are small + flag-gated for easy folding into T12. On branch; no merge.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@supabase

supabase Bot commented Jun 2, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project qnnpjhlxljtqyigedwkb because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

…node tests green)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@DealAppSeo DealAppSeo merged commit a0863fd into main Jun 12, 2026
2 checks passed
@DealAppSeo DealAppSeo deleted the feat/cc-2026-06-02-tool-call-logging branch June 12, 2026 19:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant