Wire private AI skills submodule (.dspace-skills)#1324
Conversation
📝 WalkthroughWalkthroughAdds a Changesdspace-skills submodule setup
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. 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. Comment |
There was a problem hiding this comment.
Pull request overview
This PR wires in a private, team-internal AI knowledge base by adding a new .dspace-skills/ git submodule and documenting how contributors/agents should consume it when available.
Changes:
- Add
.dspace-skillssubmodule entry to.gitmodules. - Add top-level documentation (
AGENTS.md,CLAUDE.md) describing how to initialize and use.dspace-skills/.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
CLAUDE.md |
Adds guidance on using the private .dspace-skills/ submodule when present. |
AGENTS.md |
Adds the same guidance block for agent-related workflows. |
.gitmodules |
Registers the .dspace-skills submodule (path/url/branch). |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
.gitmodules (1)
4-7: 🩺 Stability & Availability | 🔵 TrivialAddress missing SSH authentication for private submodules in CI.
The addition of
submodules: 'recursive'in workflows like.github/workflows/create_bitstreams.ymland.github/actions/import-db/action.ymlwill fail because.gitmodulesreferences the private submodule via SSH (git@github.com:dataquest-dev/dspace-skills.git). Configure the checkout step to inject an SSH private key or switch the URL to HTTPS with a token to ensure successful checkout in CI.🤖 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 @.gitmodules around lines 4 - 7, The recursive submodule checkout will fail because the .gitmodules entry for .dspace-skills points to a private SSH URL, so update the CI checkout setup in the affected workflows/actions (for example, create_bitstreams and import-db) to provide SSH authentication or use an HTTPS URL with a token. Make sure the checkout step can authenticate before fetching submodules, and keep the submodule reference consistent with the private repository access method.
🤖 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 @.dspace-skills:
- Line 1: The `.dspace-skills` submodule configuration is using a private
SSH-only source that breaks recursive checkout in public clones and CI. Update
the submodule setup by either changing the `.gitmodules` entry for
`.dspace-skills` to an HTTPS/token-friendly URL, or by wiring the workflows that
use recursive submodules (for example, the ones that check out the repo and run
`submodules: 'recursive'`) to provide the needed SSH deploy key or token; if the
submodule is not required, remove the `.dspace-skills` reference entirely.
---
Nitpick comments:
In @.gitmodules:
- Around line 4-7: The recursive submodule checkout will fail because the
.gitmodules entry for .dspace-skills points to a private SSH URL, so update the
CI checkout setup in the affected workflows/actions (for example,
create_bitstreams and import-db) to provide SSH authentication or use an HTTPS
URL with a token. Make sure the checkout step can authenticate before fetching
submodules, and keep the submodule reference consistent with the private
repository access method.
🪄 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: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 0f18f282-05a9-465a-9e1e-4cc449df2665
📒 Files selected for processing (4)
.dspace-skills.gitmodulesAGENTS.mdCLAUDE.md
| @@ -0,0 +1 @@ | |||
| Subproject commit 2a62a2ebff88a05acf78d374003032b455843066 | |||
There was a problem hiding this comment.
🩺 Stability & Availability | 🔴 Critical
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Inspect the .gitmodules entry for .dspace-skills (url, branch, update/shallow settings)
fd -H -t f '^\.gitmodules$' --exec cat -n {}
# Check CI configs for how submodules are initialized (fatal vs. non-fatal, auth)
fd -H -t f -e yml -e yaml . .github 2>/dev/null --exec sh -c 'echo "=== {} ==="; rg -n -C2 "submodule" "{}"'
rg -n -C2 "submodule" -g '!**/node_modules/**' .circleci .github 2>/dev/nullRepository: dataquest-dev/dspace-angular
Length of output: 2373
The private .dspace-skills submodule configuration will break public clones and CI pipelines.
The .gitmodules file defines .dspace-skills with the SSH URL git@github.com:dataquest-dev/dspace-skills.git and branch main. Because this repo uses submodules: 'recursive' in workflows like .github/workflows/create_bitstreams.yml and .github/actions/import-db/action.yml, any runner or user without SSH credentials to dataquest-dev/dspace-skills.git will encounter a fatal error during the checkout process. This prevents external contributors from cloning the repository and may cause CI jobs to fail if the runners are not explicitly provisioned with access to this private submodule.
Please either:
- Configure the required workflows to inject an SSH deploy key or
GITHUB_TOKENspecifically for this submodule. - Switch the
.gitmodulesURL to HTTPS if the submodule is intended to be public or accessible via tokens. - Remove the submodule reference if it is not a hard dependency for the build.
🤖 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 @.dspace-skills at line 1, The `.dspace-skills` submodule configuration is
using a private SSH-only source that breaks recursive checkout in public clones
and CI. Update the submodule setup by either changing the `.gitmodules` entry
for `.dspace-skills` to an HTTPS/token-friendly URL, or by wiring the workflows
that use recursive submodules (for example, the ones that check out the repo and
run `submodules: 'recursive'`) to provide the needed SSH deploy key or token; if
the submodule is not required, remove the `.dspace-skills` reference entirely.
Problem description
Wire private .dspace-skills submodule to DSpace app.
Analysis
(Write here, if there is needed describe some specific problem. Erase it, when it is not needed.)
Problems
(Write here, if some unexpected problems occur during solving issues. Erase it, when it is not needed.)
Copilot review
Summary by CodeRabbit