📦 deps(thirdparty): update snapshots
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Compute the 4-char content hash for a lore entry ID.
|
||||
|
||||
Usage:
|
||||
python id_hash.py "Use Next.js App Router; reason: streaming + RSC"
|
||||
|
||||
Output:
|
||||
The 4-char lowercase hex hash that goes into an entry's ID, e.g. `a3f2`.
|
||||
|
||||
The hash is `sha256(text).hexdigest()[:4]`. This is the same algorithm
|
||||
described in `references/entry-format.md` (ID generation section), so
|
||||
running this script always produces the ID component a lore agent
|
||||
would assign.
|
||||
|
||||
Cross-platform: works on Windows / Linux / macOS with Python 3.6+.
|
||||
"""
|
||||
import sys
|
||||
import hashlib
|
||||
|
||||
|
||||
def main():
|
||||
if len(sys.argv) < 2 or sys.argv[1] in ("-h", "--help"):
|
||||
print(__doc__, file=sys.stderr)
|
||||
sys.exit(0)
|
||||
|
||||
text = sys.argv[1]
|
||||
h = hashlib.sha256(text.encode("utf-8")).hexdigest()[:4]
|
||||
print(h)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user