Files
amethyst/.github/PULL_REQUEST_TEMPLATE.md
Claude 2edc9f005a refactor: consume QUIC from the quic-kmp library instead of the in-tree module
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
2026-10-20 14:36:07 +00:00

68 lines
2.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!--
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.