Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
praca — the praça session-orchestration substrate for the
mado/tear terminal.
Automation-first. Sessions are auto-named (deterministic glyph +
word from the project path, via ishou_tokens::FleetSessionNames)
and auto-bound to projects; cd auto-attaches the project's session;
the picker is the fallback for everything automation doesn't cover.
A praça (Portuguese: a town square) is where the sessions of a workspace gather — every project root has its named seat, and walking into a project (cd) seats you at it automatically.
The pieces
- [
project] — walk UP from a cwd to the nearest project root (.git, elseCargo.toml/flake.nix/package.json/go.mod/pyproject.toml). Pure, mock-testable. - [
record] — [SessionRecord]: the persisted, ranked, searchable unit per session (id, name seed+style, project root, cwd, frecency counters, tags, state). - [
frecency] — recency-weighted frequency [frecency::score]. - [
binding] — [ProjectBinding]: the persisted project→session map that powers cd-driven auto-attach. - [
index] — [SessionIndex]: fuzzy + frecency search over every session (the picker), plus by-project lookup. - [
attach] — the automation core: [attach::decide] turns a cd into a typed [AttachDecision] under an [AttachPolicy].
This phase is pure
No mado/tear-daemon wiring lives here yet — that is a later phase.
Every function is deterministic: time is injected as u64
unix-seconds, never read from the clock; the filesystem is touched
only by [project::project_root]'s real-fs marker probe (and even
that has a pure [project::project_root_with] sibling for tests).
The [Praca] facade is the surface mado/tear will drive later.