UndoLangSecurity

Fail closed

Constrained language. Explicit authority.

Deliberately absent

No shell commands, arbitrary executables, plugins, imports, packages, network calls, cloud APIs, environment interpolation, daemon, or database. The runtime has no secret or API-key requirement.

Path enforcement

os.Root capability handles enforce target access. Traversal, unsafe symlink parents, undeclared absolute paths, and `.undo` access are rejected. Important state is revalidated after lock acquisition and immediately before mutation.

Protected state

Locks, metadata, journals, and backups use restrictive modes where supported. Journals cap payload lengths before allocation and validate framing, sequence, checksums, transaction identity, operation references, and state transitions.

Privacy

Machine and human output can include paths, effects, counts, and hashes, but never target contents. The static website has no analytics, external scripts, third-party embeds, or data collection.

Unsupported objects

Symlink copy and special files are rejected. Basic modes are supported; exact ownership, ACL, xattr, hard-link, sparse-file, and platform stream topology are not.