Skip to content

Commit c7f051d

Browse files
google-labs-jules[bot]vinod0mgithub-advanced-security[bot]Copilot
authored
Align spellcheck action with SoftwareDevLabs/SDLC_core (#35)
* Potential fix for code scanning alert no. 644: Shell command built from environment values Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 678: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 667: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 655: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 649: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 643: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 641: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * fix: Align spellcheck action with SoftwareDevLabs/SDLC_core This commit updates the spellcheck GitHub action to align with the configuration from `SoftwareDevLabs/SDLC_core`. Key changes: - Replaced the hardcoded `microsoft/terminal@main` with `${{ github.repository }}@${{ github.ref }}` to check the current repository. - Updated the `if` and `with` conditions to use the correct repository owner (`SoftwareDevLabs`). - Kept the `ssh_key` commented out as requested. * Potential fix for code scanning alert no. 5728: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Update scripts/evaluate-prompt.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/agents/deepagent.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/agents/deepagent.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/agents/deepagent.py Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Vinod <vinod@softwaredevlabs.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
1 parent f5ebc56 commit c7f051d

File tree

127 files changed

+717
-10207
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

127 files changed

+717
-10207
lines changed

.env.template

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# API Keys for LLM Providers
2+
# Copy this file to .env and fill in the values.
3+
GOOGLE_GEMINI_API_KEY=your_api_key_here
4+
OPENAI_API_KEY=your_api_key_here
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: 'Setup Python Environment'
2+
description: 'Checks out code, sets up Python, caches dependencies, and installs them.'
3+
inputs:
4+
python-version:
5+
description: 'The Python version to use.'
6+
required: true
7+
default: '3.11'
8+
install-dev-reqs:
9+
description: 'Whether to install requirements-dev.txt'
10+
required: false
11+
default: 'true'
12+
install-docs-reqs:
13+
description: 'Whether to install requirements-docs.txt'
14+
required: false
15+
default: 'false'
16+
runs:
17+
using: 'composite'
18+
steps:
19+
- uses: actions/checkout@v4
20+
- name: Set up Python
21+
uses: actions/setup-python@v5
22+
with:
23+
python-version: ${{ inputs.python-version }}
24+
- name: Cache pip
25+
uses: actions/cache@v4
26+
with:
27+
path: ~/.cache/pip
28+
# Include all requirements files in the cache key
29+
key: ${{ runner.os }}-pip-${{ inputs.python-version }}-${{ hashFiles('**/requirements*.txt') }}
30+
restore-keys: |
31+
${{ runner.os }}-pip-${{ inputs.python-version }}-
32+
${{ runner.os }}-pip-
33+
- name: Install dependencies
34+
shell: bash
35+
run: |
36+
python -m pip install --upgrade pip
37+
if [ -f requirements.txt ]; then
38+
pip install -r requirements.txt
39+
fi
40+
if [ "${{ inputs.install-dev-reqs }}" == "true" ] && [ -f requirements-dev.txt ]; then
41+
pip install -r requirements-dev.txt
42+
fi
43+
if [ "${{ inputs.install-docs-reqs }}" == "true" ] && [ -f requirements-docs.txt ]; then
44+
pip install -r requirements-docs.txt
45+
fi

.github/copilot-instructions.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -197,8 +197,10 @@ setup.py → Python package setup (currently empty)
197197
1. **Install dependencies**: `pip install pytest pytest-cov mypy pylint`
198198
2. **Set Python path**: `export PYTHONPATH=.` or prefix commands with `PYTHONPATH=.`
199199
3. **Test before changing**: `PYTHONPATH=. python -m pytest test/ -v` to validate current state
200-
4. **Check module imports**: Ensure new Python modules have proper `__init__.py` files
201-
5. **Follow branch naming**: Use `dev/<alias>/<feature>` pattern for feature branches
200+
4. **Configure the agent**: Edit `config/model_config.yaml` to configure the agent before running it.
201+
5. **Check module imports**: Ensure new Python modules have proper `__init__.py` files
202+
6. **Follow branch naming**: Use `dev/<alias>/<feature>` pattern for feature branches
203+
7. **Fill out the PR template**: Ensure the PR template at `.github/PULL_REQUEST_TEMPLATE.md` is filled out before submitting a new PR.
202204

203205
**NEVER do the following:**
204206
- Run tests without setting PYTHONPATH

.github/workflows/codeql.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ jobs:
4646
- language: actions
4747
build-mode: none
4848
- language: c-cpp
49-
build-mode: manual
49+
build-mode: none
5050
- language: javascript-typescript
5151
build-mode: none
5252
- language: python
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
name: 'Dependency Review'
2+
on: [pull_request]
3+
4+
permissions:
5+
contents: read
6+
7+
jobs:
8+
dependency-review:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- name: 'Checkout Repository'
12+
uses: actions/checkout@v4
13+
- name: 'Dependency Review'
14+
uses: actions/dependency-review-action@v4

.github/workflows/docker-scan.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: 'Docker Image Scan'
2+
on:
3+
push:
4+
branches: [ main ]
5+
pull_request:
6+
7+
permissions:
8+
contents: read
9+
10+
jobs:
11+
build-and-scan:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout code
15+
uses: actions/checkout@v4
16+
17+
- name: Build an image from Dockerfile
18+
id: build-image
19+
run: |
20+
docker build -t ${{ github.repository }}:latest .
21+
22+
- name: Run Trivy vulnerability scanner
23+
uses: aquasecurity/trivy-action@master
24+
with:
25+
image-ref: '${{ github.repository }}:latest'
26+
format: 'table'
27+
exit-code: '0'
28+
ignore-unfixed: true
29+
vuln-type: 'os,library'
30+
severity: 'CRITICAL,HIGH'

.github/workflows/gosec.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,12 @@
11
# GoSec Security Checker
22
# This workflow runs gosec to check Go code for security issues
3+
# It is currently disabled from running automatically.
34
name: GoSec Security Checker
45
permissions:
56
contents: read
67

78
on:
8-
push:
9-
paths:
10-
- '**.go'
11-
pull_request:
12-
paths:
13-
- '**.go'
9+
workflow_dispatch:
1410

1511
jobs:
1612
gosec:
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
permissions:
2+
contents: read
3+
name: 'Prompt Evaluation'
4+
5+
on:
6+
workflow_dispatch:
7+
inputs:
8+
prompt_file:
9+
description: 'Path to the prompt file (e.g., data/prompts/default.yaml)'
10+
required: true
11+
default: 'data/prompts/default.yaml'
12+
provider:
13+
description: 'LLM provider to use (gemini, openai, ollama)'
14+
required: true
15+
default: 'gemini'
16+
model:
17+
description: 'Model name to use'
18+
required: false
19+
20+
jobs:
21+
evaluate:
22+
runs-on: ubuntu-latest
23+
steps:
24+
- name: Setup Python Environment
25+
uses: ./.github/actions/setup-python-env
26+
with:
27+
python-version: '3.11'
28+
29+
- name: Run prompt evaluation
30+
env:
31+
GOOGLE_GEMINI_API_KEY: ${{ secrets.GOOGLE_GEMINI_API_KEY }}
32+
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
33+
PYTHONPATH: .
34+
run: |
35+
python scripts/evaluate-prompt.py \
36+
--prompt-file ${{ github.event.inputs.prompt_file }} \
37+
--provider ${{ github.event.inputs.provider }} \
38+
--model ${{ github.event.inputs.model }} \
39+
--output-file prompt-output.txt
40+
41+
- name: Upload prompt output
42+
uses: actions/upload-artifact@v4
43+
with:
44+
name: prompt-output-${{ github.event.inputs.provider }}-${{ github.event.inputs.model || 'default' }}
45+
path: prompt-output.txt

.github/workflows/pylint.yml

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ permissions:
22
contents: read
33
name: Pylint
44

5-
on: [push]
5+
on:
6+
pull_request:
67

78
jobs:
89
build:
@@ -11,15 +12,10 @@ jobs:
1112
matrix:
1213
python-version: ["3.10", "3.11", "3.12" ]
1314
steps:
14-
- uses: actions/checkout@v4
15-
- name: Set up Python ${{ matrix.python-version }}
16-
uses: actions/setup-python@v3
15+
- name: Setup Python Environment
16+
uses: ./.github/actions/setup-python-env
1717
with:
1818
python-version: ${{ matrix.python-version }}
19-
- name: Install dependencies
20-
run: |
21-
python -m pip install --upgrade pip
22-
pip install pylint
2319
- name: Analysing the code with pylint
2420
run: |
2521
pylint $(git ls-files '*.py')

.github/workflows/python-docs.yml

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,12 @@ jobs:
1616
build-docs:
1717
runs-on: ubuntu-latest
1818
steps:
19-
- uses: actions/checkout@v4
20-
- name: Set up Python
21-
uses: actions/setup-python@v5
19+
- name: Setup Python Environment
20+
uses: ./.github/actions/setup-python-env
2221
with:
2322
python-version: '3.11'
24-
- name: Install dependencies
25-
run: |
26-
python -m pip install --upgrade pip
27-
pip install sphinx sphinx-autodoc-typehints
23+
install-dev-reqs: 'false'
24+
install-docs-reqs: 'true'
2825
- name: Generate Sphinx docs
2926
run: |
3027
sphinx-apidoc -o docs/ src/

0 commit comments

Comments
 (0)