-
Notifications
You must be signed in to change notification settings - Fork 0
Add unified account management, MiniMax daily check-in, secure wallet exports and corruption indicators #20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
f2a116e
7aaac84
a9466f2
5f09036
409cdd5
703ef9e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| name: CI | ||
|
|
||
| on: | ||
| pull_request: | ||
| push: | ||
| branches: [main] | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| jobs: | ||
| verify: | ||
| runs-on: macos-latest | ||
| timeout-minutes: 15 | ||
| steps: | ||
| - name: Check out repository | ||
| uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4 | ||
| with: | ||
| persist-credentials: false | ||
| - name: Set up Bun | ||
| uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2 | ||
| with: | ||
| bun-version: 1.3.14 | ||
| - name: Install dependencies | ||
| run: bun install --frozen-lockfile | ||
| - name: Lint | ||
| run: bun run lint | ||
| - name: Typecheck | ||
| run: bun run typecheck | ||
| - name: Test | ||
| run: bun test | ||
| - name: Build | ||
| run: bun run build | ||
|
Comment on lines
+32
to
+33
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win Add the required standalone server build to every full-gate surface. The CI workflow and contributor documentation omit the required direct server compilation check.
As per coding guidelines: 📍 Affects 3 files
🤖 Prompt for AI AgentsSource: Coding guidelines |
||
| - name: Compile server entry point | ||
| run: bun build src/server.ts --target=bun --outdir /tmp/dondo-build | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,54 @@ | ||
| # Contributing | ||
|
|
||
| Dondo is a macOS-only Bun and TypeScript project. Install Bun 1.3.14 or newer and ensure the macOS `security` command | ||
| is available. | ||
|
|
||
| ## Setup and development | ||
|
|
||
| ```sh | ||
| bun install --frozen-lockfile | ||
| bun run dev | ||
| ``` | ||
|
|
||
| The development watcher restarts the server for runtime TypeScript, TSX, CSS, package metadata, and icon changes. Test | ||
| file edits do not restart it. | ||
|
|
||
| The package entry point and HTTP server are in `src/server.ts`. Platform behavior lives in `src/antigravity/`, | ||
| `src/codex/`, `src/cline/`, `src/kiro/`, and `src/minimax/`. Shared vault/encryption code is in `src/storage/`, shared | ||
| types are in `src/types.ts`, configuration is in `src/config.ts`, and the Preact UI is in `src/ui/`. | ||
|
|
||
| Do not add launcher shims, barrel exports, runtime compatibility layers, or dependencies without a concrete reduction in | ||
| complexity. Import concrete files directly and use arrow functions. | ||
|
|
||
| ## Verification | ||
|
|
||
| Run every gate before opening a pull request: | ||
|
|
||
| ```sh | ||
| bun run lint | ||
| bun run typecheck | ||
| bun test | ||
| bun run build | ||
| bun build src/server.ts --target=bun --outdir /tmp/dondo-build | ||
| ``` | ||
|
|
||
| Use `bun run format` for formatting-only writes or `bun run fix` for Biome's safe formatter, lint, and assist fixes. | ||
| `bun run lint` is the full read-only gate, including formatting, lint rules, assists, and warning rejection. | ||
| `bun run build` produces a self-contained runnable `dist/` directory and the build smoke test launches that artifact. | ||
|
|
||
| ## Tests and secrets | ||
|
|
||
| - Isolate filesystem tests with temporary `DONDO_VAULT`, auth, config, and data paths. Never target a real application | ||
| profile or vault. | ||
| - Keychain tests should inject the command runner. If a test must touch macOS Keychain, use a dedicated service/account, | ||
| avoid parallel mutation, and clean it up. | ||
| - The packaged UI smoke test starts a real local server, so keep its environment and data directory isolated. | ||
| - Never commit, log, snapshot, or render credentials, Keychain payloads, auth/config contents, or decrypted exports. | ||
| - Only `POST /api/{platform}/export` may return credential payloads. Keep it local-only, confirmed, non-cacheable, and | ||
| all-or-nothing. | ||
|
|
||
| ## Pull requests | ||
|
|
||
| Keep changes narrow, add behavior-focused tests, preserve unrelated worktree changes, and document user-visible or | ||
| breaking behavior. Include the commands you ran and their results. Changes to storage, export, switching, or token | ||
| handling should explain their failure behavior and demonstrate that ordinary API responses remain redacted. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security & Privacy | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
Repository: ragaeeb/dondo
Length of output: 2759
🏁 Script executed:
Repository: ragaeeb/dondo
Length of output: 647
🏁 Script executed:
Repository: ragaeeb/dondo
Length of output: 1956
🏁 Script executed:
Repository: ragaeeb/dondo
Length of output: 143
Disable checkout credential persistence.
Set
persist-credentials: falsebecause later workflow commands do not need authenticated Git access. This prevents repository-controlled commands from using the persistedcontents: readtoken.🧰 Tools
🪛 zizmor (1.29.0)
[warning] 16-17: credential persistence through GitHub Actions artifacts (artipacked): does not set persist-credentials: false
(artipacked)
🤖 Prompt for AI Agents
Source: Linters/SAST tools