This commit is contained in:
Philippe Pittoli 2025-05-25 03:10:10 +02:00
parent 10c0aa8424
commit fc16234773

49
TODO.md
View file

@ -1,32 +1,25 @@
# Code structure # Code structure and general note
Modules should have their own specific API. Right now, the code is still in a somewhat early stage and **multiple** refactoring should take place.
When a module currently requires to send messages, the API should reflect semantics instead of providing the module a way to just carry raw messages.
For example, there are currently modules able to send messages (with a very simple `MessageToSend message` API), but instead of dealing with raw messages that need to be built inside the module, the API should be more semantic such as `ChangePassword new-password`.
Once modules will have specific APIs, the entire state of the application could be moved into a single module (or *component*). The code should be reviewed and a decent documentation should be provided.
Some code should be pushed in the [bulma purescript module][psbulma].
The entire state of the application *could* be moved into a single module (or *component*).
Thus, every state modification can be handled in a single place. Thus, every state modification can be handled in a single place.
Minor modifications: Explanations and static content in general could be written using some kind of templates, not directly in Halogen.
- explanations and static content in general should be written using some kind of templates, not directly in Halogen
# Features # Features
Delegation: - new RR record: the "delegation record", effectively removing all other RRs, which should require 2 nameservers
- **MAYBE**: also enable to change NS records (but after a accepting the consequences)? (could be unnecessary due to delegation)
- new RR record: the "delegation record", effectively removing all other RRs - zone-wise indications to help people configure their zone for specific uses (web, mail)
=> requires 2 nameservers
- also enable to change NS records (but after a accepting the consequences)?
About the admin interface: About the admin interface:
- enable administrators to ask for users' info and show zones - display details about users
- perform a few more administrative operations (*TBD*)
Slightly more complex features to implement:
- zone-wise indications to help people configure their zone for specific uses (web, mail)
# Tests # Tests
@ -38,29 +31,17 @@ Check for common errors:
More specialized tests or debug options: More specialized tests or debug options:
- verify the length of received messages in `App.Message.IPC` - verify the length of received messages in `App.Message.IPC`
- MAYBE: run `named-checkzone` on the genetared zone and provide the result in case of an error - MAYBE: run `named-checkzone` on the generated zone and provide the result in case of an error
# Display # Display
- say that there is no IPv6 on the server at the moment, so there is no point doing IPv6 address updates - say that there is no IPv6 on the server at the moment, so there is no point doing IPv6 address updates
- admin interface: basically just rewrite the whole thing, it's a mess
Details:
- *maybe* notifications should disappear after a few seconds
- hide logs by default? - hide logs by default?
# General note
The code should be reviewed and a decent documentation should be provided.
Right now, the code is still in a somewhat early stage and **multiple** refactoring should take place.
Some code should be pushed in the [bulma purescript module][psbulma].
# TODO in authd and dnsmanagerd # TODO in authd and dnsmanagerd
- enable users to change their NS - implement proper delegation
- **MAYBE**: enable users to modify their *protected-by-read-only* NS entries (could be unnecessary due to delegation)
- MIGRATION-related: remove migrated accounts with no connection in over 6 months - MIGRATION-related: remove migrated accounts with no connection in over 6 months
[psbulma]: https://github.com/KaneRoot/purescript-bulma [psbulma]: https://github.com/KaneRoot/purescript-bulma