Skip to content

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

Closed
freshtonic wants to merge 3 commits into
mainfrom
chore/setup-skills
Closed

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

Conversation

@freshtonic

@freshtonic freshtonic commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

📚 Queued 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).

  1. ⏳🟢 #420 chore/setup-skillsmain  👈 this PR
  2. ⏳🟢 #421 chore/eql-v3-depschore/setup-skills
  3. 🟣 #417 feat/eql-v3-typecheckchore/eql-v3-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.

Summary by CodeRabbit

  • Documentation
    • Expanded contributor guidance for release announcements, issue tracking, triage labels, and agent workflows.
    • Added a centralized map of system domains, shared terminology, and relationships between key components.
    • Documented domain concepts for proxying, query mapping, encryption, schemas, and statement processing.
    • Clarified how to use architecture decision records and resolve terminology or documentation conflicts.
    • Recorded known limitations in capability validation and issue-management workflows.

…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.

Queued-Commit-Id: q-5q3yy9rhgw8n99g19fbvgkytvr
Queued-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.

Queued-Commit-Id: q-0tpfq3xh26grdk0fwpcxr1v6hg
@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This documentation-focused change adds agent guidance for Linear workflows and domain modeling, establishes a workspace context map, and adds Proxy and EQL Mapper glossaries describing terminology, cross-context relationships, and a known capability-model gap.

Changes

Agent and domain documentation

Layer / File(s) Summary
Agent guidance and issue workflows
CLAUDE.md, docs/agents/*
Documents Linear issue operations, triage labels, workflow statuses, PR linking, external PR policy, and how agents should consult domain documentation and ADRs.
Workspace context map
CONTEXT-MAP.md
Defines workspace contexts, Proxy–EQL Mapper relationships, shared vocabulary, terminology collisions, and the current capability seam behavior.
Package domain glossaries
packages/*/CONTEXT.md
Adds Proxy and EQL Mapper terminology covering encryption, control-plane behavior, SQL typing, resolution, outputs, and the documented trait-bound model gap.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • cipherstash/proxy#415: Adds overlapping agent-skill and context-documentation conventions, with additional unrelated product-code migrations.
🚥 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 accurately summarizes the main change: adding domain glossaries for Proxy and EQL Mapper.
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 chore/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.

@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: 2

🤖 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`:
- Line 28: Update the directory-tree code fence in domain.md to declare the text
language using ```text, while preserving the existing tree diagram content and
closing fence.

In `@packages/eql-mapper/CONTEXT.md`:
- Line 48: Update the resultset wording in CONTEXT.md to the standard “result
set” spelling, preserving the surrounding documentation text.
🪄 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: 5e35838f-05b9-434b-a4de-c7e308ba59dd

📥 Commits

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

📒 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

This repo is a Cargo workspace, so contexts live under `packages/`, not `src/`:

```

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 directory-tree fence.

Line 28 triggers markdownlint MD040. Use ```text for the tree diagram.

Proposed fix
-```
+```text
 /
 ├── CONTEXT-MAP.md
🧰 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` at line 28, Update the directory-tree code fence in
domain.md to declare the text language using ```text, while preserving the
existing tree diagram content and closing fence.

Source: Linters/SAST tools

_Avoid_: "term" meaning an encrypted search term; that sense belongs to Proxy.

**Projection**:
The resultset shape of a statement or subquery — an ordered list of optionally-named

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

Use the standard “result set” spelling.

Line 48 should say “result set” for clearer, conventional documentation wording.

🧰 Tools
🪛 LanguageTool

[grammar] ~48-~48: Ensure spelling is correct
Context: ... belongs to Proxy. Projection: The resultset shape of a statement or subquery — an o...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🤖 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 `@packages/eql-mapper/CONTEXT.md` at line 48, Update the resultset wording in
CONTEXT.md to the standard “result set” spelling, preserving the surrounding
documentation text.

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