----- Message from Jared Hall <ja...@jaredsec.com> ---------
   Date: Fri, 23 Jul 2021 00:07:52 -0400
   From: Jared Hall <ja...@jaredsec.com>
Subject: CHAOS: v1.2.2: Of Documentation
     To: users@spamassassin.apache.org


Simon Wilson wrote:
could you, please, finally, describe what does this module do,
here to the list and/or to the wiki?

the description there is too hard to understand, epecially at the beginning,
and I couldn't force myself to understand it (multiple times).

Maybe you should start with the easy parts and follow with those more
compliated functionality, because I feel the description starts with thelatter.


I'm guessing from the silence in response that this will remain a mystery.

Simon.

___________
Simon Wilson
M: 0400 12 11 16

Reads perfectly well to me.  I guess to be compatible with any other plugin, I must delete all documentation entirely :)

No - but perhaps a start would be to *really* listen when people ask questions demonstrating you are not as good as you think you are at writing things which make sense to people other than yourself.


Seriously, every single rule that this module can generate is listed.  That's a good start, comparatively.

I answer, and have answered, all questions regarding this module.

Again no. Perhaps not all mailing list emails make it through the module...

Open-ended questions, or questions that are vague and ambiguous, are ignored.  For instance, "Maybe you should start with easy parts"? OK, what's easy?  I'm reminded of an old Star Trek episode where Dr. McCoy is reattaching Spock's brain.  "It's so easy.  A child can do it", he muses.  Questions have value.  Statements less so.

Like that one?


This module has some unique stuff that CANNOT be done in a pure SpamAssassin environment.  It also has stuff that can be replicated using standard rules.

1) The module, if installed and using the config file as is, does no harm at all.  It will merely generate rules based upon what it finds.  These are all scored at the low rate of 0.01.  It's up to the user to decide what to with them.  They can wrap up a generated rule in a meta rule.  Example:

meta   JR_HATES_BEENTHERE   (JR_X_BEENTHERE)
score JR_HATES_BEENTHERE   8.0
||
2) Via a configuration file option, "chaos_mode", the module can be set to automatically score its rules.

chaos_mode AutoISP

It will still run along with existing files, cranking out higher scores for those rules marked with an asterisk.  That is still probably acceptable for most people.  But it can cause problems. The popular KAM ruleset scores SendGrid Emails with a high value. Mine is split into two different values that are scored differently.  While they are both lower than KAM's, combined, I see that as a potential problem.  I have no knowledge of what somebody's rules are at any given moment.  Caveat Emptor.  There I go again with the Latin :)

2A) What values do I set for these rules?  As a percentage of another configuration file option, "chaos_tag":

chaos_tag 7

Per the example above JR_X_BEENTHERE is a rule that is Auto-Scored. If you lower the chaos_tag value, the score for this rule would be reduced.  If I increase the chaos_tag value, the score produced by this rule is raised.

2B) The AutoISP mode, as is, should be fine for anybody running  a spam tag level of 8 to 12.

2C) The initial release of CHAOS.pm did all kinds of scoring.  One of the knocks I have about SpamAssassin is that is does not maintain counts of hits.  My complaints about this go all the way back to 2010.  Counts and Amounts.  SA is great with Amounts.  It sucks with Counts.  To the SA Development crew's credit, somewhere along the way, tflags were added to allow that functionality in a very primitive fashion.  Many people are happy with that.  I'm just not one of them.

I read somewhere, while looking at META rules that SA internally builds an array of the rules hit.  That way, as rules hit, METAs are then appropriately updated.  Gee, an array.  Maybe we could add a count to that array if the user wishes to?  I think that it is a lot of development; not so much the actual process of doing it, but updating all the User handling thereof.  Alas, It is what it is *SIGH*

2D) One thing about running AutoISP mode is that you can change a Rule's name in the configuration file and not matter what, you'll get the Rulename that's hard-coded into the program.  When a Eval plugin function is called, SA passes the rule name to the plugin. Most plugins just ignore it, and simply return a Hit/Miss value for the Rulename.  I ignore that completely.

2E) When I first released CHAOS, all it did was Automatic Scoring. And I used all kinds of fancy algorithms, even logarithmic, to demonstrate that.  That was pointless, as many pointed out at the time.  I don't do that stuff anymore.

2F) Still, as is, AutoISP will still work great for most people.

3) As the first release of CHAOS was about as successful as the Hindenburg, I added the concept of Manual scoring.  This works in the same fashion as most people are accustomed to.  This is set in the configuration file:

chaos_mode Manual

There are currently two exceptions in Manual mode.  I don't allow changing Rulenames for the mailer_check() and id_attachments() Eval functions.  The reason is that these Evals can produce a lot of Rule outputs.


OK, are you still with me?  If not, just implement Step 1) above.

Is this just a flippant remark? It's hard to tell amongst the rest of it. Taking it on face value... if someone does not understand what something is and/or what it does, the answer should NEVER be install it anyway and see what it does. Why/how do you think that is an appropriate recommendation?


4) Regarding overall development,  rules, rules, rules, and documentation, my priorities are this:

1) Bug fixes, first and foremost
2) New Stuff that's easy
3) New Stuff that's hard
4) Existing stuff that I'm committed to change
5) Standard rules distribution
6) CHAOS meta rules (using rules from #5 above)
7) Rework Documentation

5) Suggestions and comments are always welcome.  The "Hi {emailuserpart}" development was the result of a need expressed here on SA-Users.  When I first released CHAOS, I got a lot of criticism by many senior people on this list.  I deserved it and I expected it.  These are professionals that took the time to load the plugin to see what it is about.  I adapted, made changes and came out better and wiser.  My respect for these people increased 100 fold. That's how I roll.

But if you're going to sit on the sidelines and complain, I have bad news for you.  There's no shortage of stuff I can shove into /dev/null.

I haven't seen anyone complain.
I have seen several smart people genuinely ask you for a *brief* summary of what your module does.



$0.02,


My "$0.02" would be that you may have more success with people understanding this module, then using it, then contributing to it, sharing it and recommending it if you respect not just the "senior people" on this list, but also others who in good faith want to understand your module. It has obviously had a lot of work put into it - and (giving benefit of doubt) likely does something of use to the community... I for one am genuinely curious (albeit that curiosity is diminishing down the effort:benefit scale).

Simon


--
Simon Wilson
M: 0400 12 11 16

Reply via email to