aw-notify: achievements / streaks / trophies (split from #200)
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 30/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
調査の方向性
この issue は、aw-server と aw-notify に言及した、aw-android の新しい実績システムに関する設計議論です。まず、リンクされているフォーラムスレッドと CHI 論文を読んで、ゲーミフィケーションの文脈を理解してください。aw-android に既存の通知インフラストラクチャと、aw-server-rust のデータクエリモデルを調べ、実績の条件をどのように評価できるかを確認してください。「Done」は、コードではなく、ストレージ、同期、複数デバイスの処理に関する設計案が提示されていることを意味します。
索引モデルが issue の本文から書いたものです。
説明
Splitting this out from ActivityWatch/aw-android#200, per @ErikBjare's suggestion — the achievements/streaks/trophies direction is a distinct enough feature to track on its own rather than living inside the broader "smarter-than-thresholds" notifications thread.
Background
In #200 we compared anomaly-detection notifications (percentile/sigma above baseline) against a "coaching"/reward angle, and landed on achievements as a promising first step:
- Works with minimal history (a first occurrence is still a valid achievement) — unlike anomaly detection, which needs ~30 days of baseline before it's useful.
- Framing is additive/positive rather than corrective.
- "Trophy for best focus day this month" is more shareable/engaging than "you're 2σ above baseline."
- Fits the existing notification infrastructure (per-category historical time from aw-server) either way.
References:
- https://dl.acm.org/doi/10.1145/2858036.2858428 (ACM CHI — self-quantification + gamification, solid UX evidence)
- https://forum.activitywatch.net/t/achievements-progress-bars-streaks-and/1630 (existing community appetite)
- https://activitywatch.net/blog/future-of-time-tracking/ ("meaningful milestones" framing)
Open design questions (from @ErikBjare, carried over from #200)
- Storage: how do achievements get stored once conditions are met? Need references to which data sources were used, the time-range covered, and the source devices/buckets involved — not just a flat "achievement unlocked" flag.
- Multi-device: should each device have its own achievement store that overlays locally, or should achievements sync across devices?
- Sync as part of "settings"? Is settings-sync even supported yet?
- Or should achievements live in their own dedicated bucket (e.g. an
achievementsbucket)? Is that a good fit for the existing bucket/event model, or a bad one?
- Trophies should be collectable multiple times (e.g. per time-period — "best focus day this month" can recur), not one-shot unlocks.
Scope (not yet decided)
This issue is for continuing the design discussion — no implementation approach is locked in yet. Candidate shape: define achievement conditions declaratively, evaluate them against aw-server query results, surface via aw-notify, with the storage/sync model above still open.
cc @ErikBjare
- 主要言語
- Kotlin
- スター
- 270
- フォーク
- 57
- 平均マージ
- 20時間 32分
- マージ済み PR(30日)
- 38
環境構築
このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
ActivityWatch/aw-android のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
ActivityWatch/aw-android#306 · コメント 1 件 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
AuthSettingsActivity crashes on launch (InflateException: Material attributes under AppCompat theme)オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
ActivityWatch/aw-android#210 · コメント 7 件 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
ActivityWatch/aw-android#302 ·
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
ActivityWatch/aw-android#300 · コメント 6 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
ActivityWatch/aw-android#296 ·
メンテナーはふだん 1 日以内に返信
ActivityWatch/aw-android の issue をすべて見る
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
-
難易度 1/5 1時間未満 初心者へのやさしさ 95/100
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
recloudstream/cloudstream#3226 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
aws/aws-crt-kotlin#309 ·
メンテナーはふだん 3 日以内に返信
-
OAI-PMH
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100