mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-10-30 07:37:38 +00:00
The pure-Kotlin QUIC v1 + HTTP/3 + WebTransport stack and its interop runner moved to vitorpamplona/quic-kmp, which publishes it to Maven Central as com.vitorpamplona.quic:quic. nestsClient, marmotQuic, cli, desktopApp and amethyst now depend on libs.quic (0.1.0). quic-kmp depends on the published quartz. The root build substitutes that module with this checkout's :quartz, so the app keeps a single quartz and QUIC runs against the in-tree one. To work on QUIC next to a consumer, -PquicKmpDir=../quic-kmp builds a local checkout through an included build instead of the Maven artifact. The :quic jvmTest step leaves CI and the pre-push hook, and the docs, plans index, PR template and kotlin-multiplatform skill point at the new repo. Needs com.vitorpamplona.quic:quic:0.1.0 on Maven Central before it builds. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014rz1noti5QAzSJF9sBdDSX
68 lines
2.7 KiB
Markdown
68 lines
2.7 KiB
Markdown
<!--
|
||
Thanks for contributing to Amethyst! Before opening this PR, please skim
|
||
CONTRIBUTING.md — especially the "Proof of testing" and "Interoperability
|
||
tests" sections if you are not a regular contributor to this repo.
|
||
|
||
Delete any section below that doesn't apply.
|
||
-->
|
||
|
||
## Summary
|
||
|
||
<!-- 1–3 sentences. What changed and why. Not "what files changed" — the
|
||
diff already shows that. -->
|
||
|
||
## Test plan
|
||
|
||
<!-- Required. What did you actually run, on what platform, with what result?
|
||
"CI is green" is necessary but not sufficient — show the new path firing.
|
||
|
||
For UI changes, attach screenshots (light + dark) or a short recording.
|
||
For Android: device model + Android version. For Desktop: OS + window size.
|
||
For build/packaging changes: paste the `./gradlew` command + tail of output.
|
||
|
||
If you are NOT a regular contributor to this repo, this section is required
|
||
regardless of how small the change is — see CONTRIBUTING.md § Proof of
|
||
testing. -->
|
||
|
||
- [ ] Ran `./gradlew spotlessApply` — repo is formatted
|
||
- [ ] Ran `./gradlew test` (or the relevant module's tests)
|
||
- [ ] Manually exercised the change (see notes below)
|
||
|
||
Notes / screenshots:
|
||
|
||
<!-- paste here -->
|
||
|
||
## Interop suites
|
||
|
||
<!-- The interop suites listed in CONTRIBUTING.md § Interoperability tests
|
||
are NOT run in CI. If your change touches the relevant code paths, run them
|
||
locally and tick the box. If your change can't possibly affect them
|
||
(docs-only, UI-only on unrelated screens, etc.), tick "N/A". -->
|
||
|
||
- [ ] N/A — change can't affect wire bytes / decoded audio / MLS state / DM envelopes
|
||
- [ ] Marmot / MLS — `cli/tests/marmot/marmot-interop-headless.sh` (Marmot / MDK `wn`)
|
||
- [ ] NIP-17 DM — `cli/tests/dm/dm-interop-headless.sh`
|
||
- [ ] Audio rooms manual — `cli/tests/nests/nests-interop.sh` (Amethyst ↔ nostrnests.com)
|
||
- [ ] MoQ-lite hang-tier — `:nestsClient:jvmTest -DnestsHangInterop=true`
|
||
- [ ] MoQ-lite browser-tier — `:nestsClient:jvmTest -DnestsBrowserInterop=true`
|
||
|
||
## AI assistance
|
||
|
||
<!-- Optional disclosure. We accept AI-assisted PRs (Claude Code, Copilot,
|
||
Cursor, Codex, etc.) under the same rules as human PRs — see
|
||
CONTRIBUTING.md § Human and AI contributions. A one-line note here is
|
||
appreciated when an assistant did the bulk of the diff. -->
|
||
|
||
- [ ] Drafted with AI assistance, manually reviewed and tested
|
||
- [ ] Written by hand
|
||
|
||
If "Drafted with AI assistance" is ticked, a human must have reviewed the
|
||
whole diff and tested the app by hand on a device before this PR was
|
||
opened. See [`CONTRIBUTING-WITH-AI.md`](CONTRIBUTING-WITH-AI.md).
|
||
|
||
## License
|
||
|
||
- [ ] By submitting this PR, I agree to license my contribution under the
|
||
MIT license. Any code I did not author personally carries its
|
||
original license header.
|