[FEATURE] Audit authority, code quality and documentation in inputd #1
Labels
No labels
bug
ci
docs
duplicate
enhancement
help wanted
invalid
performance
phase-6
question
refactor
security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
erix/inputd#1
Loading…
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 and motivation
This issue tracks continuous Phase 6 audit closure for
inputd. Normalize and route keyboard/pointer input from authenticated device peers to authorized consumers.An initial inventory is not a security or documentation closure claim. Evidence must follow each changed boundary through final heads, with priority security, reliability, then performance.
Proposed behavior and scope
Current inventory: 1 Cargo target (1 bin); manifests:
Cargo.toml. Include explicit and automatically discovered targets, supported features and target-specific configurations.Inventory every startup/runtime grant and authenticated peer, then success, denial, cancellation, failed transfer, restart and teardown. Trace callers and downstream providers so names, numeric identities and retained aliases never become implicit authority.
Authority, security and reliability
Maintain a finding register with public finding references, exact revisions, invariants, reproduction, owners, regression tests and closure evidence. Publish only non-sensitive status here; suspected vulnerabilities follow SECURITY.md. Each dimension below needs its own result and rationale; an absent daemon or current Rust target is not a blanket exemption.
Acceptance criteria
missing_docsenforcement without blanket allowances or hidden-API escapes, warning-denied private-item rustdoc and an undocumented-public-API negative gate.cargo fmt --all -- --check, strict Clippy, unit/doctests and warning-denied builds/rustdoc for every owned crate/target under default and all valid feature, freestanding/host, SMP and profile combinations; test mutually exclusive combinations separately. Add focused VM regressions for runtime behavior and observe the older catalog and unit tests at the exact published heads.Alternatives and tradeoffs
Use cohesive local refactoring or a justified shared extraction only after identifying real common semantics and authority boundaries. Remove superseded paths after preserving maintained coverage. Profile before optimization; document unavoidable ABI/hardware limits and explicit quotas rather than weakening security for speed.
Coherent realm image service prerequisites — 18 September 2026: Signed
ed6473c6e741b1c3b8049f2dffb2a959c475c5acselects the original shared wire/startup dependency graph. Direct Rust implementation bytes are unchanged. All 8 default, all-feature and separate production development/release configurations pass 28 unit tests per configuration, strict host/native Clippy and freestanding linking with fatal linker warnings. Formatting, private-item rustdoc and Markdown pass, with zero warnings. The original push/PR CI observation and subsequent user-rerun disposition are recorded below. Matching catalog adoption and real consumer VMs remain requirements; complete realm and full in-guest build acceptance remain open.Resolved by user-triggered reruns, verified 19 September 2026: CI 74 (attempt 2), CI 75 (attempt 1), pass at unchanged commit
ed6473c6e741b1c3b8049f2dffb2a959c475c5ac. All four test/Markdown job logs are complete and hashed (62,791 bytes), with zero warning or failure candidates. This resolves the current validation blockage. Original failed-attempt status and HTTP 500 observations remain history; their missing output and causes are not recovered or explained by this result. No source fix is claimed. Bug 3 is closed.Historical original CI evidence gap — 18 September 2026: CI 74 reports failure, while the selected original job logs return HTTP 500. Bug 3 retains the exact observations. Cause and complete CI acceptance remain unproved; at that observation no workflow had been rerun or cancelled.
Tracking and rollout
Runtime consumer dependency alignment — 15 September 2026
Signed
f89b9b2ddefd7b5aa38afa586a8e54589e6b1a60aligns the existing dependency selections with the original signed runtime graph. This checkpoint changes Cargo selections and the roadmap; this repository's Rust implementation files are unchanged. Formatting, strict Clippy, private rustdoc and canonical documentation checks pass without warnings. Default/all-feature development/release tests pass 28 default / 28 all-feature tests. Independent production configurations also pass strict host/native Clippy and native builds:inputd-runtime: 28 development / 28 release tests,inputd-runtime-input: 28 development / 28 release tests. There are 8 supported native builds in total. Push/review CI 72/73 passes with complete classified logs and no final warnings. The product catalog, product VM acceptance and guest build remain pending. Review: #2.feature/posix-compat; update linked WIP PRs after coherent signed checkpoints using canonical CONTRIBUTING.md messages.169e873da9ca96d0c92e95d823e4acfee5c06108; refresh component/dependency heads and their own CI evidence as implementation advances.Coherent dependency checkpoint — 20 September 2026: signed/pushed commit e376c6d49bea66dd34288ac4e04791b4b074d068 aligns original shared dependency pins with the explicit installer-rights contract. Only the manifest and roadmap change; local implementation, APIs and authority policy are unchanged. Four strict 28-unit configurations, four native builds with the maintained linker layout, host/native Clippy, formatting, private rustdoc and dependency checks pass without warnings. Original CI 76/77 passes with four complete hashed logs (62,786 bytes), zero warning candidates.
Full catalog equality and actual consumer-image validation remain required under Integration regression 68. The broader work remains tracked by phase completion, including native external Rust/LLVM/runtime rebuilding and both complete EriX-in-EriX generations. This dependency checkpoint does not close full lifecycle, frame or self-hosting acceptance.
Acknowledged terminal service dependencies — 21 September 2026: signed 43e009d6fe0f947fbf21acde4e7bcb6de342c3cf selects the original shared libraries for repeated terminal observation, exact acknowledgement and final CPU measurements under Kernel design 20. Four strict 28-test development/release and default/all-feature configurations, warning-denied host/native builds with the maintained linker layout, host/native Clippy, private rustdoc, applicable doctests, formatting and dependency/Markdown checks pass. All authored code remains below 1,000 lines. Original CI 78, 79 passes; complete hashed logs total 62,829 bytes with zero warning candidates. Full service CPU/profiler VM acceptance and guest builds remain open in Phase 6 completion.
[FEATURE] [P02.R22] Audit authority, code quality and documentation in inputdto [FEATURE] Audit authority, code quality and documentation in inputd