From 39e20bfc88be2de150ddc215dfde4d1f917982b1 Mon Sep 17 00:00:00 2001 From: Arjun Pramanik Date: Sun, 1 Nov 2026 22:13:02 +0000 Subject: [PATCH] feat(greptile): add minimal review context and release rules Greptile already reads the root and package AGENTS.md files, and reads the whole codebase. This adds only what it can't get from those: - files.json points reviews at the docs that record verified OpenCode host behavior, each scoped to the packages it describes, plus release-channels.json and auto-advisor's AGENTS.md (added after Greptile's AGENTS.md import, so it isn't loaded otherwise). - config.json adds two rules for release mistakes that span several files: versions outside their release class or a release that skips the plan, and workflows that let PR code publish or expose tokens. --- .greptile/config.json | 22 +++++++++++++++++++++ .greptile/files.json | 45 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 .greptile/config.json create mode 100644 .greptile/files.json diff --git a/.greptile/config.json b/.greptile/config.json new file mode 100644 index 0000000..fc2436d --- /dev/null +++ b/.greptile/config.json @@ -0,0 +1,22 @@ +{ + "rules": [ + { + "id": "release-policy-coherence", + "rule": "Flag package versions outside their release class in tools/release-channels.json, packages missing from that file or from the workspace, and changes that let a release skip Changesets or the CI release plan (bun run release:check).", + "scope": [ + "packages/*/package.json", + ".changeset/**", + "tools/release-channel-guard.ts", + "tools/release-channels.json", + ".github/workflows/**" + ], + "severity": "high" + }, + { + "id": "publish-trust-boundary", + "rule": "Flag workflow changes that let pull-request code publish to npm, expose npm credentials or tokens, or publish without the release guard.", + "scope": [".github/workflows/**"], + "severity": "high" + } + ] +} diff --git a/.greptile/files.json b/.greptile/files.json new file mode 100644 index 0000000..0a6a2ea --- /dev/null +++ b/.greptile/files.json @@ -0,0 +1,45 @@ +{ + "files": [ + { + "path": "packages/opencode-auto-advisor/AGENTS.md", + "description": "Auto Advisor implementation contracts and test conventions.", + "scope": ["packages/opencode-auto-advisor/**"] + }, + { + "path": "docs/auto-advisor/findings.md", + "description": "Live-verified OpenCode host behavior that Auto Advisor depends on, with known limitations.", + "scope": ["packages/opencode-auto-advisor/**"] + }, + { + "path": "docs/output-styles/v2-port-findings.md", + "description": "Verified OpenCode V2 prompt, RPC and TUI behavior for Output Styles.", + "scope": ["packages/opencode-output-styles/**"] + }, + { + "path": "docs/opencode-v2-plugin-runtime.md", + "description": "How OpenCode V2 loads server and TUI plugins: entrypoints, exports and SDK peers.", + "scope": [ + "packages/opencode-adversarial-review/**", + "packages/opencode-agents-loader/**", + "packages/opencode-auto-advisor/**", + "packages/opencode-double-tap-timeline/**", + "packages/opencode-output-styles/**", + "packages/opencode-ram-monitor/**" + ] + }, + { + "path": "docs/v1-plugins.md", + "description": "Which packages still support OpenCode V1 and how V1 installs differ from V2 releases.", + "scope": [ + "packages/opencode-agent-prompt-inheritance/**", + "packages/*/package.json", + "tools/release-channels.json" + ] + }, + { + "path": "tools/release-channels.json", + "description": "Each package's release class (OpenCode major) and npm dist-tag channel.", + "scope": ["packages/*/package.json", ".changeset/**", "tools/release-channel-guard.ts"] + } + ] +}