1b63765caa
Closes the remaining gaps in GitHub's community-standards check, adds explicit privacy and dependency documentation matching the plugin's "DSGVO-by-design" claim, and removes the stale upstream Crowdin artefact so the repo no longer suggests it ships its own translation pipeline. New community-health files: - CODE_OF_CONDUCT.md: project-specific, short and direct, single reporting path to kontakt@hellion-media.de - CONTRIBUTING.md: scope, accepted vs declined contributions, build and test instructions, EUPL-1.2 contribution terms, translation policy split between Hellion-specific (here) and upstream strings (Chat 2 repo) - SUPPORT.md: routing for bugs, security, privacy and casual feedback - .github/PULL_REQUEST_TEMPLATE.md: summary, change-type checklist, testing notes, compatibility notes for migrations and manifest fields, contribution checklist - .github/FUNDING.yml: comments-only file, no platforms enabled, points donors at the upstream Chat 2 maintainers' Ko-fi pages New privacy and compliance documentation: - PRIVACY.md: what the plugin stores locally (config, SQLite, EmoteCacheV1), retention defaults, the two outbound network calls (BetterTTV API+CDN with ShowEmotes opt-out, Square Enix Lodestone font once-off), explicit no-telemetry statement, GDPR Art. 15/17/18/20/21 rights mapped to plugin features, third-party privacy-policy links - THIRD_PARTY_NOTICES.md: direct NuGet dependencies with versions pinned to v0.5.4 (MessagePack, Microsoft.Data.Sqlite, morelinq, Pidgin, SixLabors.ImageSharp under Six Labors Split License 1.0), Dalamud SDK and .NET tooling, bundled Exo 2 font (OFL-1.1) and plugin icon, network-touch status per component, re-audit commands Crowdin cleanup: - crowdin.yml deleted (was upstream Chat 2's project_id 663694, pointed at /ChatTwo/Resources/Language.resx, never wired to HellionChat strings) - README, CONTRIBUTING and CODE_OF_CONDUCT no longer suggest HellionChat operates a Crowdin project; remaining mentions are explicitly framed as upstream Chat 2's workflow Contact and version consistency: - Maintainer email switched from maintainer@hellion-media.de to kontakt@hellion-media.de in SECURITY.md and NOTICE.md - README version references updated to 0.5.4 (header, project status block) and the update-tag pattern generalised from v0.1.x to v0.X.Y - bug_report.yml version placeholder bumped to 0.5.4 - Project-documents table added to README footer linking all health and reference files in one place Release-body automation: - .github/workflows/release.yml now extracts the matching version block from ChatTwo/HellionChat.yaml's changelog and combines it with a static install / docs footer (custom-repo URL, project document links, licence) before passing the result to softprops/action-gh-release@v3 via body_path - Workflow fails fast if no changelog block exists for the tagged version, automating the existing "yaml + repo.json + release body kept in sync" rule - Tag value passed via env: TAG_NAME with strict ^v\d+\.\d+\.\d+$ validation before any string concatenation, so the tag input cannot break out into shell evaluation
90 lines
4.2 KiB
Markdown
90 lines
4.2 KiB
Markdown
# Notice
|
|
|
|
## Acknowledgements
|
|
|
|
HellionChat is a fork of [Chat 2](https://github.com/Infiziert90/ChatTwo) by
|
|
**Infiziert90 (Infi)** and **Anna Clemens**, both of whom kept that plugin
|
|
running and maintained for years before I ever opened the source. Without
|
|
their work this fork would not exist, full stop. I owe them the architecture,
|
|
the message store, the channel filtering, the sidebar tab system, the
|
|
hooks into FFXIV's chat, the localisation infrastructure, and countless
|
|
small decisions that I only noticed because they had already been made
|
|
correctly.
|
|
|
|
If you find HellionChat useful, please remember that the foundation came
|
|
from Chat 2. The code Anna and Infi wrote is doing most of the heavy
|
|
lifting in this fork too.
|
|
|
|
## A direct word to Infi and Anna
|
|
|
|
Hi. I am Florian (Flo, also Jon Kazama in-game on Phoenix). I forked Chat 2
|
|
because I wanted a privacy-by-default version for my own use case and a
|
|
small group of friends I play with, not because I thought I could do
|
|
anything better than what you built. The opposite is true. ChatTwo's
|
|
default of full history and cross-character logging is the right call for
|
|
most users. I just have a different threat model and a different
|
|
data-handling philosophy that fits a smaller, locally-stored, retention-
|
|
limited approach.
|
|
|
|
What HellionChat adds is mostly Hellion-specific surface area: a privacy
|
|
filter, per-channel retention windows, an export pipeline, an Auto-Tell-
|
|
Tabs feature for FFXIV club greeters, the Hellion theme and font, German
|
|
localisation, and a settings UX rebuild. None of it touches the bones of
|
|
what you built. Where I had to modify your code I tried to keep the
|
|
edits minimal, isolated to clearly-marked Hellion files, and reversible.
|
|
|
|
Concrete example: when API 15 hit, I cherry-picked your fix for the
|
|
BetterTTV emote regression with `git cherry-pick -x` so authorship and
|
|
co-author trail stay intact. That is the standard I want to keep using as
|
|
long as both projects are alive. You should never have to look at this
|
|
fork and wonder if I quietly ate your work.
|
|
|
|
If anything in this fork ever steps on something you would not be okay
|
|
with, please reach out and I will fix it. Genuinely. The list of contacts
|
|
is below.
|
|
|
|
## Maintainer contact
|
|
|
|
If something in HellionChat causes problems, especially if it relates back
|
|
to Chat 2 or to anything Infi or Anna would want flagged:
|
|
|
|
- **GitHub Issues:** [JonKazama-Hellion/HellionChat/issues](https://github.com/JonKazama-Hellion/HellionChat/issues)
|
|
- **Discord:** `@j.j_kazama`
|
|
- **Email (business):** kontakt@hellion-media.de
|
|
|
|
I respond on weekdays during European business hours. For anything
|
|
urgent (security, attribution, takedown), email is the fastest path.
|
|
|
|
## Why this fork is not upstreamed
|
|
|
|
The privacy-by-default position fits a small audience. ChatTwo's
|
|
full-history-by-default position fits a much larger one, including the
|
|
roleplaying community where chat archive is part of the play experience.
|
|
Trying to upstream HellionChat's defaults would have meant arguing that
|
|
Chat 2's defaults are wrong, and they are not. They are right for the
|
|
user base ChatTwo serves. So I keep the fork separate, attribute clearly,
|
|
and pull selected upstream patches when they apply.
|
|
|
|
## Why HellionChat left the GitHub fork network
|
|
|
|
The Dalamud plugin ecosystem treats the GitHub-Fork relation as a signal
|
|
that a fork is either a development branch or a dead mirror. HellionChat
|
|
is neither. It is an independently-maintained EUPL-1.2 fork with its own
|
|
release cadence, its own custom repo, its own user base. Detaching the
|
|
fork-network relation just makes the situation honest. The git history,
|
|
the cherry-pick trail, and the attribution stay exactly the same. The
|
|
only thing that changes is the GitHub UI no longer says "forked from".
|
|
|
|
## Trademarks and naming
|
|
|
|
"Chat 2" and "ChatTwo" are the names Infi and Anna chose for the upstream
|
|
plugin. HellionChat does not use either of those names in user-facing
|
|
copy except where required to describe origin (settings tab, manifest,
|
|
this file, the README). The Hellion brand is mine.
|
|
|
|
## Questions
|
|
|
|
This file is the canonical place for "is this attribution correct, is the
|
|
maintainer reachable, is the relationship to Chat 2 documented". If
|
|
anything in here is wrong, please open an issue or contact me directly.
|