novelty: spread the atom cap across the artifact instead of its opening
Maintainers usually reply within 1 day
@antonwolfy is already working on this.
Since Nov 1, 2026.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- python
- Domain
- machine-learning, testing
Research direction
Start with the novelty analyze extraction and atom-cap selection flow, then read docs/skill-novelty-evidence.md and docs/reviewing.md to understand current tier measurements and bundle behavior. The issue leaves the sampling strata and tier evidence decisions open, so record those decisions before implementing. Done means capped tiers probe a deterministic spread sample, selection tests pin the behavior, and the docs and cap warning describe the rule.
Written by the indexing model from the issue text.
Description
Problem
novelty analyze caps the atoms it probes (25 at --tier triage, 60 at standard). Extraction takes them in document order and stops at the cap, so a capped run measures only the opening of the artifact. Triage on IntelPython/dpnp#3099's guidance files:
| file | spans | atoms from | share of tokens |
|---|---|---|---|
root AGENTS.md |
61 | s0002–s0012 | about a quarter |
dpnp/tests/AGENTS.md |
32 | s0003–s0013 | about a third |
The rules a reader most wanted judged (the leftover-reference rule, the changelog format, the CI table, ## Reviewing, the directory guides) were never measured.
A separate change makes the run say how far the cap reached. That doesn't solve the underlying problem: the capped rate describes whatever the file opens with. So two artifacts' rates mean different things when one opens with an introduction and the other with rules, and a file's rate moves when its sections are reordered.
Proposal
Extract every span, then probe max_atoms atoms spread over the file.
- Selection: stratified by span position (or by tokens), with a fixed seed.
samplingrecords the rule (cap-spread:<n>). - Cost: probing, the expensive part, stays at the cap. Extraction grows: 3 batches instead of 1 for the 61-span file. The whole triage run there was 103 calls and $0.78.
- Bundles: with
--include-resources, spread over the files as well, soreferences/is reached on a skill whoseSKILL.mdalone has 25 atoms (todaydocs/reviewing.mdsays the flag reachesreferences/only below the cap).
This changes what a tier measures, so it needs a research-register decision. The tier profiles in docs/skill-novelty-evidence.md were measured with document order.
Open questions
- Strata: by spans, by tokens, or by headings?
- Tier evidence: does it change the tier comparison in the evidence page enough to need re-measuring a subset?
- Shortening: the
shorten_artifactforfeit ("scored only against the capped atoms, i.e. the opening") changes. Do shortening candidates then cover the whole file? - Determinism and cache: the selection must be reproducible across runs and stable under the response cache.
Done when
A decision record exists, and triage (and the other capped tiers, if agreed) probe a spread sample. Tests pin the selection, the docs describe it, and the cap warning names the rule.
- Dominant language
- Python
- Stars
- 9
- Forks
- 9
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 295
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from intel/dokimi
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
intel/dokimi#374 · 2 comments ·
Maintainers usually reply within 1 day
-
repo budget: Copilot profiles get Claude Code's root CLAUDE* rule, so a root AGENTS.md reads offPossibly taken @antonwolfy claimed this today. Open
Difficulty 3/5 Half a day Newbie friendliness 42/100
intel/dokimi#372 · 1 assignee ·
Maintainers usually reply within 1 day
-
novelty: a capped run indexes spans and writes atoms.json from the sample onlyPossibly taken @antonwolfy claimed this today. Open
Difficulty 4/5 3-5 days Newbie friendliness 18/100
intel/dokimi#371 · 1 assignee ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 45/100
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 8/100
Maintainers usually reply within 1 day
Similar issues
-
bump patch
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
autowarefoundation/autoware_carla_scenario#1321 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 1-3 hours Newbie friendliness 78/100
QuantConnect/Documentation#2838 ·
Maintainers usually reply within 1 day
-
get_all_subclasses must deduplicate by class identityPossibly taken @Gambit-Checkmate claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 15 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
awslabs/route53-dynamic-dns-with-lambda#67 · 1 comment ·