Host identity: avoid collapsing unresolved hostnames onto empty-IP document IDs #9
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/star-cl#9
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
starintel:hostcurrently computes its deterministic document ID fromhost-iponly. An unresolved host with an empty IP therefore hashes the empty string, causing every unresolved hostname to collide on the same canonical ID.This was exposed while integrating Hackmode's typed local assets with canonical
star-cldocuments. Hackmode now refuses to project unresolved hosts rather than create corrupt central identity.Current behavior
In
src/hosts.lisp:Resolved hosts are fine. Unresolved hostnames are not.
Desired behavior
Define a deterministic host identity rule that preserves existing resolved-host compatibility where possible while giving unresolved hostname-only records distinct canonical IDs.
Candidate policy:
host|hostname|<canonical-hostname>or another explicitly versioned schemeDo not silently change IDs for existing resolved hosts unless a schema-version migration is deliberately designed.
Dependencies
This blocks safe projection of unresolved Hackmode host assets and similar recon pipelines into central StarIntel documents.
Acceptance criteria
Verification
Extend
star-cldocument/host tests with stable expected hashes and round-trip fixtures. After merge, update Hackmode's projection test to allow unresolved hosts and remove the temporary projection guard.