Skip to content

Add author and review skills for new bundle resources - #7360

Draft
janniklasrose wants to merge 2 commits into
mainfrom
janniklasrose/resource-skills
Draft

janniklasrose wants to merge 2 commits into
mainfrom
janniklasrose/resource-skills

Conversation

@janniklasrose

@janniklasrose janniklasrose commented Nov 4, 2026 •

Copy link
Copy Markdown
Member

Changes

Two agent skills under .agents/skills/, plus the documentation they rely on:

  • author-new-resource guides an engineer who owns an API but does not know this codebase through adding a bundle resource type. It starts with an API readiness gate (identity, keyed repeated fields, round-tripping inputs, annotations, update semantics, long-running operations, delete and read-after-create behaviour, launch stage) whose failing checks are sent back to the API team with the AIP reference, then walks the wiring, generators, tests and PR in phases that each end in a verification command. References carry the wiring checklist with the test that enforces each row, the testing playbook with proof-it-ran commands, and a pitfalls list.
  • review-new-resource reviews such a PR in fixed passes, design first: scope, API shape and plan semantics, adapter contract, wiring completeness, fake-server scope, tests and whether they ran, generated files, user-facing text. Same print-only output format as the pr-review skill.
  • bundle/direct/dresources/README.md now states the KeyedSlices field requirement, the no-update and partial-update rules, the fake-server scope, the invariant matrix step, and the actual contract for the id returned from DoCreate. Three interface comments in adapter.go say the same in one sentence each. AGENTS.md and the dresources rule point at the skills.

Both skills cite code paths and patterns only.

Why

Adding a resource should be one PR with little pushback. The resource README stopped where the hard decisions start, and review attention tended to reach design questions late. The gate moves API-shape problems to the API, where they are cheapest to fix, and the checklists make the forgettable steps mechanical.

Tests

Backtested outside the repo against eleven past resource additions and one open PR, each at the commit that received the most review, with the reviewer agent given read-only git and no access to the PR. Human review comments were split into a tuning set (read while writing the skill) and a held-out set (sealed until an LLM judge scored them). On the held-out set the review skill reproduced about half of the substantive human asks by weighted recall (Opus 0.57, Sonnet 0.54 over the 28 asks still applicable at the reviewed commits), and most of its additional findings were judged plausible and valuable; the judges found one contradicted claim for Opus and seven for Sonnet. The author skill's dry-runs at the pre-PR commits returned STOP on the one API whose shape later needed workarounds, and no STOP with the expected asks on the others. One full authoring run from a pre-PR commit, blind to later history, produced a resource within the expected size with ./task test, ./task lint and ./task generate-check passing, and the same design decisions as the merged implementation except two deliberate, documented deviations.

Docs-only change in this PR; ./task ws and go build ./... pass.

This pull request and its description were written by Isaac.

Two agent skills under .agents/skills: author-new-resource walks an API
readiness gate, the wiring, generators, tests and PR for a new resource type
with a verification command per phase; review-new-resource checks such a PR
from design down to tests in fixed passes. The dresources README and adapter
comments now state the KeyedSlices field requirement, the no-update and
partial-update rules, the fake server scope and the invariant matrix step.

Co-authored-by: Isaac <no-reply@databricks.com>
@janniklasrose janniklasrose added the new-resource-work Skills, docs and small refactors for onboarding new bundle resources label Nov 4, 2026
@github-actions github-actions Bot added the DABs DABs related issues label Nov 4, 2026
@eng-dev-ecosystem-bot

eng-dev-ecosystem-bot commented Nov 4, 2026 •

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: 8e41b44

Run: 41872212298

Env ✅​pass 🙈​skip Time
✅​ aws linux-2core-8gb 271 15 4:24
✅​ aws-windows-latest-4core-16gb 273 13 3:54
✅​ azure linux-2core-8gb 270 15 5:08
✅​ azure-windows-latest-4core-16gb 272 13 4:01
✅​ gcp linux-2core-8gb 271 15 5:12
✅​ gcp-windows-latest-4core-16gb 273 13 4:00
Top 3 slowest tests (at least 2 minutes):
duration env testname
3:46 aws-windows-latest-4core-16gb TestAccept
3:29 azure-windows-latest-4core-16gb TestAccept
3:27 gcp-windows-latest-4core-16gb TestAccept

Move the adapter tests to the generate phase, since they need the generated
rules; correct the state-fixture row (the state tests assert full coverage);
note the bind test's per-type id, the refschema first-run report, the PyDABs
codegen failure mode, and where identity, create-only markers and declared
error codes live in a proto.

Co-authored-by: Isaac <no-reply@databricks.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DABs DABs related issues new-resource-work Skills, docs and small refactors for onboarding new bundle resources

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants