User:AllyUnion/Sandbot

This page's purpose is notes on the Sandbot's operation, design and implementation.

Draft notes
Input sources:
 * 1) From file(s)
 * 2) From Wiki page(s)
 * 3) From URL(s)

Primary functions:
 * 1) Wipe the page clean & replace with given text
 * 2) * In the case of the English Wikipedia, placing the text for the template
 * 3) * In the case of the French Wikipedia, subst: a template
 * 4) Assert the presence of certain text is included
 * 5) Have a timer feature for all given above.
 * 6) Be able to run remotely

Design problems
Sometimes on English Wikipedia, it is appropriate to subst a template. It appears from this listing that sometimes on French Wikipedia, it is appropriate to not subst a template. Surely you can have a default for whether or not to subst by implemented project, but making the subst optional on all implemented projects would give Sandbot more flexibility in complying with the goals of the template design community and their and your internal customers the template usage community. — Jeff G. (talk&#124;contribs) 08:24, 24 March 2008 (UTC)
 * 1) * In the case of the English Wikipedia, placing the text for the template

Implementation problems

 * Assert the presence of certain text is included

Originally, I asserted this strictly if the text was included. If not, it was to insert the text at the top of the page. Later, I realized that someone might have altered the text and I should detect the presence of similar text. Effectively, I will need to implement Fuzzy_string_searching with respect to UTF-8 characters.

Sandbot operations

 * 1) Read from input source(s) in specified order based on source list
 * 2) Compile its output based on source list
 * 3) Read options to determine what kind of action it should take
 * 4) Perform action on specified Sandbox page

The above should be repeated by every X hours, by passing options into the Sandbot script.