Repository navigation
The user's own record comes first — install inside the investing folder, quote it as theirs, let the engine check the pick (refs #844) - #845
Merged
Conversation
…nvesting folder, quote it as theirs, engine checks the pick (refs #844) Owner ruling 2026-09-02: "no private repo" was a development-side rule; in use the skill lives inside the user's investing folder and reads what they wrote. - SKILL.md: "The user's own record comes first" section, description, first paragraph, label rule; agent-boundaries: one may / one may not; AGENTS.md boundary 2: one clause (7,860 of 8,192 bytes). - Fourth provenance class user_record (source + as_of, nothing else) across review.AGENT_CASE_PROVENANCE, answer_provenance, the schema, C1, and the trade-consequence agent-case bullets; seven new validator tests. - consider generation path now opens with consider_three_way_user_record; the owner-approved comparison stays in the corpus; the D4-only clearance scene is replaced to keep the surface at five positives. - README (en/zh-TW/zh-CN): install under <investing folder>/.claude/skills; plugin manifest mirrors the description; maintainer-guide row; changelog. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This was referenced Sep 2, 2026
Open
…live statement as a record, the approved exemplar revised in place, a re-runnable install line (refs #844) Ten-angle review of #845 plus a sweep: fifteen findings, all addressed. - answer_provenance: public_fact and user_record share _check_sourced_claim and one field constant; as_of must round-trip through date.isoformat (the bare fromisoformat accepted 20260730 and 2026-W01-1); a claim restating the user's --decision-context words is refused as user_record, not only as public_fact; the function docstring points at the module note. - Corpus: consider_three_way_comparison is revised in place (same id, same #830 shape, deciding reason from the user's record); the D4-only clearance scene is restored, so the no-end-block witness is back and the #834 row stays true. trade-consequence.md's --agent-case example now quotes the number its anchor needs and passes the validator. - SKILL.md scopes the storage claim (a quoted note travels only inside a consideration's own recorded case, on this machine) and says where the folder is; CHANGELOG and the maintainer-guide row match. - README (three languages): the install line is chained and uses ln -sfn, the lede carries the new positioning, the "is not" bullet is one clause; the GitHub repository description carries the positioning too. - Tests: test_consider's provenance map gains user_record; test_doc_language pins the user's-record rule in both entry points with mutation proof and compares README bash blocks across all three languages; the two cited design docs name the fourth label. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This was referenced Sep 5, 2026
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
User outcome
A user who keeps their own investing notes installs the skill inside that folder. When they bring a decision, the answer's deciding reason engages what they already wrote about the names in play — thesis, falsifiers, open questions, prior decisions, stated stances — quoted as their record with the note and its date. The engine's consequence and rule collisions check the pick instead of leading it by default. A status field a tool maintains about the user is read as the tool's note, not as the user's belief. Nothing read is written anywhere.
Owner ruling 2026-09-02 (#844): 「不讀私人 repo」只是產品開發上的限制,實體使用就應該要讀私人 repo;「我自己的預期其實是用戶應該是在自己的投資 folder 裡面會增加 fomo kernel」.
Current behavior / evidence
evidence_refsmay be "a note of their own"); the answer-provenance schema had three claim classes and none for the user's own record, so a quoted note under--agent-casehad to be mislabelled or dropped.Change
SKILL.mdgains "The user's own record comes first" (where the folder is, and that a quoted note is stored only inside a consideration's own recorded case, on this machine) and its description says so;README.md/README.zh-TW.md/README.zh-CN.mdinstall the skill under<your investing folder>/.claude/skills/with one chained, re-runnable line (cd … && mkdir -p … && ln -sfn …), carry the positioning in the lede, and say what is read there (the global symlink remains the no-folder fallback)..claude-plugin/plugin.jsonmirrors the description; the GitHub repository description carries the positioning too.references/agent-boundaries.md: one may (read and quote the record as theirs) and one may not (relabel it as a public fact, an engine fact, the agent's judgment, or a category a status field assigned).AGENTS.mdboundary 2 gains one clause; the floor stays inside its byte budget (7,860 of 8,192).user_record(source+as_of, nothing else):review.AGENT_CASE_PROVENANCE↔answer_provenance.PROVENANCE+ one_check_sourced_claimshared withpublic_fact↔schemas/answer-provenance.schema.jsonuserRecordClaim↔docs/expression-contract.mdC1 ("four provenances") ↔references/trade-consequence.md"The recommendation case" and its--agent-casebullets.as_ofmust match the schema's date shape exactly (the barefromisoformataccepted20260730). Case 8 runs in both directions: the user's--decision-contextwords may become neither a public fact nor a dated note they never wrote. The recommendation itself still may not be auser_record.consider_three_way_comparison— the owner-approved comparisonreferences/trade-consequence.mdopens with — is revised in place: its deciding reason is now the user's own recorded condition and stances, quoted as theirs with each note's date, and the engine's consequence is the check on the pick. Its [design·M1] Owner-live: answers exceed the reading budget — verbosity is the next usefulness bottleneck after #827 #830 shape, its scene id and the [implementation·skill] Put one canonical exemplar into each surface's generation path — examples-first, closing #832's residual force #834 pairing are unchanged; the pre-[design·M1] The user's own investing folder is the evidence for why a name — install inside it, read it as the user's record, let the engine check the pick #844 text is in git history; the clearance scene stays in the corpus. Every note quoted is invented with the issuers. The reference's--agent-caseexample now quotes the number its anchor needs and passes the validator.docs/maintainer-guide.mdmirrored-surfaces row;CHANGELOG.mdUnreleased entry.Scope / non-goals
No engine ingestion of the folder, no new store, no crawling; the private-data boundary is unchanged and no note content appears in any public artifact. Review flows are untouched — their thesis questions could later read the same record, which is a follow-up, not this slice.
Acceptance
tests/test_answer_provenance.py50/50 (nine new: acceptance, missingsource/as_of, non-dateas_of, the schema's exact date shape for both citing classes, an anchor on a record is refused, schema shape, the recommendation may not be a record, the user's live statement may not be relabelled a record).tests/test_expression_contract.py24/24 andtests/agent/check_expression.pyPASS: the new scene passes E-5 through E-8, the reference/corpus copies are byte-identical,considercarries five positives.tests/test_installed_skill_tree.py7/7,tests/test_doc_language.py38/38 (two new: the user's-record rule pinned in both entry points with mutation proof; README bash blocks now compared across all three languages; SKILL.md 10,313 of 12,288 bytes),tests/test_consider.py207/207 (its provenance map carries the fourth class),tests/test_evaluation_challenge.py41/41,tests/test_repo_hygiene.pygreen.python3 tests/run_all.py --group product— 49/49 suites pass locally.Review
A ten-angle review plus a sweep (second commit) found fifteen items, all addressed: the two validator gaps above; the doc example that the validator refused; the install line's re-run behaviour and unchained placeholder
cd; the storage over-claim inSKILL.mdandCHANGELOG.md; the exemplar swap that would have left the maintainer guide's #834 row stale and dropped the only no-end-blockconsiderwitness (now revised in place instead); the duplicated citation checker and constant; the missinguser_recordentry intest_consider.py's provenance map; the README bash gate that skipped zh-CN; the unpinned SKILL.md ↔ agent-boundaries mirror; the lede and repository description; and the two cited docs (decision-fomo-kernel-shape.md§3,expression-contract.mdC1 registers) that still listed three labels.Privacy / rollout / recovery
All exemplar issuers, notes and dates are synthetic. Reversible by restoring the previous fence, the previous scene, and the three-class vocabulary; no migration, no state change.
Refs #844 (owner design ruling recorded there; the issue stays open for the harness evidence). Supersedes the Phase 1/2 "private-repository" wording in #475 as read at runtime — reading is declared, not silent, and nothing is imported into the engine.
🤖 Generated with Claude Code