refactor(quartz)!: remove ForkTag

Nothing read it after forkFromAddress moved to parseForkedAddress, and it
could not have served that role: it ignored the `fork` marker (so any `a`
of kind 30817 parsed as a fork) and accepted only kind 30817, so wiki
(30818) and note forks never matched. parseForkedAddress in
experimental/forks is the reader for every forkable kind.

BREAKING CHANGE: com.vitorpamplona.quartz.experimental.nipsOnNostr.tags.ForkTag
is gone; use experimental.forks.parseForkedAddress.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Pu8Fpp4KbXaiax8YTYxhJm
This commit is contained in:
Claude
2026-09-29 18:07:56 +00:00
parent 2d5f8cc1c1
commit a36792d72f
@@ -21,12 +21,10 @@
package com.vitorpamplona.quartz.experimental.forks
import com.vitorpamplona.quartz.experimental.nipsOnNostr.NipTextEvent
import com.vitorpamplona.quartz.experimental.nipsOnNostr.tags.ForkTag
import com.vitorpamplona.quartz.nip10Notes.TextNoteEvent
import com.vitorpamplona.quartz.nip54Wiki.WikiArticleEvent
import kotlin.test.Test
import kotlin.test.assertEquals
import kotlin.test.assertNotNull
class ForkedAddressTest {
private val pk = "1".repeat(64)
@@ -47,9 +45,9 @@ class ForkedAddressTest {
}
@Test
fun aNipTextForkTagIsItsOwnKind() {
fun aNipTextFindsTheTextItWasForkedFrom() {
val origin = "${NipTextEvent.KIND}:$pk:nip-01"
assertNotNull(ForkTag.parse(arrayOf("a", origin, "", "fork")))
assertEquals(origin, ForkTag.parseValidAddress(arrayOf("a", origin, "", "fork")))
val text = NipTextEvent("0".repeat(64), pk, 1, arrayOf(arrayOf("d", "nip-01"), arrayOf("a", community), arrayOf("a", origin, "", "fork")), "", "0".repeat(128))
assertEquals(origin, text.forkFromAddress()?.toValue())
}
}