Skip to content

Commit c9a6ff5

Browse files
authored
Merge origin/main and resolve Agents.md conflict intent
2 parents 1938651 + b7c0ff9 commit c9a6ff5

476 files changed

Lines changed: 99585 additions & 48928 deletions

File tree

Some content is hidden

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

.cursor/rules/scenescape.mdc

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
description: SceneScape Cursor agent router — canonical instructions and workflow
3+
alwaysApply: true
4+
---
5+
6+
<!--
7+
SPDX-FileCopyrightText: (C) 2026 Intel Corporation
8+
SPDX-License-Identifier: Apache-2.0
9+
-->
10+
11+
# SceneScape (Cursor)
12+
13+
## Canonical instructions (read first)
14+
15+
For project-wide conventions, read [`.github/copilot-instructions.md`](../../.github/copilot-instructions.md): licensing, security defaults, architecture, Makefile targets, documentation policy, and how skills are organized.
16+
17+
**Do not duplicate** policy from that file or from skills. Use short pointers only in Cursor rules.
18+
19+
## Skills
20+
21+
When the task touches a language, build system, tests, security, or documentation, discover and read the relevant `SKILL.md` under [`.github/skills/`](../../.github/skills/) (browse the directory or follow routing in `copilot-instructions.md`). Do not assume a fixed list of skill files.
22+
23+
## Service guides
24+
25+
Before substantive changes in a component tree, find and read `Agents.md` in that service’s directory (search upward from edited paths or the component root). Not every folder has one; use it when present.
26+
27+
## Cursor workflow
28+
29+
- Prefer root `Makefile` test targets unless a narrower pytest run is explicitly required (details live in skills).
30+
- Run commands in the real environment; investigate failures before giving up.
31+
- Commits and pull requests only when the user asks (see user/global Cursor rules).
32+
- Keep changes minimal and match existing conventions in the touched area.

.github/CODEOWNERS

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,19 @@
22
# SPDX-License-Identifier: Apache-2.0
33

44
# Default Code Owners
5-
@saratpoluri
6-
@ltalarcz
7-
@tdorauintc
8-
@MikolajKasprzak
9-
@dmytroye
10-
@GrzegorzWrobel
11-
@Irakus
12-
@daddo-intel
13-
@sarthakdeva-intel
14-
@sbelhaik
5+
* @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel
6+
7+
8+
# Tests content
9+
10+
autocalibration/tests/ @sbelhaik @dpitulax @FilipAdamus97 @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel
11+
cluster_analytics/tests/ @sbelhaik @dpitulax @FilipAdamus97 @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel
12+
controller/tests/ @sbelhaik @dpitulax @FilipAdamus97 @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel
13+
manager/test/ @sbelhaik @dpitulax @FilipAdamus97 @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel
14+
mapping/tests/ @sbelhaik @dpitulax @FilipAdamus97 @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel
15+
tracker/test/ @sbelhaik @dpitulax @FilipAdamus97 @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel
16+
tests/ @sbelhaik @dpitulax @FilipAdamus97 @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel
1517

1618
# documentation content
17-
/docs/ @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @GrzegorzWrobel @Irakus @daddo-intel @sarthakdeva-intel @sbelhaik @open-edge-platform/open-edge-platform-docs-write
18-
/README.md @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @GrzegorzWrobel @Irakus @daddo-intel @sarthakdeva-intel @sbelhaik @open-edge-platform/open-edge-platform-docs-write
19+
/docs/ @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel @sbelhaik @open-edge-platform/open-edge-platform-docs-write
20+
/README.md @saratpoluri @ltalarcz @tdorauintc @MikolajKasprzak @dmytroye @Irakus @daddo-intel @sbelhaik @open-edge-platform/open-edge-platform-docs-write

.github/actions/setup-cache/action.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,24 @@ outputs:
88
cache_registry:
99
description: "The cache registry path"
1010
value: ${{ steps.cache.outputs.CACHE_REGISTRY }}
11-
cache_tag:
12-
description: "The cache tag"
13-
value: ${{ steps.cache.outputs.CACHE_TAG }}
14-
github_actions_cache:
15-
description: "Whether GitHub Actions cache is enabled"
16-
value: ${{ steps.cache.outputs.GITHUB_ACTIONS_CACHE }}
11+
ghcr_cache:
12+
description: "Whether GHCR cache is enabled"
13+
value: ${{ steps.cache.outputs.GHCR_CACHE }}
1714
runs:
1815
using: "composite"
1916
steps:
17+
- name: Setup Docker with containerd storage backend
18+
shell: bash
19+
continue-on-error: true
20+
run: |
21+
sudo rm -f /etc/docker/daemon.json
22+
echo '{"features":{"containerd-snapshotter":true}}' | sudo tee /etc/docker/daemon.json
23+
sudo systemctl restart docker
2024
- name: Setup Cache Targets
2125
id: cache
2226
shell: bash
2327
env:
2428
TAG_BASE: ${{ github.head_ref || github.ref_name }}
2529
run: |
26-
CACHE_TAG=$(echo "$TAG_BASE" | tr '/' '_' | tr '-' '_')
2730
echo "CACHE_REGISTRY=${{ github.repository }}" >> "$GITHUB_OUTPUT"
28-
echo "CACHE_TAG=${CACHE_TAG}" >> "$GITHUB_OUTPUT"
29-
echo "GITHUB_ACTIONS_CACHE=true" >> "$GITHUB_OUTPUT"
31+
echo "GHCR_CACHE=true" >> "$GITHUB_OUTPUT"

.github/actions/setup-env/action.yaml

Lines changed: 0 additions & 35 deletions
This file was deleted.
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
---
2+
# SPDX-FileCopyrightText: (C) 2026 Intel Corporation
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
name: "Setup Test Environment"
6+
description: "Install Pytest and dependencies for testing, setup Docker and Python"
7+
inputs:
8+
dockerhub-token:
9+
description: "DockerHub token"
10+
required: true
11+
ghcr-token:
12+
description: "GHCR token"
13+
required: true
14+
runs:
15+
using: "composite"
16+
steps:
17+
- name: Set up Python
18+
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
19+
with:
20+
python-version: "3.12"
21+
check-latest: true
22+
23+
- name: "Log in to DockerHub"
24+
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
25+
continue-on-error: true
26+
with:
27+
username: scenescape
28+
password: ${{ inputs.dockerhub-token }}
29+
30+
- name: "Log in to GHCR"
31+
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
32+
continue-on-error: true
33+
with:
34+
registry: ghcr.io
35+
username: ${{ github.actor }}
36+
password: ${{ inputs.ghcr-token }}
37+
38+
- name: "Setup Cache Targets"
39+
id: setup-cache
40+
uses: ./.github/actions/setup-cache
41+
42+
- name: "Build common base"
43+
shell: bash
44+
env:
45+
CACHE_REGISTRY: ${{ steps.setup-cache.outputs.cache_registry }}
46+
GHCR_CACHE: ${{ steps.setup-cache.outputs.ghcr_cache }}
47+
run: |
48+
make build-common
49+
50+
- name: "Build images"
51+
shell: bash
52+
env:
53+
CACHE_REGISTRY: ${{ steps.setup-cache.outputs.cache_registry }}
54+
GHCR_CACHE: ${{ steps.setup-cache.outputs.ghcr_cache }}
55+
run: |
56+
make build-all
57+
58+
- name: "Setup Test Environment"
59+
shell: bash
60+
run: |
61+
make setup-tests
62+
63+
- name: "Install github annotate plugin"
64+
shell: bash
65+
run: |
66+
source tests/.venv/bin/activate
67+
pip install -r .github/resources/requirements-pytest.txt
68+
69+
- name: "Set correct Firefox version for tests"
70+
shell: bash
71+
run: |
72+
sudo apt remove -y firefox
73+
sudo snap remove --purge firefox
74+
sudo apt install -y firefox

.github/copilot-instructions.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ Intel® SceneScape is a microservice-based spatial awareness framework for multi
2222

2323
Consult these based on the code you're working with:
2424

25-
- **Python** (`.github/skills/python.md`): Coding standards, imports, patterns
25+
- **Python** (`.github/skills/python/SKILL.md`): Coding standards, imports, patterns
2626
- **CRITICAL**: 2 spaces for indentation (checked by `make indent-check`)
27-
- **JavaScript** (`.github/skills/javascript.md`): Frontend conventions
28-
- **Shell** (`.github/skills/shell.md`): Bash scripting guidelines
29-
- **Makefile** (`.github/skills/makefile.md`): Build system conventions
30-
- **Testing** (`.github/skills/testing.md`): Test creation frameworks
27+
- **JavaScript** (`.github/skills/javascript/SKILL.md`): Frontend conventions
28+
- **Shell** (`.github/skills/shell/SKILL.md`): Bash scripting guidelines
29+
- **Makefile** (`.github/skills/makefile/SKILL.md`): Build system conventions
30+
- **Testing** (`.github/skills/testing/SKILL.md`): Test creation frameworks
3131
- **Agents.md Evaluation** (`.github/skills/agent_evaluation/SKILL.md`): Scoring rubric and efficacy testing for service agent guides
3232

3333
### Skills Caching Strategy
@@ -37,15 +37,15 @@ Skills are loaded on-demand based on task context to optimize token usage:
3737
**Pre-Cached (Always Available)**:
3838

3939
- `.github/copilot-instructions.md` (this file, always loaded)
40-
- `.github/skills/python.md` (high frequency, pre-cached)
41-
- `.github/skills/documentation-how.md` (high frequency, pre-cached)
40+
- `.github/skills/python/SKILL.md` (high frequency, pre-cached)
41+
- `.github/skills/documentation-how/SKILL.md` (high frequency, pre-cached)
4242

4343
**Loaded Automatically on Demand**:
4444

45-
- `.github/skills/testing.md` - Loaded when task involves tests or `test` keyword detected
46-
- `.github/skills/javascript.md` - Loaded when `.js` files are being edited
47-
- `.github/skills/shell.md` - Loaded when `.sh` files are being edited
48-
- `.github/skills/makefile.md` - Loaded when Makefile or build system changes
45+
- `.github/skills/testing/SKILL.md` - Loaded when task involves tests or `test` keyword detected
46+
- `.github/skills/javascript/SKILL.md` - Loaded when `.js` files are being edited
47+
- `.github/skills/shell/SKILL.md` - Loaded when `.sh` files are being edited
48+
- `.github/skills/makefile/SKILL.md` - Loaded when Makefile or build system changes
4949
- `.github/skills/agent_evaluation/SKILL.md` - Loaded when task asks to evaluate, score, audit, review, or test the efficacy of an `Agents.md`
5050

5151
Skills are detected and loaded based on file type, task keywords, and context signals. Explicitly request a skill if the auto-detection doesn't load it.
@@ -81,7 +81,7 @@ Treat AI-generated output as **untrusted draft code** until reviewed and tested.
8181
Reject suggestions that bypass security controls for convenience or introduce unsafe defaults.
8282

8383
For detailed security review guidance, follow:
84-
`.github/skills/security.md`.
84+
`.github/skills/security/SKILL.md`.
8585

8686
## Architecture Overview
8787

@@ -131,7 +131,7 @@ make rebuild-core # Clean + build (useful after code changes)
131131

132132
## Testing Framework
133133

134-
**For comprehensive test creation guidance, see `.github/skills/testing.md`** - detailed instructions on creating unit, functional, integration, UI, and smoke tests with both positive and negative cases.
134+
**For comprehensive test creation guidance, see `.github/skills/testing/SKILL.md`** - detailed instructions on creating unit, functional, integration, UI, and smoke tests with both positive and negative cases.
135135

136136
**Running Tests** (must have containers running via docker-compose):
137137

@@ -145,11 +145,11 @@ make -C tests geometry-unit # Specific test (e.g., geo
145145
### Completion Gate For Test Tasks (Critical)
146146

147147
For runtime test verification requirements, use
148-
`.github/skills/test-verification-gate.md`.
148+
`.github/skills/test-verification-gate/SKILL.md`.
149149

150150
### Containerized Test Image Freshness Gate (Critical)
151151

152-
Use `.github/skills/test-verification-gate.md` as the single source of truth
152+
Use `.github/skills/test-verification-gate/SKILL.md` as the single source of truth
153153
for image freshness checks, rebuild-before-test requirements, and retry policy
154154
for containerized test targets.
155155

@@ -261,7 +261,7 @@ pubsub.publish(topic, json_payload)
261261

262262
### HOW to Update Documentation
263263

264-
**For detailed procedures, see `.github/skills/documentation-how.md`.**
264+
**For detailed procedures, see `.github/skills/documentation-how/SKILL.md`.**
265265

266266
This skill contains:
267267

.github/dependabot.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ updates:
9999
- "/tools/pipeline_runner"
100100
- "/tracker/test/service"
101101
- "/tracker/test/load"
102+
- "/tools/tracker/evaluation"
102103
schedule:
103104
interval: "monthly"
104105
commit-message:

.github/resources/coverity-requirements.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# SPDX-License-Identifier: Apache-2.0
33
# This file is licensed under Apache 2.0 License.
44

5-
pip == 26.0.1
6-
setuptools >= 78.1.1
7-
wheel == 0.46.3
8-
pybind11 == 3.0.3
5+
pip == 26.1
6+
setuptools == 82.0.1
7+
wheel == 0.47.0
8+
pybind11 == 3.0.4
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# SPDX-FileCopyrightText: (C) 2026 Intel Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
# This file is licensed under Apache 2.0 License.
4+
5+
pytest-github-actions-annotate-failures==0.4.0 \
6+
--hash=sha256:285fed86e16b0b7a8eac6acdcde31913798fb739b15ef5b86895b4f5e32bf237

.github/resources/requirements.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@
22
# SPDX-License-Identifier: Apache-2.0
33
# This file is licensed under Apache 2.0 License.
44

5-
pip == 26.0.1
5+
pip == 26.1
66
pytest == 9.0.3
77
numpy == 2.2.6
8-
selenium == 4.41.0
8+
selenium == 4.43.0
99
selenium-wire == 5.1.0
1010
blinker == 1.9.0
1111
pyvirtualdisplay == 3.0
1212
opencv-python == 4.13.0.92
13-
setuptools >= 78.1.1
13+
setuptools >= 82.0.1
1414
xmltodict == 1.0.4
15-
PyYAML >=6.0.1,<7.0
15+
PyYAML == 6.0.3
1616
pylint [spelling] == 4.0.5
1717
flake8 == 7.3.0

0 commit comments

Comments
 (0)