imacat and Claude Opus 5
2b2a93fccf
Move CLAUDE.md to docs/conventions.md so subagents do not inherit it
...
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-08-18 23:37:32 +08:00
imacat and Claude Opus 5
a431520f97
Renumber the pipeline substeps to match the paper (5-1 becomes 5a)
...
prompts/ and runs/ move by git mv; zero padding dropped; the
arbitration and LLM-merge rows in the cost ledger carry no new
name -- their step column reads 已廢棄 with the original name
kept in a new last column. Archived meta.json files and past
decision-log entries keep the names they were written with.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-08-18 23:37:32 +08:00
imacat and Claude Fable 5
cf00240b72
Record the provenance and status of the pilot study
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 23:37:28 +08:00
imacat
a3af04cd93
License the project under CC BY 4.0
2026-08-18 23:37:04 +08:00
imacat and Claude Fable 5
341f0ccd58
Add the reliability measurement record to the docs
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 23:36:51 +08:00
imacat and Claude Fable 5
3b2a15721c
Update the project structure document to the completed pipeline
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 22:37:32 +08:00
imacat
e131aa4f72
Finalize camera-ready version of conference paper
2026-08-18 22:37:32 +08:00
imacat and Claude Fable 5
ab7d51d5d7
Add the wide pattern matrix of the women-power songs
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 22:37:32 +08:00
imacat and Claude Fable 5
72fadd5b40
Rewrite the research plan to the executed pipeline
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 22:37:32 +08:00
imacat and Claude Fable 5
88d64f0553
Import the settled patterns and annotations into the working store
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 22:37:32 +08:00
imacat and Claude Fable 5
5961a739bd
Add the tally-annotations subcommand settling the pattern matrix
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 22:37:32 +08:00
imacat and Claude Fable 5
9c0a9c80c8
Archive the step 5-4 pattern-annotation runs
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 22:37:06 +08:00
imacat and Claude Fable 5
d9e3d5148f
Archive the step 5-3 grouped synthesis runs
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-18 22:36:33 +08:00
imacat and Claude Fable 5
9756c07cad
Add the step 5 grouped synthesis and pattern-annotation design
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:42 +08:00
imacat and Claude Fable 5
e9c29e5867
Correct three performer genders via build-db --gender-corrections
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:42 +08:00
imacat and Claude Fable 5
171d2f81fe
Archive the step 5 reading, consolidation, and synthesis runs
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:41 +08:00
imacat and Claude Fable 5
df363e14f0
Add the step 5 qualitative deep-reading design and definition files
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:41 +08:00
imacat and Claude Fable 5
d591931101
Record the Fable 5 auxiliary deep-reading experiments in the decision log
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:41 +08:00
imacat and Claude Fable 5
03ee51912d
Import the settled code groups into the working store
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:41 +08:00
imacat and Claude Fable 5
87ad31568a
Add the tally-groups subcommand settling results/groups.csv
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:41 +08:00
imacat and Claude Fable 5
ed54a1248f
Replace the quote newline escape with the lyric line-break convention
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:40 +08:00
imacat and Claude Fable 5
963504e9c3
Add step 4 semantic code grouping by majority vote on claude-fable-5
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:40 +08:00
imacat and Claude Fable 5
64dd9b0cc3
Add a model option to run-llm for the claude-fable-5 model
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:40 +08:00
imacat
41d2822063
Add conference paper first draft.
2026-08-17 22:38:40 +08:00
imacat and Claude Fable 5
70578b5d77
Record the blind semantic code grouping in the decision log
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:40 +08:00
imacat and Claude Fable 5
ff2a3a217f
Record the full k-value comparison table in the decision log
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:39 +08:00
imacat and Claude Opus 5
2c15c0bb8b
Derive the performing group genders from their Wikidata members
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:39 +08:00
imacat and Claude Opus 5
5d10383dcb
Derive the song performer gender and identify Pinkfong as Hope Segoine
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:39 +08:00
imacat and Claude Opus 5
99f5c1c260
Drop the redundant HTTP error class from the retry catch
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:39 +08:00
imacat and Claude Opus 5
d370ac51dc
Pin the parenthesized members pattern to a single split point
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:38 +08:00
imacat and Claude Opus 5
c7b630c632
Make the module-level helpers private instead of protected
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:38 +08:00
imacat and Claude Opus 5
5194d4246b
Extract the protected name restoration out of the credit parser
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:38 +08:00
imacat and Claude Opus 5
36b3456414
Classify the transient request errors in one place
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:38 +08:00
imacat and Claude Opus 5
511abd0a55
Extract the record content builder out of the export line builder
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:38 +08:00
imacat and Claude Opus 5
047f322bf3
Stop binding the unread role in the parsed credit check
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:38 +08:00
imacat and Claude Opus 5
2d8a34ea9e
Remove the unused skipped counter of the artist fetcher
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:37 +08:00
imacat and Claude Opus 5
1c78f4a918
Capture the command output in the parent-directory export test
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:37 +08:00
imacat and Claude Opus 5
71f9c713f0
Merge the two identical chart-position formatters of the CSV exporter
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:37 +08:00
imacat and Claude Opus 5
95b843f76e
Unify the export-llm-input and run-llm summary lines with build-db
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:37 +08:00
imacat and Claude Opus 5
76d5df3a87
Close the HTTP error fixtures when the test ends
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:37 +08:00
imacat and Claude Opus 5
a21e407e2f
Run the tests on an in-memory store and dispose the engine afterwards
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:36 +08:00
imacat and Claude Opus 5
7a5176b8b3
Trim the build-db summary to songs, artists, codings and elapsed time
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:36 +08:00
imacat and Claude Opus 5
045086f9ca
Import the settled coding into the working store
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:36 +08:00
imacat and Claude Opus 5
87352a2530
Settle the coding of the 883 songs against the 101 keywords
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:36 +08:00
imacat and Claude Opus 5
bfb5208133
Repair the coding output with a reviewed correction table
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:35 +08:00
imacat and Claude Opus 5
5018f12cd1
Record how far the coding output departs from its stated contract
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:35 +08:00
imacat and Claude Opus 5
10fccca108
Add the tally-codings subcommand for the majority vote
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:35 +08:00
imacat and Claude Opus 5
4dd82867fa
Archive the third coding run
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:34 +08:00
imacat and Claude Opus 5
8c06406b3a
Settle the coding by a majority of three runs instead of an arbitration
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:34 +08:00
imacat and Claude Opus 5
3a2419f43a
Import each command module only when its subcommand runs
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:34 +08:00
imacat and Claude Opus 5
8299906b51
Restructure cluster-keywords into builders and result records
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:34 +08:00
imacat and Claude Opus 5
adbd9c1a24
Archive the arbitration pass over the coding disagreements
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:34 +08:00
imacat and Claude Opus 5
94971eb07d
Quote one line per kept keyword in the arbitration
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:33 +08:00
imacat and Claude Opus 5
85db4dac12
Build the arbitration input with a per-ID extras merge
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:33 +08:00
imacat and Claude Opus 5
c2ffa9d247
Add the compare-codings subcommand for the arbitration handoff
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:33 +08:00
imacat and Claude Opus 5
c997cc8d74
Drop the source-provenance artifact from cluster-keywords
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:33 +08:00
imacat and Claude Opus 5
c1e099901d
Rename the arbitration definition file to 03-02-arbitration
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:32 +08:00
imacat and Claude Opus 5
787ca10f29
Archive the second coding pass against the 101 keywords
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:32 +08:00
imacat and Claude Opus 5
1db46039fe
Archive the first coding pass against the 101 keywords
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:32 +08:00
imacat and Claude Opus 5
d4c313734a
Keep the medoid group names after testing LLM naming
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:32 +08:00
imacat and Claude Opus 5
fbb80180af
Report the clustering result in a sentence
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:32 +08:00
imacat and Claude Opus 5
def2affa95
Rebuild the coding keywords with 100 groups
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:31 +08:00
imacat and Claude Opus 5
c5ad09524b
Record the clustering invocation in a meta file
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:31 +08:00
imacat and Claude Opus 5
5b376e001d
Raise the clustering to 100 groups
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:31 +08:00
imacat and Claude Opus 5
59f62cd4d4
Quote one line per assigned keyword
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:31 +08:00
imacat and Claude Opus 5
864735352a
Take the extra coding keywords from the command line
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:30 +08:00
imacat and Claude Opus 5
1c4d5c5ed7
Merge the keyword pooling into cluster-keywords
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:30 +08:00
imacat and Claude Opus 5
066ae15800
Separate the clustered keyword list from the keywords to merge
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:30 +08:00
imacat and Claude Opus 5
bf2b4970fd
Pass the coding keywords as input instead of baking them into the prompt
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:29 +08:00
imacat and Claude Opus 5
896ee09b21
Archive the clustered coding vocabulary
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:29 +08:00
imacat and Claude Opus 5
a14e2a878a
Add the cluster-keywords subcommand for the coding vocabulary
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:29 +08:00
imacat and Claude Opus 5
b0a79af1a8
Archive the pooled keywords of the two tagging runs
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:29 +08:00
imacat and Claude Opus 5
0b995e5a51
Add the pool-keywords subcommand for the tagging runs' keywords
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:28 +08:00
imacat and Claude Opus 5
4eb278164b
Rebuild the vocabulary step on embeddings and drop the screen track
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-08-17 22:38:28 +08:00
imacat and Claude Fable 5
d9014cf1f3
Report the elapsed time when run-llm finishes
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:28 +08:00
imacat and Claude Fable 5
4a0a4ceead
Archive the tag run2 execution
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:27 +08:00
imacat and Claude Fable 5
2e5ecaaad0
Archive the tag run1 execution and add the run-cost ledger
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:27 +08:00
imacat and Claude Fable 5
e858f7a38f
Require valid JSON with escaped quotes in the definition files
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:27 +08:00
imacat and Claude Fable 5
5050b16812
Forbid Markdown code fences in the definition-file outputs
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:27 +08:00
imacat and Claude Fable 5
93b8afc547
Record the song-775 refusal ablation and rule it unanalyzable
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:27 +08:00
imacat and Claude Fable 5
cba73a6ace
Add watermark normalization to fetch-lyrics
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
bc98fdf171
Changed the natural-coding definition files to single-pass convergence
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
9ef84cfe54
Add the natural-coding definition files and the convergence algorithms
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
09a8381519
Settle women-power as the a-priori screen label term
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
cf80a6f51e
Reduce run-llm to a pure batch executor
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
0b77310d86
Record the natural-coding pipeline design in the project documents
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
5092e04d34
Gather the CLI command modules into a commands sub-package
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
376916fb8c
Add the export-llm-input subcommand for the lyrics-only LLM input
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
ce8a217e94
Regenerate the artists report with the Wikidata snapshot applied
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:26 +08:00
imacat and Claude Fable 5
14cc80e662
Rename the Markdown documents to dash-connected names
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-17 22:38:20 +08:00
imacat and Claude Fable 5
21c5ae5481
Drop the engine preparation from build-db
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:34:36 +08:00
imacat and Claude Fable 5
383670ab2b
Move the invariant checks into the importers and drop find_violations
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:34:36 +08:00
imacat and Claude Fable 5
c59a023095
Package the capture-layer application into a CaptureImporter class
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:34:36 +08:00
imacat and Claude Fable 5
10dc4cb693
Repackage the build-db import steps into job classes
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:34:36 +08:00
imacat and Claude Fable 5
449675e7a2
Capture the song lyrics from the pilot study and the public APIs
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:34:36 +08:00
imacat and Claude Fable 5
a7806c0c9d
Align the fetch-lyrics summary with fetch-artists via shared utils
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:34:26 +08:00
imacat and Claude Fable 5
105664e93b
Remove the missing-lyrics report from fetch-lyrics
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:15:49 +08:00
imacat and Claude Fable 5
1220c21807
Fall back to the original artist credit when fetching lyrics
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:15:49 +08:00
imacat and Claude Fable 5
86914de850
Remove the retired artist overrides layer and the mixed artist type
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-04 15:15:49 +08:00
imacat
8463cfc906
Keep the artist snapshot sorted by name
2026-08-04 15:15:49 +08:00