Conversation
There was a problem hiding this comment.
Pull request overview
Introduces a new domains/neo4j-management/ vertical-slice domain to own the local Neo4j lifecycle (install/configure/start/stop), and updates the pipeline, tests, and documentation tooling to use the domain-based layout.
Changes:
- Move Neo4j lifecycle scripts + neo4j.conf templates into
domains/neo4j-management/and add backward-compatible stubs inscripts/. - Update
analyze.sh,init.sh, and docs to reference the new domain paths; extendrunTests.shand doc generators to includedomains/. - Add Neo4j runtime detection helpers (
detectNeo4j.sh,detectNeo4jWindows.sh) and domain-level README/changelog entry.
Reviewed changes
Copilot reviewed 25 out of 30 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| scripts/testAnalyzeDomainOption.sh | Updates test harness to create placeholder neo4j-management domain scripts in temp domains dir. |
| scripts/startNeo4j.sh | Replaced with backward-compatible redirect stub to domain implementation. |
| scripts/stopNeo4j.sh | Replaced with backward-compatible redirect stub to domain implementation. |
| scripts/runTests.sh | Expands test discovery to include domains/. |
| scripts/documentation/generateScriptReference.sh | Makes script runnable from repo root and includes domain scripts in script reference generation. |
| scripts/documentation/generateEnvironmentVariableReference.sh | Makes script runnable from repo root and includes domain scripts in env var reference generation. |
| scripts/analysis/analyze.sh | Sources Neo4j setup/start/stop from ${DOMAINS_DIRECTORY}/neo4j-management/. |
| README.md | Updates high-memory profile usage path to the new domain location. |
| init.sh | Updates workspace forwarding scripts to point at domain Neo4j scripts. |
| domains/neo4j-management/README.md | Adds domain-specific documentation and usage guidance. |
| domains/neo4j-management/setupNeo4j.sh | Domain-owned Neo4j installer (download/plugins/config). |
| domains/neo4j-management/setupNeo4jInitialPassword.sh | Domain-owned initial password setup script. |
| domains/neo4j-management/configureNeo4j.sh | Domain-owned Neo4j configuration script, now reading templates from domain config dir. |
| domains/neo4j-management/startNeo4j.sh | Domain-owned Neo4j start script. |
| domains/neo4j-management/stopNeo4j.sh | Domain-owned Neo4j stop script. |
| domains/neo4j-management/waitForNeo4jHttpFunctions.sh | Adjusts directory resolution for domain context + shared scripts directory. |
| domains/neo4j-management/useNeo4jHighMemoryProfile.sh | Adjusts to source configureNeo4j.sh from domain location. |
| domains/neo4j-management/testConfigureNeo4j.sh | Moves/adjusts integration tests for configureNeo4j.sh into the domain. |
| domains/neo4j-management/detectNeo4j.sh | Adds Linux/macOS helper to detect a running Neo4j and its home dir. |
| domains/neo4j-management/detectNeo4jWindows.sh | Adds Windows (WSL/Git Bash) helper to detect a running Neo4j and its home dir. |
| domains/neo4j-management/configuration/template-neo4j.conf | Adds default v5 template in domain. |
| domains/neo4j-management/configuration/template-neo4j-high-memory.conf | Adds high-memory v5 template in domain. |
| domains/neo4j-management/configuration/template-neo4j-low-memory.conf | Adds low-memory v5 template in domain. |
| domains/neo4j-management/configuration/template-neo4j-v4.conf | Adds v4 template in domain. |
| domains/neo4j-management/configuration/template-neo4j-v4-low-memory.conf | Adds low-memory v4 template in domain. |
| COMMANDS.md | Updates links/examples to reference domain Neo4j scripts/templates. |
| CHANGELOG.md | Adds unreleased entry documenting the new neo4j-management domain. |
| .github/workflows/internal-scripts-reference-documentation.yml | Runs script reference generator from repo root (no working-directory). |
| .github/workflows/internal-environment-variables-reference-documentation.yml | Runs env var reference generator from repo root (no working-directory). |
| .github/prompts/plan-neo4jManagementDomain.prompt.md | Adds planning prompt documenting the intended migration steps. |
Comments suppressed due to low confidence (1)
domains/neo4j-management/setupNeo4j.sh:91
- This error message references
${NEO4J_DOWNLOAD_BASE_URL}, but that variable is never set in this script (or sourced before this point), so the message will be incomplete/misleading. Consider either definingNEO4J_DOWNLOAD_BASE_URL(and using it consistently for downloads) or inlining the actual base URL used above (https://dist.neo4j.org/).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
2037e8d to
2c76e57
Compare
03cf8ed to
80df432
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 27 out of 32 changed files in this pull request and generated 2 comments.
Comments suppressed due to low confidence (1)
scripts/documentation/generateScriptReference.sh:52
generateScriptReference.shnowcds to the repo root and uses the rawfind .paths (e.g../domains/...,./init.sh) when building Markdown links, but it still writes the output toscripts/SCRIPTS.md. Relative links inscripts/SCRIPTS.mdare resolved from thescripts/directory, so links to./domains/...or./init.shwill be broken (they’ll resolve toscripts/domains/.../scripts/init.sh). Consider generating links relative toscripts/(e.g., strip a leading./scripts/and prefix../for non-scripts paths) or emitting repo-root-relative links (/domains/...,/init.sh) so the table remains navigable.
# Loop through all script files in all directories from the repository root
find . -type f -name "*.sh" | sort | while read -r script_file; do
# Get the description of the script file
description=$(awk 'NR>1 && /^ *#/{sub(/^ *# ?/,""); print; exit}' "$script_file")
# Extract the script file name without the path
filename=$(basename "$script_file")
# Extract the script file path without the name
pathname=$(dirname "$script_file")
last_path_segment=$(basename "$pathname")
# Create a link to the script file in the table
link="[${filename}](${script_file})"
# Add the script file and its description to the Markdown table
echo "| ${link} | ${last_path_segment%%.} | ${description//|/\\|} |" >> ${markdown_file}
done
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
6ee11df to
68e4a6e
Compare
68e4a6e to
e675624
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 32 out of 37 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
e675624 to
176cee5
Compare
176cee5 to
593815b
Compare
⚙️ Optimization
📖 Documentation