The wizard configured five of the product's 129 settings. A site that finished
it still had no timezone, no authentication, no mail server, no backup
destination and no endpoint agent policy, and nothing told the operator so.
Six steps now: Administrator, Site, Authentication, Features, Mail and Backups,
Review. Everything else moves to a standing setup checklist at
/settings/setupchecklist, because a wizard that asked for all 129 settings would
be worse than one that asked for none.
Two new endpoints back it. /setup/checklist reports twelve areas as
ok/partial/todo/na with a link to the page that fixes each, and /setup/health
reports account counts plus whether a plugin toggle has reached every worker.
Both take care not to lie:
- Several settings are SEEDED non-empty (the shipped logo, a placeholder floor
plan, every identifier field), so "is it set" compares against the shipped
default rather than emptiness.
- plugin.endpoints.sharedkeyallowed DEFAULTS TO ALLOWED when its row is absent,
so an absent row is reported as the fleet-wide key being accepted. Reporting
it as refused told an admin the opposite of the truth about the credential
they are migrating away from.
- A plugin is held at "starting" until several DISTINCT workers report it live.
Counting replies instead let one recycled worker answer four times and declare
a change complete while other workers still served the old routes.
Recommended plugins are declared in each plugin's manifest rather than listed in
the wizard, so adding a plugin cannot leave a stale list in another file.
Also fixed: the logo preview was invisible, because the image borrowed a class
that hardcodes a white background while the shipped logo is white; and signing
in did not re-read setup state, so an admin already browsing was never steered
to the wizard and a hard refresh was the only cure.
(cherry picked from commit 32d3f4b29d)
24 lines
576 B
JSON
24 lines
576 B
JSON
{
|
|
"name": "machines",
|
|
"version": "1.0.0",
|
|
"description": "Machine management plugin for CNCs, CMMs, lathes, grinders, and other manufacturing machines",
|
|
"recommended": true,
|
|
"author": "ShopDB Team",
|
|
"dependencies": [],
|
|
"core_version": ">=0.20.0,<1.0.0",
|
|
"api_prefix": "/api/machines",
|
|
"provides": {
|
|
"asset_type": "machine",
|
|
"features": [
|
|
"machine_tracking",
|
|
"maintenance_scheduling",
|
|
"vendor_management",
|
|
"model_catalog"
|
|
]
|
|
},
|
|
"settings": {
|
|
"enable_maintenance_alerts": true,
|
|
"maintenance_alert_days": 30
|
|
}
|
|
}
|