Enable IntelliJ MCP, TeamCity guidance, and review-lk#1356
Enable IntelliJ MCP, TeamCity guidance, and review-lk#1356labkey-jeckels wants to merge 29 commits into
Conversation
Add skill for creating upgrade tests
# Conflicts: # CLAUDE.md
|
This doesn't work with my configuration. I used |
labkey-tchad
left a comment
There was a problem hiding this comment.
I still have to remind Claude to use the IntelliJ MCP pretty regularly (It prefers to use Bash(find *)).
/branch-status --monitor seems to work well. The scheduled job gets cancelled if Claude has to compact context. That seems to be by design so I'm not sure if we can do anything about it.
I never received any push notifications however. I'm not sure if that was because I was running it within the IntelliJ Claude terminal or because it didn't see anything worth notifying me of.
|
|
||
| Upgrade tests have two phases that run on different server versions: | ||
| - **Setup** (`doSetup()`): runs against the OLD version to create test data | ||
| - **Verification** (`@Test` methods): runs against the NEW version after the upgrade |
There was a problem hiding this comment.
Some @Test methods will also run against the old version as a pre-upgrade validation step.
| @@ -0,0 +1,109 @@ | |||
| --- | |||
| name: submodule-feature-branch | |||
| description: Create a LabKey upgrade test that runs setup on an old release and verification on a new release, using the correct submodule feature branch workflow for TeamCity CI. Use when the user asks to add an upgrade test, create a feature branch for a schema migration, or stage changes across release branches. | |||
There was a problem hiding this comment.
Where did this 'submodule' terminology came from? Does it help Claude understand our repo structure?
I guess git submodules sort of match our repository structure. I just hope Claude doesn't try to run git submodule commands in our repos.
|
|
||
| ### Class-level vs method-level: version matters | ||
|
|
||
| **Class-level** `@EarliestVersion` / `@LatestVersion` is only supported in **26.6 and later**. |
There was a problem hiding this comment.
This is not accurate. I added the class-level support in the 26.3 branch. Other than monthly release branches, 25.11 is the only version that doesn't support the class-level annotation. We should simplify this skill by making class-level annotations assumed to be available and adding a single special case for 25.11 explaining that they aren't available.
That or just backport the change to the annotations. It's a pretty simple change.
Tasks
/review-lkon OSX @labkey-tchad/review-lkon Windows @labkey-adam/branch-status, including--monitor(and if brave--fix) @labkey-tchadRationale
IntelliJ has native support for MCP, compatible with Claude Code. Plugins provide other tools like debugger integration.
We can also consolidate the
/review-prand/review-localcommands into a single/review-lkthat uses a script to gather changes across all matching feature branches (point at a PR or FB), or looks at local changes.https://www.jetbrains.com/help/idea/mcp-server.html
https://plugins.jetbrains.com/plugin/29233-debugger-mcp-server
https://plugins.jetbrains.com/plugin/29174-ide-index-mcp-server
We can also teach Claude to review TeamCity results and help analyze them.
/branch-statuscommand will look for branches where have you recent commits, or takes a branch name as an argument. It summarizes pull request and test results.--monitorkeeps checking for new results and sends a push notification on meaningful updates.--fixtells Claude to try its best to fix new failures.Changes
/review-lkcommand and supporting Python script/branch-statuscommand to assess PR and TeamCity results on a branchupgrade-test-authorskill to help create schema upgrade tests