-
Notifications
You must be signed in to change notification settings - Fork 1
Feat/add vocab #57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Feat/add vocab #57
Changes from all commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
f9cfa4b
Add 31000 seed vocabulary batch
harumiWeb 78a5dec
Review 32000 vocab batch
harumiWeb a508fa1
Review 33000 vocab batch
harumiWeb b6a1026
Add reviewed 34000 vocab batch
harumiWeb f735da3
Add 35000 seed vocab batch
harumiWeb 5c35c1f
Fix reviewed vocab glosses
harumiWeb 1cc1db5
Add 36000 core vocab batch
harumiWeb 1c8a995
Add 37000 core vocab batch
harumiWeb 23cd97e
change docs vocab count
harumiWeb 4d11a21
follow-up pr 57 review
harumiWeb 66fbf10
Potential fix for pull request finding
harumiWeb 0a32462
Potential fix for pull request finding
harumiWeb File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| # Bundled Core Vocabulary Workflow | ||
|
|
||
| bundled core 語彙の追加・補正は、都度の作業ログではなく再現可能な review/apply workflow として保守する。版管理と runtime sync の方針自体は `docs/adr/0002-bundled-core-dictionary-lifecycle.md` に従い、この spec では日常的な語彙メンテ手順だけを固定する。 | ||
|
|
||
| ## Workflow Contract | ||
|
|
||
| - bundled core の review/apply は `scripts/vocab/*.py` の既存 workflow を使い、手作業で TSV を再構成しない | ||
| - review 対象はその回の rank band だけに絞り、既承認の `lemma/pos` を重複反映しない | ||
| - `approved_slice_*.tsv` に入れる行は `status=approved` を守り、`meaning_ja_candidate` と `distractor_group_candidate` を目視確認する | ||
| - 承認 slice の統合は `merge_parallel_reviews.py`、bundled core への反映は `apply_review_batch.py` を使う | ||
| - `apply_review_batch.py` は既存 `lemma/pos` を再適用しないため、post-apply 監査で既存 entry を補正した場合は `approved_review_candidates.tsv` / `approved_seed.csv` だけでなく `assets/words_core.jsonl` も同期更新する | ||
| - retry や比較用の TSV は merge 対象ディレクトリへ `approved_slice*.tsv` 名で置かない。比較用ファイルが必要なら別ディレクトリへ退避する | ||
|
|
||
| ## Review Rules | ||
|
|
||
| - 新規追加帯では learner-dictionary の中心義を優先し、特殊義や派生義を代表訳にしない | ||
| - verb の `meaning_ja` は述語形で監査し、名詞形の gloss を残さない | ||
| - `distractor_group` は出題時の誤答品質を基準に監査し、特に people / place / daily / abstract noun 系の drift を spot check する | ||
| - row の追加後に silent quality drift を残さないため、新規帯ごとに representative gloss と `distractor_group` の spot audit を行う | ||
|
|
||
| ## Validation | ||
|
|
||
| - bundled core 更新後は `go test ./...` を実行する | ||
| - bundled core 更新後は `go build ./...` を実行する | ||
| - bundled core 更新後は `go run ./cmd/eitango validate --embedded-core` を実行する | ||
| - fresh data dir を `EITANGO_DATA_DIR` で分離し、`go run ./cmd/eitango stats` の後に `go run ./cmd/eitango doctor` を実行する |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,49 @@ | ||
| # Session Modes | ||
|
|
||
| `eitango` は session intent (`play` / `review`) と answer mode (`choice` / `write`) を組み合わせて学習フローを構成する。この spec では、単発の実装タスクではなく継続保守で守るべき契約だけを残す。 | ||
|
|
||
| ## CLI and Persistence | ||
|
|
||
| - public command は `eitango play [choice|write]` と `eitango review [choice|write]` とする | ||
| - `learn` は `play` の互換 alias として残す | ||
| - answer mode を省略した場合は `choice` を既定値とする | ||
| - active session は保存済みの `answer_mode` で再開する | ||
| - legacy DB row に `answer_mode` が無い場合は `choice` として扱い、`doctor` は read-only 診断を壊さず migration drift だけを報告する | ||
|
|
||
| ## Home Start Rules | ||
|
|
||
| - ホーム画面では `Tab` で `choice / write` を切り替え、`Enter` は play、`r` は review、`n` は新しい learn 開始要求として扱う | ||
| - active session が無い場合は、`Enter` / `r` / `n` は即開始する | ||
| - active session がある場合、`Enter` はホームで選択中の `answer_mode` が active session と同じときだけ再開する | ||
| - active session がある状態で `Enter` の mode が食い違う場合、または `r` / `n` で新 session を要求した場合は、開始前に abandon 確認 overlay を出す | ||
| - abandon 確認の accept は active session を `abandoned` にしてから pending request を開始し、cancel は active session とホーム上の選択 answer mode を維持する | ||
|
|
||
| ## Write Mode Contract | ||
|
|
||
| - `write` は `meaning_ja` を prompt にし、`trim + lower-case + exact match` で正誤判定する | ||
| - `write` 中の通常入力を阻害しないため、hint と skip は文字キーではなく補助操作へ割り当てる | ||
| - 既定操作では `Tab` が staged hint、`Ctrl+S` が skip、`Enter` が confirm、`Esc` が離脱に使われる | ||
| - hint は初回に先頭文字を開示し、5 文字以上なら末尾文字も開示する。その後は未開示文字を中心から外側へ 1 文字ずつ開示する | ||
| - write の rating は自動決定し、hint なし正解は `Easy`、hint あり正解は `Good`、不正解と skip は `Again` とする | ||
| - write の feedback は `Enter` だけで保存して次へ進み、choice feedback のような rating shortcut は出さない | ||
| - answer を露出しすぎないため、write 中の音声再生と autoplay は prompt 画面ではなく feedback 画面だけで有効にする | ||
|
|
||
| ## Write Difficulty | ||
|
|
||
| - `write_mode_difficulty` は `basic` / `hard` の 2 値だけを受け付け、未指定時は `basic` とする | ||
| - `basic` は `mode=learn` かつ `answer_mode=write` の新規候補だけに作用し、Choice で一度見た語 (`reviews.answer_mode = 'choice'`) から出題する | ||
| - `basic` の候補は due 除外を維持し、通常の新規語と同じ順序で扱う | ||
| - `basic` は候補不足時に fallback 補完しない | ||
| - `hard` は従来どおり通常の新規語候補を使う | ||
| - write difficulty の設定面はホーム設定または `config.toml` とし、CLI flag による一時 override は持たない | ||
|
|
||
| ## Review Fallback | ||
|
|
||
| - review 開始時は、まず due 語だけを対象にする | ||
| - due 語が 0 件で、かつ review 履歴が 1 件以上ある語が存在する場合は、即エラーではなく reviewed-only fallback 確認を返す | ||
| - reviewed-only fallback は過去に出題済み語だけをランダム出題する review practice として扱う | ||
| - fallback session は通常 review と別 mode として保持し、active session 再開後も reviewed-only practice であることを失わない | ||
| - fallback session の回答は `progress` / `due_at` / interval など SRS 状態を更新しない | ||
| - fallback session の choice / write feedback は `Enter` だけで次へ進み、rating は保存しない | ||
| - due 語も review 履歴も無い場合だけ、従来どおり `no words available for this session` を返す | ||
| - startup の `eitango review [choice|write]` 経路でも同じ fallback 確認を使う |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.