Repository navigation
The low console gaps (L1): activation, server association, metrics, rights, work orders - #55
Merged
Merged
Conversation
…ights, work orders driverset.activation shows the engine's activation document when it answers and the set's activation attributes either way; apply sends a credential. driverset.servers lists the set's servers and what the connected server runs; add/remove call SetDriverSet/ClearDriverSet at that server. engine.metrics counts users, associated and enabled users and each driver's associations by state without reading attributes. driver.rights asks eDirectory for the driver object's effective privileges on an object. workorder.list lists DirXML-WorkOrder objects. docs/console-gaps.md §13. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Contributor
Author
|
Merged into master and released as 0.25.0. This closes the console-gaps plan (docs/console-gaps.md §13). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The last phase of docs/console-gaps.md (§13). Five read-mostly commands, each grounded on the engine's own extended operations or eDirectory's.
driverset.activation [apply --file F]—ViewActivationwhen the engine answers it (edir3 and idm254 answer "Other", so the set's attributes are shown either way:DirXML-Act1/2/3as present with the timestampDirXML-Act2opens with,DirXML-ActivationDate);applysends a vendor credential throughApplyActivation(heavy write, audited).driverset.servers [add|remove --server DN]—DirXML-ServerListand what the connected server reports running (GetDriverSet); add and remove go to the named server (URL from the environment'sservers=mapping) and callSetDriverSet/ClearDriverSet. Heavy writes, audited, refused when the server runs another set. Not exercised live: edir3 has one server and clearing it would stop every driver.engine.metrics [--base DN]— the console's user and driver metrics: users, users with an association, the enabled ones (its licensing filter), and each driver's associations by state. Counts only, through a newVault.countthat reads no attributes. edir3 undero=data: 13154 users, 21 associated, 20 enabled.driver.rights --driver D --dn O [--attr A…]— eDirectory'sGetEffectivePrivilegeswith the driver object as trustee: entry rights, all-attributes rights and the attributes named (LDAP names; the NDS name gets a hint). Proven on edir3.workorder.list [--base DN]— the Work Order driver'sDirXML-WorkOrderobjects, newest due first. Listed rather than modelled: runtime records, not configuration, so the note's "tree objects" idea was dropped.Left out: excluded objects — this schema has no attribute for them and nothing on a lab engine to ground the console's route on. A
doctorcheck on rights needs a rule set of which rights a driver needs where;driver.rightsis the building block.Tests: five new cases in OperateTest. Full suite and
bin/ci-portable.shgreen. edir3 unchanged (reads only).🤖 Generated with Claude Code