Skip to content

Commit 4137e0a

Browse files
mikevitelliclaude
andauthored
release: v0.3.0
Squashed release of 134 commits. See dev branch for granular history. Major items: TUI framework rewrite, offline AI agent (uconsole-ai), Meshtastic mesh map, AIO v2 rail dashboard, MimiClaw ESP32 chat portal, ESP32 Marauder hub + wardrive beta, antenna array braille ribbon monitor, hostname-aware Live Monitor header, ADS-B feeder migration (dump1090 → readsb), low-battery threshold retune (Samsung INR18650-35E), CODE_OF_CONDUCT, refreshed README, OSS-hygiene pass. See CHANGELOG.md v0.3.0 entry for details. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent f845901 commit 4137e0a

195 files changed

Lines changed: 25659 additions & 3002 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.

.claude/commands/design-ux.md

Lines changed: 0 additions & 41 deletions
This file was deleted.

.claude/commands/implement-feature.md

Lines changed: 0 additions & 49 deletions
This file was deleted.

.claude/commands/ship-phase.md

Lines changed: 0 additions & 42 deletions
This file was deleted.

.claude/commands/sync-repos.md

Lines changed: 0 additions & 27 deletions
This file was deleted.

.github/workflows/ci.yml

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,19 @@ on:
66
pull_request:
77
branches: [main, dev]
88

9+
# Workflow-level least privilege. CI doesn't need to write to the repo,
10+
# create issues, or push container images — read-only is enough.
11+
permissions:
12+
contents: read
13+
914
jobs:
1015
ci:
1116
runs-on: ubuntu-latest
1217

1318
steps:
14-
- uses: actions/checkout@v4
19+
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
1520

16-
- uses: actions/setup-node@v4
21+
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
1722
with:
1823
node-version: 22
1924
cache: npm
@@ -27,13 +32,13 @@ jobs:
2732
shellcheck frontend/public/install.sh
2833
shellcheck frontend/public/scripts/uconsole
2934
30-
- uses: actions/setup-python@v5
35+
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
3136
with:
3237
python-version: '3.11'
3338

3439
- name: Device tests (pytest)
3540
run: |
36-
pip install pytest
41+
pip install pytest pyflakes
3742
python -m pytest tests/ -v
3843
3944
- name: Shell script checks
@@ -60,15 +65,15 @@ jobs:
6065
needs: ci
6166

6267
steps:
63-
- uses: actions/checkout@v4
68+
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
6469

6570
- name: Set up QEMU (arm64 emulation)
66-
uses: docker/setup-qemu-action@v3
71+
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3
6772
with:
6873
platforms: arm64
6974

7075
- name: Set up Docker Buildx
71-
uses: docker/setup-buildx-action@v3
76+
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3
7277

7378
- name: Build .deb
7479
run: bash packaging/build-deb.sh
@@ -78,7 +83,7 @@ jobs:
7883
docker buildx build \
7984
--platform linux/arm64 \
8085
--load \
81-
-f Dockerfile.test \
86+
-f packaging/Dockerfile.test \
8287
-t uconsole-test .
8388
8489
- name: Verify test image

.github/workflows/release.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
runs-on: ubuntu-latest
1414

1515
steps:
16-
- uses: actions/checkout@v4
16+
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
1717

1818
- name: Extract version from tag
1919
id: version
@@ -29,7 +29,7 @@ jobs:
2929
exit 1
3030
fi
3131
32-
- uses: actions/setup-node@v4
32+
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
3333
with:
3434
node-version: 22
3535
cache: npm
@@ -69,7 +69,7 @@ jobs:
6969
echo "Built: $DEB ($(du -h "$DEB" | cut -f1))"
7070
7171
- name: Create GitHub Release
72-
uses: softprops/action-gh-release@v2
72+
uses: softprops/action-gh-release@3bb12739c298aeb8a4eeaf626c5b8d85266b0e65 # v2
7373
with:
7474
files: dist/uconsole-cloud_*.deb
7575
generate_release_notes: true

.gitignore

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,17 @@ dist/
2222
# APT repo — pool/ and dists/ are generated by `make publish-apt` but MUST be
2323
# committed so Vercel deploys them. Only the private GPG key is excluded (below).
2424

25-
# GPG private keys (NEVER commit)
25+
# Secrets — defensive patterns. No tracked files match these today; the
26+
# patterns are here so an accidental `git add .` can't drag credentials in.
2627
*-private.gpg
28+
*.pem
29+
*.key
30+
id_*
31+
secrets/
32+
.config/op/
2733

2834
# misc
2935
.DS_Store
30-
*.pem
3136

3237
# debug
3338
npm-debug.log*
@@ -42,13 +47,29 @@ yarn-error.log*
4247
# vercel
4348
.vercel
4449

45-
# claude code project memory
50+
# AI tooling — not for OSS source. CLAUDE.md and per-IDE Claude/agent
51+
# scratch dirs stay local-only.
4652
CLAUDE.md
53+
AGENTS.md
54+
GEMINI.md
55+
.claude/
56+
.cursor/
57+
.copilot/
58+
.continue/
59+
.aider*
4760

4861
# typescript
4962
*.tsbuildinfo
5063
next-env.d.ts
5164
__pycache__/
65+
.pytest_cache/
5266

5367
# user TUI preferences (theme, view mode)
5468
device/scripts/.console-config.json
69+
70+
# device backups — these live in the private ~/pkg repo, never in this public
71+
# one. If backup.sh ever gets re-introduced or run from the wrong tree, these
72+
# patterns keep credentials out of git.
73+
device/scripts/system/wifi/
74+
device/scripts/system/etc/shadow
75+
device/scripts/system/etc/sudoers.d/

.vscode/settings.json

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)