Docs indicate that validators should backup `validator-keys.json`, and not edit the backup. This causes problems when validator operators generate new validation tokens using backups of the `validator-keys.json` file. Specifically:
1. Validator operator copies backup of `validator-keys.json` to from backup location to validator
2. Operator generates a new token on validator
3. Operator deletes `validator-keys.json` from the validator
If the validator operator does not then increment the "token_sequence" in the backed up `validator-keys.json`, the next time the operator repeats the above three steps, their validations will be ignored by the network, as the resultant token will have a sequence number that is <= the last observed number.
- Removes the redundant "English" locale since English is the default
language when no locale is specified
- Adds translation tags to domain verification checker tool (so that one
broken link from there can be fixed)
- Fixes several typos in Japanese docs
- Adds redirects & other config changes to make links work
- Adds the new api_version field and related info to 'Request
Formatting'.
- Restructures request formatting to use parameter tables.
- Removes some redundant sections from 'Get Started with the rippled
API' and links relevant references instead (this partially addresses
issue 584 but does not fix it)
- Fixes a typo in 'Admin Access' section and clarifies it
- Adds the new API version universal error and sorts the universal
errors alphabetically.
```$ node sendtest.js
<my_directory>\my_ripple_experiment\node_modules\ripple-lib\dist\npm\common\schema-validator.js:167
throw new errors_1.ValidationError(result.errors.join());
^
ValidationError: instance.txJSON is not of a type(s) string
at Object.schemaValidate (<my_directory>\my_ripple_experiment\node_modules\r
ipple-lib\dist\npm\common\schema-validator.js:167:15)
at apply (<my_directory>\my_ripple_experiment\node_modules\lodash\lodas
h.js:475:27)
at Object.wrapper [as sign] (<my_directory>\my_ripple_experiment\node_modules\
4mlodash\lodash.js:5317:16)
at RippleAPI.sign (<my_directory>\my_ripple_experiment\node_modules\ripple-l
ib\dist\npm\transaction\sign.js:136:18)
at Object.<anonymous> (<my_directory>\my_ripple_experiment\sendtest.js:28:22)
at Module._compile (internal/modules/cjs/loader.js:1151:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
at Module.load (internal/modules/cjs/loader.js:1000:32)
at Function.Module._load (internal/modules/cjs/loader.js:899:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) {
name: 'ValidationError',
data: undefined
}```
As stated in https://xrpl.org/rippleapi-reference.html#sign, ```sign(txJSON: string, secret: string, options: object)``` txJSON must be a string; however ```doPrepare()``` returns a json.