Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .devin/wiki.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"repo_notes": [
{
"content": "Generate the wiki from the current repository revision and use the implementation as primary evidence. Use README.md, UserGuide.md, Roadmap.md, and docs/guide.html for product status and shipped behavior; use AGENTS.md and the focused guides under agents/ for architecture and contributor contracts. If documentation conflicts with current code, describe the code and call out the discrepancy. Do not cite files absent from the current revision."
"content": "Generate the wiki from the current repository revision and use the implementation as primary evidence. Use README.md, Roadmap.md, and docs/guide.html for product status and shipped behavior; use AGENTS.md and the focused guides under agents/ for architecture and contributor contracts. If documentation conflicts with current code, describe the code and call out the discrepancy. Do not cite files absent from the current revision."
},
{
"content": "JayJay comprises the released native macOS app in shell/mac, reusable Rust crates for jj-aware diff, review state, repository operations, and bindings, and an alpha cross-platform GPUI shell in shell/gpui. SwiftUI reaches Rust through UniFFI; GPUI links the Rust crates directly. Clearly distinguish released SwiftUI behavior, shared core behavior, and GPUI alpha behavior."
Expand All @@ -16,7 +16,7 @@
"pages": [
{
"title": "JayJay Overview",
"purpose": "Explain the released SwiftUI macOS app, reusable Rust libraries, and alpha GPUI shell; summarize shipped capabilities, requirements, licensing, and current roadmap status from README.md, UserGuide.md, Roadmap.md, docs/guide.html, and current code.",
"purpose": "Explain the released SwiftUI macOS app, reusable Rust libraries, and alpha GPUI shell; summarize shipped capabilities, requirements, licensing, and current roadmap status from README.md, Roadmap.md, docs/guide.html, and current code.",
"parent": null
},
{
Expand Down Expand Up @@ -91,7 +91,7 @@
},
{
"title": "User Workflows",
"purpose": "Provide a jj-native map of the major user journeys in the current UserGuide.md and docs/guide.html, with links to the implementation pages and explicit SwiftUI/GPUI availability where it differs.",
"purpose": "Provide a jj-native map of the major user journeys in the current docs/guide.html, with links to the implementation pages and explicit SwiftUI/GPUI availability where it differs.",
"parent": "JayJay Overview"
},
{
Expand Down Expand Up @@ -151,7 +151,7 @@
},
{
"title": "User Documentation, Website, and Help Book",
"purpose": "Map README.md, UserGuide.md, Roadmap.md, the docs/ GitHub Pages site and machine-readable summary, shared guide assets, bundled macOS Help Book generation and cache behavior, searchable help topics, and update rules from agents/help-book.md.",
"purpose": "Map README.md, Roadmap.md, the docs/ GitHub Pages site and machine-readable summary, shared guide assets, bundled macOS Help Book generation and cache behavior, searchable help topics, and the release shipped-docs pass from agents/help-book.md and agents/release.md.",
"parent": null
}
]
Expand Down
1 change: 0 additions & 1 deletion .swiftlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ disabled_rules:
- opening_brace

opt_in_rules:
- file_length
- function_parameter_count
- empty_count
- closure_spacing
Expand Down
171 changes: 94 additions & 77 deletions AGENTS.md

Large diffs are not rendered by default.

29 changes: 14 additions & 15 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,34 +24,33 @@ Business logic belongs in the Rust core. The SwiftUI and GPUI shells render stat
Common commands:

```bash
just build # Build the macOS app
just run # Build and launch the macOS app
just test # Run Rust tests
just test-app # Run Swift tests
just test-ui # Run SwiftUI UI tests
just test-gpui # Run GPUI component tests
just lint # Run Clippy and SwiftLint
just format # Run rustfmt and SwiftFormat
just test-rust <crate> # Package-scoped Rust tests (inner loop)
just test-ui <test-id> # One XCUITest scene
just test # All workspace Rust tests (publish)
just test-app # Swift unit tests
just test-gpui # GPUI component tests
just lint # Clippy + SwiftLint (publish)
just format # rustfmt + SwiftFormat (publish)
just build # macOS app (not the inner loop)
just run # Build and launch
```

Run `just list` for the full command list.
Run `just list` for the full command list. See [AGENTS.md](AGENTS.md) for the feature loop: sibling jj workspaces, delayed lint/format, and which docs wait for release.

## Testing

New features need focused unit coverage and UI flow coverage when behavior reaches the UI. Bug fixes should include the regression test that would have caught them. See the [testing guide](agents/testing.md) for test placement, fixtures, and UI-test conventions.

## Pull requests

Before publishing, run `jj fix`, the tests relevant to your change, and `just lint`. Write the change description as a concise summary, a blank line, and a body explaining what changed and why.
Before publishing, do the two cleanup rounds from [AGENTS.md](AGENTS.md) (dedupe, simplify, delete what the change left dead), then run `jj fix`, the tests relevant to your change, and `just lint`. Write the change description as a concise summary, a blank line, and a body explaining what changed and why.

Publish changes by pushing a jj bookmark. See the [pull request workflow](agents/pull-requests.md) for creating, updating, stacking, and landing GitHub or Codeberg pull requests.
Publish changes by pushing a jj bookmark. See the [pull request workflow](agents/pull-requests.md) for creating, updating, stacking, and landing GitHub pull requests.

Pull requests for new UI features must include screenshots or a demo video so reviewers can evaluate the user-visible behavior.

## Documentation

When a feature lands:
User-facing docs (the [web guide](https://jayjay.hewig.dev/guide.html), Help Book, FAQ, `docs/llms.txt`, README feature lists, Roadmap, and the shell-parity matrix) update in the [release](agents/release.md) shipped-docs pass, not in feature PRs.

- Update [README.md](README.md) when it changes what users can do.
- Update [Roadmap.md](Roadmap.md) when it changes planned or shipped status.
- Update this guide when it changes the contributor workflow.
Update this contributing guide when the **contributor** workflow changes. Update `agents/*.md` in a feature change only when the agent/contributor contract actually changed.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ See [`crates/jj-diff/README.md`](crates/jj-diff/README.md) for the full API.

## Docs

- [User Guide](UserGuide.md) - shipped features and workflows.
- [User Guide](https://jayjay.hewig.dev/guide.html) - shipped features and workflows (`docs/guide.html`).
- [Roadmap](Roadmap.md) - current milestones and platform status.
- [Contributing](CONTRIBUTING.md) - setup, development checks, testing, and pull request policy.
- [DeepWiki](https://deepwiki.com/hewigovens/jayjay) - indexed codebase reference.
Expand Down
2 changes: 1 addition & 1 deletion Roadmap.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Roadmap

JayJay already covers the common jj history, diff, bookmark, conflict, Git, review, and command-palette flows in its SwiftUI and GPUI shells. See [UserGuide.md](UserGuide.md) for shipped features and [agents/shell-parity.md](agents/shell-parity.md) for the exact remaining shell gaps. Next work should focus on closing those gaps, tightening jj-native editing, and keeping the surface small.
JayJay already covers the common jj history, diff, bookmark, conflict, Git, review, and command-palette flows in its SwiftUI and GPUI shells. See the [user guide](https://jayjay.hewig.dev/guide.html) for shipped features. Remaining shell gaps are refreshed in [agents/shell-parity.md](agents/shell-parity.md) at release. Next work should focus on closing those gaps, tightening jj-native editing, and keeping the surface small.

## Next

Expand Down
Loading
Loading