Skip to content

[1/3] docs: add domain glossaries for Proxy and EQL Mapper#422

Open
freshtonic wants to merge 3 commits into
mainfrom
queue/eql-v3/setup-skills
Open

[1/3] docs: add domain glossaries for Proxy and EQL Mapper#422
freshtonic wants to merge 3 commits into
mainfrom
queue/eql-v3/setup-skills

Conversation

@freshtonic

@freshtonic freshtonic commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📚 eql-v3 PR  ·  1 of 3

Part of a queue. The PRs merge in FIFO order — the numbered order below, #1 first. Merging one supersedes the PRs after it until the author runs git queue sync (rebases the rest onto the merged base) and git queue submit (retargets their PRs).

⏳🟢 #422 queue/eql-v3/setup-skillsmain  👈 this PR
⏳🟢 #423 queue/eql-v3/upgrade-depsqueue/eql-v3/setup-skills
⏳🟢 #424 queue/eql-v3/typecheckqueue/eql-v3/upgrade-deps

✅ approved · ♻️ changes requested · ⏳ review pending  |  🟣 merged · 🟢 open · ⚫ closed  —  status as of the last git queue submit.
🥞 Managed by git-queue — do not edit this list by hand.

About this queue

Migrates CipherStash Proxy from EQL v2 to EQL v3 (cipherstash-client 0.34.1-alpha.4 → 0.42.0, EQL 2.3.0-pre.3 → 3.0.2), replacing the opaque eql_v2_encrypted composite type with 53 typed jsonb domains that encode both scalar type and searchable capability in the column type itself.

About this branch

Set up the Matt Pocock skills which will we use to drive the subsequent changes.

@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Adds agent guidance for Linear issue management and triage, plus a context map and package glossaries covering Proxy, EQL Mapper, shared terminology, ADR usage, and a documented capability-model gap.

Changes

Agent and Domain Documentation

Layer / File(s) Summary
Agent workflow guidance
CLAUDE.md, docs/agents/issue-tracker.md, docs/agents/triage-labels.md
Documents Linear workflows, issue linking, status handling, triage labels, and agent-skill references.
Domain documentation map
CONTEXT-MAP.md, docs/agents/domain.md
Defines workspace contexts, shared vocabulary, cross-context relationships, ADR lookup rules, and terminology handling.
Package context glossaries
packages/cipherstash-proxy/CONTEXT.md, packages/eql-mapper/CONTEXT.md
Defines Proxy and EQL Mapper concepts, type and transformation terminology, naming conventions, and the known trait-bound enforcement gap.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title is concise and accurately reflects the main documentation additions, though it omits the agent-skill docs.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch queue/eql-v3/setup-skills

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

…n docs

Record where issues live and how domain documentation is laid out, so
engineering skills read from the right places instead of assuming defaults.

- Issue tracker is Linear (Product Engineering, CIP-), not GitHub Issues.
  GitHub holds code and PRs only. Prefers linear-cli for writes since the
  Linear MCP tools are unavailable in headless runs.
- Domain docs are multi-context: CONTEXT-MAP.md points at per-package
  CONTEXT.md files under packages/*/. Per-package glossaries and ADRs are
  created lazily, so their absence is expected.

No triage labels recorded; the triage skill is not installed.

Stable-Commit-Id: q-5q3yy9rhgw8n99g19fbvgkytvr
Stable-Commit-Id: q-56zbh5gc0z7wg9g0q81b58csv7
Resolve the terms that collide hardest across the two contexts, and correct
the Index entry in CONTEXT-MAP.md, which had the collision backwards.

- EqlTrait is a capability; the storage that satisfies it is a SEM term
  (searchable encrypted metadata), many-to-one. Neither is an index.
- Ban 'session' in Proxy: the code used it for both a connection and a
  single statement, and PostgreSQL owns the word for a third thing.
- Split EncryptConfig into encrypt credentials vs column encrypt config;
  the single name currently covers two unrelated public structs.
- Record that Proxy assigns EqlTraits::all() to every encrypted column, so
  EQL Mapper's bound checking cannot fire in production.

Stable-Commit-Id: q-0tpfq3xh26grdk0fwpcxr1v6hg
@freshtonic
freshtonic force-pushed the queue/eql-v3/setup-skills branch from 3010414 to ad36391 Compare July 21, 2026 13:06

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/agents/domain.md`:
- Around line 28-39: Specify the text language on the fenced directory-tree
block in the documentation by changing its fence to text, preserving the
existing tree content unchanged.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a4e1f88e-d3dd-4bbe-9428-ba13993aa6b9

📥 Commits

Reviewing files that changed from the base of the PR and between 43da7e4 and ad36391.

📒 Files selected for processing (7)
  • CLAUDE.md
  • CONTEXT-MAP.md
  • docs/agents/domain.md
  • docs/agents/issue-tracker.md
  • docs/agents/triage-labels.md
  • packages/cipherstash-proxy/CONTEXT.md
  • packages/eql-mapper/CONTEXT.md

Comment thread docs/agents/domain.md
Comment on lines +28 to +39
```
/
├── CONTEXT-MAP.md
├── docs/adr/ ← system-wide decisions
└── packages/
├── cipherstash-proxy/
│ ├── CONTEXT.md
│ └── docs/adr/ ← context-specific decisions
└── eql-mapper/
├── CONTEXT.md
└── docs/adr/
```

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Specify a language for the fenced tree block.

Use ```text for the directory listing so the documentation passes markdownlint MD040.

🧰 Tools
🪛 markdownlint-cli2 (0.23.0)

[warning] 28-28: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/agents/domain.md` around lines 28 - 39, Specify the text language on the
fenced directory-tree block in the documentation by changing its fence to text,
preserving the existing tree content unchanged.

Source: Linters/SAST tools

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