Version 0.94 planning
=====================

Last updated: 2 August 1997 by Ramon

Why this document?
------------------

This document was created to put my ideas on paper and allow discussion
and thinking by Team WaterGate.


Expectations of version 0.94
----------------------------

There will be minor new features in 0.94. It is important to complete
some of the existing features and add small new features that do not
have a system-wide impact and fix some of the discovered bugs.


New features that are out of the question for 0.94
--------------------------------------------------

- New dupe checking methods
- Zone gating
- Rescanning
- Internal handling of multiple e-mail addresses
- Complete multi-part MIME message support/generation


List of new features possible to add to 0.94
--------------------------------------------

- Moving message bases in WtrConf
- Holding directories
- Multiple outbounds for FrontDoor
- MIME header encoding
- UUPC support
- Automatically move sent netmail to other area
- From/To/Subj/Body/Header string search + action: move, copy, kill, etc.
- File routing


Features/Changes certain to make for 0.94
-----------------------------------------

- Gatebau compliance
- Notify messages by AreaFix
- Initial confirmation message by List Server
- Path checking / backslash adding
- Home Domain for mailing list
- Originator flag for mailing list subscribers
- Sort directory contents in File Manager
- Add forward flag when importing netmail with -nonetmail


Description of new features, impact and expected workload
---------------------------------------------------------


Gatebau Complaince
------------------

This has to do with the Message-ID to MSGID translation in both
directions. In order to allow WaterGate to be used in Germany, it
needs to support the Gatebau defined way of translating between
the two. I think I have two documents on Gatebau, one I remember
missing vital examples.

When I looked at it some time ago, I found it incomplete for some
reason and decided to go for my own. I think I will make it a toggle
to enable inbound detection of self-generated MSGIDs for decoding,
if such is possible with Gatebau, and to generate gatebau compliant
Message-IDs and MSGIDs, the latter of which being the most important
of the entire Gatebau concept.

Impact: one new toggle in WtrConf, Gateway Settings and changes in
the two functions where MSGID to Message-ID and Message-ID to MSGID
translations are performed. Changes to the upgrade program. Not much
work and since it is a toggle it will not affect the problem if
implemented wrong.


Notify Messages by AreaFix
--------------------------

This option informs users (FTN and UUCP) about their current
subscription to areas and AreaFix settings and is sent to them
automatically.

A new toggle will be added to avoid sending notification messages
to certain systems. A command line option ("NOTIFY" ??) will trigger
the sending of the actual notification message, so scheduling by an
external program becomes possible. This will be implemented in
WtrGate.

Impact: one toggle in the user record, which requires an updated
upgrade program. The function will be completely separated from the
rest of the code, so the impact on stability should be minimal. It
is quite some work to implement though.


Initial confirmation message by List Server
-------------------------------------------

To avoid being put on a mailing list without wanting to, or to avoid
subscribing people with an invalid return address, WaterGate will have
to send a confirmation message to the address subscribed to the list.
If the user does not respond, then he/she will not be added to the
list.

There are two ways of implementing this. The first is to send out a new
message to the requested subscription address and using the information
in the reply for subscription. The address used at that time can be
different again, causing confusing.

Instead, a code can be issued using the system already present. The
address is added to the list at once, but put on hold in some way.
Maybe an extra step in the re-confirmation mechanism can be used.

The new subscriber should not receive messages from the list until the
confirmation message has been received. It might be an idea to stop
sending messages to a subscriber at the second or third re-confirmation
request. Making the days between two reconfirmations configurable at the
same time might be desired as well, because the current time of eight
days is not sufficient to cover a holiday period of three weeks..

This feature needs more design-thinking.


Path checking / backslash adding
--------------------------------

When the File Manager was added for picking paths, WtrConf stopped
checking for back slashes where required and stopped asking to create
paths, especially when the File Manager was not used to pick the path.

This needs to be re-installed, allowing for both the File Manager and
the post-input checking function.

Impact: About 40 fields in WtrConf only. Care must be taken not to add
the check for filename fields (compared to path-only fields). Old check
function is still hanging around somewhere.


Home Domain for mailing list
----------------------------

In "Multi-homed systems" with multiple system domains taken care of by
one configuration, WaterGate takes the first system domain for the
address of the list server. This makes it impossible to use the other
domain(s) for mailing lists. Note that all mailing lists can always be
reached on all system domains.

The required addition would be a pick list to select a system domain
address (one of the six) as the home for the mailing list. This domain
would then be used as the address of the list when it sends lists,
does distributions, etc.

Impact: minimal. A new field would be added for the mailing list server
record, being an index into the six system domain addresses, possibly
having no effect on the record structure and thus not requiring a change
to the upgrade program. The locations where the mailing list address
is composted using the first system domain address would now use the
new index.


Originator flag for mailing list subscribers
--------------------------------------------

This flag is required to allow integration of multiple message sources
on one mailing list, which would thus only require one subscription by
users.

The same effect can be reached using the post-only option, although I
cannot recover what the problem was now. Might have something to do with
return mail to the remote mailing list. John? I will check my TeamWG
history as well.


Sort directory contents in File Manager
---------------------------------------

A little left-over job to make the File Manager more usable.

Impact: minor, File Manager only. Amount of work: minimum.


Add forward flag when importing netmail with -nonetmail
-------------------------------------------------------

When not directly sending a message for a point or other node by
writing it to a .PKT file, but importing it into the primary netmail
area at once instead, the message needs a Forward flag.

Impact: unknown. I need to investigate where this fits into the current
logic. Not known whether the Forward flag is the correct flag to put
on it.

Also: the rest of the code does not check for the Forward flag yet. Not
sure this needs to be added. Perhaps during a combined scan/toss with
-nonetmail given to avoid exporting and then importing again a message
with a forward flag.


<end of document>
