Limitations
These constraints describe the current repository behavior. They are included so a generated index is not mistaken for a complete or transactional code analysis system.
Supported inputs are limited
The scanner recognizes only Go, JavaScript, TypeScript, and Python extensions. Other files are ignored by directory scans, and extensionless files cannot be auto-detected. Add a language binding and grammar dependency in the repository before expecting another language to work.
Incremental output can be incomplete
update hashes files and skips unchanged inputs, but the engine rebuilds the
project index from files parsed in the current run. After a partial update, the
index can omit unchanged files, and deleting a source file can leave its old
generated Markdown behind. Use sunset clean followed by
sunset parse --no-cache when a complete rebuild is required.
Single-file CLI roots are not reliable
The CLI help describes a file or directory path, but the scanner/engine path
currently handles directory roots reliably. A direct single-file parse can
reach language detection with . as the relative path and fail. Put the file
in a directory and parse that directory, or use the public ParseFile API for
one-file parsing.
Dependency graph output is not part of the generated documents
The repository contains import-resolution and dependency-graph code, and the README describes that capability, but the current engine does not render a dependency graph into Markdown. Imports listed in a file summary are extracted syntax, not resolved project relationships.
Output names can collide
Generated filenames replace path separators with underscores. A nested path
such as a/b.go can therefore collide with a source file named a_b.go.
Choose non-colliding source paths or separate output directories when indexing
projects with both shapes.
Symlinks are not a project boundary
The scanner does not reject source symlinks before file reads. Indexing an untrusted checkout can therefore include content outside the intended root. Use a trusted checkout and review symlinks before running Sunset.
Installer and release identity
The repository establishes the Go module path
github.com/enolalabs/sunset and versioned release archive names. It does not
establish a package-manager installer identity. These docs make no claim about
an unverified installer, package, or current release status; use the repository
and release links in the site metadata as the source of truth.