✨ A short form of the fingerprint for link conditions (a length role; lockstep with ubCode)
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 12/100
Research direction
This is a design decision, not a code change: the issue asks whether a length role on the fingerprint kind or a prefix-aware comparison form should be used, and it sets a lockstep contract amendment with the ubCode twin (useblocks/ubcode#4057). Read the fingerprint work in #2204 and the link-condition filter code it references before proposing anything. Done means a maintainer-agreed contract decision, not a patch.
Written by the indexing model from the issue text.
Description
What
A fingerprint (#2204) is a full lowercase-hex SHA-256, 64 characters, which is impractical to write into a link condition by hand. Today a prefix works the way a short git commit id does, REQ_1[fp.startswith('3f9a1c2b7d4e')], and the full digest lives in needs.json. A short form was deliberately left out of the first slice so the stored value stays one frozen, full digest in both tools.
To decide (one contract amendment for both tools, then the conformance corpus, then each implementation)
- The shape: a
lengthrole on thefingerprintkind (derive = { kind = "fingerprint", length = 12 }, the stored value truncated to the first N hex characters), or a comparison form that knows it is matching a digest prefix. A role changes the stored value; a comparison form keeps it full and changes the filter evaluation. - Collision risk at short lengths and what is reported when two needs share a truncated value.
- The frozen-set promise is unaffected (what is digested does not change).
Lockstep release with ubCode. Twin: useblocks/ubcode#4057.
- Dominant language
- Python
- Stars
- 309
- Forks
- 103
- Avg merge
- 10h 41m
- Merged PRs (30d)
- 128
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
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 useblocks/sphinx-needs
-
documentation pkg: sphinx-needs
Difficulty 1/5 Under an hour Newbie friendliness 82/100
useblocks/sphinx-needs#2255 ·
Maintainers usually reply within 1 day
-
bug pkg: sphinx-needs
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
useblocks/sphinx-needs#2253 ·
Maintainers usually reply within 1 day
-
bug pkg: sphinx-needs
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
useblocks/sphinx-needs#2251 ·
Maintainers usually reply within 1 day
-
bug pkg: sphinx-needs
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
useblocks/sphinx-needs#2249 ·
Maintainers usually reply within 1 day
-
documentation pkg: sphinx-test-reports
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
useblocks/sphinx-needs#2247 ·
Maintainers usually reply within 1 day
All issues in useblocks/sphinx-needs
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
aws-samples/sample-per-model-bedrock#261 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
pwncollege/dojo#1188 ·
Maintainers usually reply within 1 day
-
bug launcher packaging
Difficulty 1/5 Under an hour Newbie friendliness 88/100
tenstorrent/tt-studio#1426 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
python-attrs/cattrs#796 ·
Maintainers usually reply within 1 day