@bongos/core 1.20.76 → 1.20.78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/.bongos-core.json +93 -63
  2. package/clients/bongos-client/README.md +1 -1
  3. package/clients/bongos-client/bongos-client.global.js +2 -0
  4. package/clients/bongos-client/index.cjs +2 -0
  5. package/clients/bongos-client/index.d.ts +3 -0
  6. package/clients/bongos-client/index.mjs +2 -0
  7. package/docs/adr/0136-update-channel-subscription-policy.md +1 -1
  8. package/docs/adr/0360-bongos-follows-every-candidate-every-other-project-follows-releases.md +66 -0
  9. package/docs/adr/README.md +1 -0
  10. package/docs/api/openapi.json +70 -3
  11. package/docs/api-reference.md +3 -2
  12. package/docs/copy-inventory.md +531 -458
  13. package/docs/copy-registry.json +1269 -589
  14. package/docs/module-api-changelog.md +4 -0
  15. package/docs/page-inventory.json +11 -1
  16. package/docs/page-readings.json +1208 -1082
  17. package/docs/recipes/upgrading-the-core.md +11 -2
  18. package/modules/copy-desk/artist-stats.js +15 -1
  19. package/modules/copy-desk/module.json +1 -1
  20. package/modules/copy-desk/page-status.js +41 -0
  21. package/modules/copy-desk/routes/copy-desk-artist.js +44 -0
  22. package/modules/copy-desk/tests/copy_no_cms.mjs +11 -2
  23. package/modules/hall-ui/public/deploy.states.json +1 -1
  24. package/modules/hall-ui/public/profile-crafts.js +231 -0
  25. package/modules/hall-ui/public/profile.css +60 -0
  26. package/modules/hall-ui/public/profile.html +31 -12
  27. package/modules/hall-ui/public/profile.js +180 -75
  28. package/modules/hall-ui/public/profile.states.json +34 -0
  29. package/modules/hall-ui/public/sky-draw.js +66 -39
  30. package/modules/hall-ui/public/sky-interaction.js +1 -1
  31. package/modules/hall-ui/public/sky-panel.js +1 -1
  32. package/modules/hall-ui/public/thinking.css +52 -24
  33. package/modules/hall-ui/records/profile-roles.md +18 -0
  34. package/modules/npm-release/public/work.js +72 -0
  35. package/modules/npm-release/work.js +67 -1
  36. package/modules/provisioning/planet-physics.js +8 -0
  37. package/modules/provisioning/soft-limits.js +9 -0
  38. package/modules/public-landing/public/projects.html +579 -37
  39. package/modules/public-landing/public/projects.probes.json +6 -3
  40. package/modules/public-landing/public/projects.states.json +20 -14
  41. package/modules/ui-design/kit/serve.js +26 -3
  42. package/package-lock.json +2 -2
  43. package/package.json +1 -1
  44. package/release-notes.json +24 -0
  45. package/scripts/gds/update-channel.js +68 -1
  46. package/scripts/gds/update-sweep.js +100 -4
  47. package/scripts/migrate.sh +6 -2
  48. package/src/module-api.js +1 -1
  49. package/tests/hall_sky.mjs +77 -0
  50. package/tests/helpers.mjs +32 -7
  51. package/tests/migrate_applied_check.mjs +94 -0
  52. package/tests/npm_release_page.mjs +67 -0
  53. package/tests/npm_release_work.mjs +82 -0
  54. package/tests/profile_activity.mjs +23 -15
  55. package/tests/profile_role_headline.mjs +4 -4
  56. package/tests/profile_role_tabs.mjs +163 -0
  57. package/tests/projects_hub_app_step.mjs +4 -1
  58. package/tests/provisioning_planet_physics.mjs +24 -2
  59. package/tests/update_channel.mjs +80 -1
  60. package/tests/update_subscription_engine.mjs +99 -0
  61. package/tests/wizard_physics.mjs +11 -4
  62. package/tests/wizard_physics_more.mjs +470 -0
@@ -159,11 +159,14 @@
159
159
  "steps": [["wait",900],["click","[data-disc-ask]"],["wait",200],["fill","#mDiscName","old-lantern"],["wait",100],["click","[data-disc-yes]"],["wait",900]],
160
160
  "expect": {"text":[["#mDisc .addr","This project is being disconnected."],["#mName","old-lantern"]],"hidden":["#mDiscName","[data-disc-ask]"]} },
161
161
  { "name": "the wizard driver (task 1003346): name, type, about, home (fresh; the stub grants repo access, so the new repository is named from the project), address (the handle's verdict), the review as a ledger, then the filing — the done panel with the standup rail and the human steps", "auth": true, "width": 1440, "url": "/projects?view=new",
162
- "steps": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400],["click","#doCreate"],["wait",1500]],
162
+ "steps": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400],["click","#doCreate"],["wait",1500]],
163
163
  "expect": {"visible":["#panel-done","#liveProgress .prog","#liveProgress .prog .stages li.now","#humanSteps li"],"hidden":["#panel-review","#panel-name"],"text":[["#done-h","The drums are rolling"]],"attr":[["#panel-done","class","panel on"]]} },
164
164
  { "name": "the front door (task 1004417): Proceed is refused until the terms are ticked, the fork's demo door opens the demo's setup and Back returns to the doors, and Begin planet creation goes on, through the four planet-physics questions, to the name step with the rail back", "auth": true, "width": 1440, "url": "/projects?view=new",
165
- "steps": [["wait",600],["click","#panel-terms button[type=submit]"],["wait",300],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#wizDemo"],["wait",200],["click","#demoBack1"],["wait",200],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400]],
165
+ "steps": [["wait",600],["click","#panel-terms button[type=submit]"],["wait",300],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#wizDemo"],["wait",200],["click","#demoBack1"],["wait",200],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400]],
166
166
  "expect": {"visible":["#panel-name","#view-new .steps","#view-new .steps li.now"],"hidden":["#panel-fork","#panel-terms"],"attr":[["#wizDemo","aria-expanded","false"],["#view-new .steps li.now","data-step","4"]]} },
167
+ { "name": "planet physics, questions 5 to 7 (task 1004419): many builders with a guess that follows the start, two rewards as two rings, a hybrid framing opening its suite and the orbit, then the summary, whose change link goes back to builders and whose Continue returns to it", "auth": true, "width": 1440, "url": "/projects?view=new",
168
+ "steps": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"many\"]"],["click","[data-phys-count=\"1\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"reward_intents\"][data-val=\"non-monetary\"]"],["click","[data-phys=\"reward_intents\"][data-val=\"future-payouts\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"hybrid\"]"],["wait",500],["click","#physNext"],["wait",500],["click","[data-phys-goto=\"5\"]"],["wait",300],["click","[data-phys-count=\"1\"]"],["wait",100],["click","#physNext"],["wait",500]],
169
+ "expect": {"visible":["#panel-physics .physQ[data-q=\"sum\"]","#physMoons","#physStage .physBelt[data-ring=\"2\"]","#physSun"],"hidden":["#panel-name","#physSuite"],"text":[["#physNext","Create my planet →"]],"attr":[["#physStage","data-orbit","mid"]]} },
167
170
  { "name": "planet physics (task 1004418): an existing planet asks what exists and which is main, a country with states asks for one, young builders put the protective ring on the planet and show the age tiers, and an entity gives the planet its core", "auth": true, "width": 1440, "url": "/projects?view=new",
168
171
  "steps": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"existing\"]"],["click","#physExisting [data-work=\"code\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["wait",100],["select","#physRegion","US-CA"],["click","[data-phys=\"builder_geography\"][data-val=\"us-eu\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"true\"]"],["wait",100],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"for-profit\"]"],["wait",200]],
169
172
  "expect": {"visible":["#panel-physics .physQ[data-q=\"4\"]","#physForms","#physGuard","#physPlanet"],"hidden":["#physIntent","#panel-name"],"attr":[["#physPlanet","src","/assets/world/r3-gold-blob-cut.webp"],["[data-phys=\"entity\"][data-val=\"for-profit\"]","aria-pressed","true"]],"text":[["#physCoords","state existing · home us-ca · builders us + eu · ages 13+ · core organization"]]} },
@@ -171,7 +174,7 @@
171
174
  "steps": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400]],
172
175
  "expect": {"visible":["#panel-fork",".doorPill","#wizDemo","#panel-fork button[type=submit]"],"hidden":["#view-new .steps"]} },
173
176
  { "name": "the wizard driver at 390: the rail folds to two rows of three and the walk still reaches the review", "auth": true, "width": 390, "url": "/projects?view=new",
174
- "steps": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400]],
177
+ "steps": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400]],
175
178
  "expect": {"visible":["#panel-review","#reviewList li","#doCreate"],"hidden":["#panel-address"],"text":[["#rev-h","Ready to roll"]]} }
176
179
  ]
177
180
  }
@@ -46,21 +46,27 @@
46
46
  "in-new-physics-geo": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["wait",100],["select","#physRegion","US-CA"],["click","[data-phys=\"builder_geography\"][data-val=\"us-eu\"]"],["wait",200]], "expect": {"visible":["#physCountry","#physRegionField"]} },
47
47
  "in-new-physics-ages": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["wait",100],["select","#physRegion","US-CA"],["click","[data-phys=\"builder_geography\"][data-val=\"us-eu\"]"],["wait",200],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"true\"]"],["wait",200]], "expect": {"visible":["#physAges","#physGuard"]} },
48
48
  "in-new-physics-entity": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["wait",100],["select","#physRegion","US-CA"],["click","[data-phys=\"builder_geography\"][data-val=\"us-eu\"]"],["wait",200],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"true\"]"],["wait",200],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["wait",200]], "expect": {"visible":["#physIntent","#physHaveEntity"],"hidden":["#physForms"]} },
49
- "in-new-name": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400]], "expect": {"visible":["#panel-name","#newName","#view-new .steps"],"hidden":["#panel-fork","#panel-terms"]} },
49
+ "in-new-physics-builders": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"many\"]"],["click","[data-phys-count=\"1\"]"],["wait",300]],"expect":{"visible":["#panel-physics .physQ[data-q=\"5\"]","#physTeam","#physExpected","#physMoons","#physGhosts"],"hidden":["#panel-name"],"text":[["#physStartN","3"],["#physM3","8"]],"attr":[["[data-phys-solo=\"many\"]","aria-pressed","true"]]}},
50
+ "in-new-physics-rewards": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"many\"]"],["click","[data-phys-count=\"1\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"reward_intents\"][data-val=\"non-monetary\"]"],["click","[data-phys=\"reward_intents\"][data-val=\"future-payouts\"]"],["wait",300]],"expect":{"visible":["#panel-physics .physQ[data-q=\"6\"]","#physStage .physBelt[data-ring=\"2\"]"],"hidden":["#physStage .physBelt[data-ring=\"3\"]","#panel-name"],"attr":[["[data-phys=\"reward_intents\"][data-val=\"future-payouts\"]","aria-pressed","true"]]}},
51
+ "in-new-physics-framing": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"many\"]"],["click","[data-phys-count=\"1\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"reward_intents\"][data-val=\"non-monetary\"]"],["click","[data-phys=\"reward_intents\"][data-val=\"future-payouts\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"hybrid\"]"],["wait",500]],"expect":{"visible":["#panel-physics .physQ[data-q=\"7\"]","#physSuite","#physSun","#physTether"],"hidden":["#panel-name"],"attr":[["#physStage","data-orbit","mid"],["[data-phys=\"services\"][data-val=\"hosting\"]","aria-pressed","true"]]}},
52
+ "in-new-physics-summary": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"many\"]"],["click","[data-phys-count=\"1\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"reward_intents\"][data-val=\"non-monetary\"]"],["click","[data-phys=\"reward_intents\"][data-val=\"future-payouts\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"hybrid\"]"],["wait",500],["click","#physNext"],["wait",500]],"expect":{"visible":["#panel-physics .physQ[data-q=\"sum\"]","#physSummary dt","[data-phys-goto=\"7\"]","#phys-hsum [data-voice=\"planet\"]"],"hidden":["#phys-hsum [data-voice=\"pro\"]","#panel-name"],"text":[["#physNext","Create my planet →"]]}},
53
+ "in-new-physics-summary-pro": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","#physHaveEntity"],["wait",100],["click","[data-phys=\"entity\"][data-val=\"for-profit\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"many\"]"],["click","[data-phys-count=\"1\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"reward_intents\"][data-val=\"equity\"]"],["wait",200],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"open-source\"]"],["wait",500],["click","#physNext"],["wait",500]],"expect":{"visible":["#panel-physics .physQ[data-q=\"sum\"]","#phys-hsum [data-voice=\"pro\"]","[data-phys-goto=\"6\"]"],"hidden":["#phys-hsum [data-voice=\"planet\"]","#physSun"],"text":[["#physNext","Continue to setup →"]],"attr":[["#physStage","data-orbit","own"]]}},
54
+ "in-new-name-prefilled": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","#physHaveEntity"],["wait",100],["click","[data-phys=\"entity\"][data-val=\"for-profit\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"many\"]"],["click","[data-phys-count=\"1\"]"],["wait",300],["click","#physNext"],["wait",500],["click","[data-phys=\"reward_intents\"][data-val=\"equity\"]"],["wait",200],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"open-source\"]"],["wait",500],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400]],"expect":{"visible":["#panel-name","#view-new .steps li.skipped"],"hidden":["#panel-physics"],"attr":[["#view-new .steps li.skipped","data-step","10"]]}},
55
+ "in-new-name": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400]], "expect": {"visible":["#panel-name","#newName","#view-new .steps"],"hidden":["#panel-fork","#panel-terms"]} },
50
56
  "out-new": { "auth": false, "url": "/projects?view=new", "expect": { "hidden": ["#qWrap"] } },
51
- "in-new-type": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-type"],"hidden":["#panel-name","#qWrap"]} },
52
- "in-new-about": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-detail"],"hidden":["#panel-type","#qWrap"]} },
53
- "in-new-modules": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900]], "expect": {"visible":["#panel-modules","#modQ","#modCards .tpill[aria-pressed=\"true\"]","#modCoreNote"],"hidden":["#panel-detail","#qWrap"]} },
54
- "in-new-modules-search": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["fill","#modQ","discord"],["wait",200]], "expect": {"visible":["#panel-modules","#modQ"],"value":[["#modQ","discord"]],"count":[["#modCards .tpill",1],["#modCards .tpill[data-mod=\"discord\"]",1]],"text":[["#modFilterNote","Showing 1 of 3. 2 extras are switched on, including any this search is hiding."]]} },
55
- "in-new-home": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-home"],"hidden":["#panel-detail","#qWrap"]} },
56
- "in-new-address": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-address"],"hidden":["#panel-home","#qWrap"]} },
57
- "in-new-app": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-app","#appOpts","#appOptRender"],"hidden":["#panel-address","#panel-review","#qWrap"]} },
58
- "in-new-app-render": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#appOptRender input"],["wait",300]], "expect": {"visible":["#panel-app","#renderSetup","#f-renderKey","#renderCheck"],"hidden":["#renderWs","#renderSvc","#renderNew"]} },
59
- "in-new-look": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400]],"expect":{"visible":["#panel-look","#wizLook","#wizLook-chrome-world","#wizTint","#wizLogo",".lookPrev .mh.light",".lookPrev .mh.dark"],"hidden":["#panel-app","#panel-review"]}},
60
- "in-new-look-custom": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#wizLook-custom"],["wait",200]],"expect":{"visible":["#panel-look","#wizAccent","#wizAccentNote"],"hidden":["#panel-review"]}},
61
- "in-new-review": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-review","#reviewList li"],"hidden":["#panel-address","#qWrap"]} },
62
- "in-new-done": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400],["click","#doCreate"],["wait",1500]], "expect": {"visible":["#panel-done","#liveProgress .prog","#humanSteps li"],"hidden":["#panel-review","#qWrap"]} },
63
- "in-new-resume-offer": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400],["click","#doCreate"],["wait",1500],["click","#projTrig"],["wait",350],["click","#menuProjects [data-nav=\"new\"]"],["wait",500]], "expect": {"visible":["#panel-terms","#wizResume","#wizResumeGo"],"hidden":["#panel-done","#panel-name"],"text":[["#wizResumeName","Mercury"]]} },
57
+ "in-new-type": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-type"],"hidden":["#panel-name","#qWrap"]} },
58
+ "in-new-about": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-detail"],"hidden":["#panel-type","#qWrap"]} },
59
+ "in-new-modules": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900]], "expect": {"visible":["#panel-modules","#modQ","#modCards .tpill[aria-pressed=\"true\"]","#modCoreNote"],"hidden":["#panel-detail","#qWrap"]} },
60
+ "in-new-modules-search": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["fill","#modQ","discord"],["wait",200]], "expect": {"visible":["#panel-modules","#modQ"],"value":[["#modQ","discord"]],"count":[["#modCards .tpill",1],["#modCards .tpill[data-mod=\"discord\"]",1]],"text":[["#modFilterNote","Showing 1 of 3. 2 extras are switched on, including any this search is hiding."]]} },
61
+ "in-new-home": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-home"],"hidden":["#panel-detail","#qWrap"]} },
62
+ "in-new-address": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-address"],"hidden":["#panel-home","#qWrap"]} },
63
+ "in-new-app": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-app","#appOpts","#appOptRender"],"hidden":["#panel-address","#panel-review","#qWrap"]} },
64
+ "in-new-app-render": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#appOptRender input"],["wait",300]], "expect": {"visible":["#panel-app","#renderSetup","#f-renderKey","#renderCheck"],"hidden":["#renderWs","#renderSvc","#renderNew"]} },
65
+ "in-new-look": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400]],"expect":{"visible":["#panel-look","#wizLook","#wizLook-chrome-world","#wizTint","#wizLogo",".lookPrev .mh.light",".lookPrev .mh.dark"],"hidden":["#panel-app","#panel-review"]}},
66
+ "in-new-look-custom": {"auth":true,"url":"/projects?view=new","actions":[["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#wizLook-custom"],["wait",200]],"expect":{"visible":["#panel-look","#wizAccent","#wizAccentNote"],"hidden":["#panel-review"]}},
67
+ "in-new-review": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400]], "expect": {"visible":["#panel-review","#reviewList li"],"hidden":["#panel-address","#qWrap"]} },
68
+ "in-new-done": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400],["click","#doCreate"],["wait",1500]], "expect": {"visible":["#panel-done","#liveProgress .prog","#humanSteps li"],"hidden":["#panel-review","#qWrap"]} },
69
+ "in-new-resume-offer": { "auth": true, "url": "/projects?view=new", "actions": [["wait",600],["click","#termsAck"],["click","#panel-terms button[type=submit]"],["wait",400],["click","#panel-fork button[type=submit]"],["wait",400],["click","#physNext"],["wait",200],["click","[data-phys=\"project_state\"][data-val=\"new\"]"],["click","#physNext"],["wait",500],["select","#physCountry","US"],["click","[data-phys=\"builder_geography\"][data-val=\"global\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"minors_on_board\"][data-val=\"false\"]"],["click","#physNext"],["wait",200],["click","[data-phys=\"entity\"][data-val=\"intent-solo\"]"],["click","#physNext"],["wait",400],["click","[data-phys-solo=\"one\"]"],["click","#physNext"],["wait",500],["click","[data-phys=\"framing\"][data-val=\"managed\"]"],["wait",400],["click","#physNext"],["wait",500],["click","#physNext"],["wait",400],["fill","#newName","Mercury"],["click","#panel-name button[type=submit]"],["wait",400],["click","#typeCards .tpill[data-type=\"game\"]"],["click","#panel-type button[type=submit]"],["wait",400],["fill","#f-desc","A co-op farming game where the seasons never repeat."],["click","#teamCards .tpill[data-team=\"small-team\"]"],["click","#panel-detail button[type=submit]"],["wait",900],["click","#panel-modules button[type=submit]"],["wait",400],["click","#panel-home button[type=submit]"],["wait",400],["fill","#f-slug","mercury"],["wait",900],["fill","#f-domain","mercury.example.com"],["wait",200],["click","#panel-address button[type=submit]"],["wait",400],["click","#panel-app button[type=submit]"],["wait",400],["click","#panel-look button[type=submit]"],["wait",400],["click","#doCreate"],["wait",1500],["click","#projTrig"],["wait",350],["click","#menuProjects [data-nav=\"new\"]"],["wait",500]], "expect": {"visible":["#panel-terms","#wizResume","#wizResumeGo"],"hidden":["#panel-done","#panel-name"],"text":[["#wizResumeName","Mercury"]]} },
64
70
  "out-map-projects": { "auth": false, "actions": [["click", "#projTrig"], ["wait", 350]], "expect": { "expanded": true, "hidden": ["#menuProjects [data-nav=\"mine\"]"] } },
65
71
  "card": { "auth": true, "actions": [["dispatchClick", "#orbField a.worldOrb[data-origin=\"https://example.com\"]"], ["wait", 900]], "expect": { "dialog": true, "hasClass": [["#projCard", "has-art"]], "visible": ["#cardArt", "#cardFaces", "#cardBuildersFig", "#cardShippedFig", "#cardOpen", "#cardHall"], "text": [["#cardBuilders", "11"], ["#cardShipped", "0"], ["#cardRel", "you build here"], ["#cardRuns", "example.com"], ["#cardFaces .facesMore", "+6"]], "count": [["#cardFaces img", 5]], "href": [["#cardHall", "https://builders.example.com/"]] } },
66
72
  "card-noart": { "auth": true, "actions": [["dispatchClick", "#orbField a.worldOrb[data-origin=\"https://emersonian-circles.cloudbongos.com\"]"], ["wait", 600]], "expect": { "dialog": true, "hasClass": [["#projCard", "has-art", false]], "hidden": ["#cardArt", "#cardFaces", "#cardHall"], "visible": ["#cardBuildersFig", "#cardShippedFig", "#cardOpen"], "text": [["#cardShipped", "30+"], ["#cardRel", "you build here"]] } },
@@ -183,6 +183,17 @@ const ASKED = new Map();
183
183
  const PLANETS = new Map();
184
184
  const PLANET_KEYS = ['planet_template', 'planet_accent', 'card_backdrop'];
185
185
  const NO_PLANET = { planet_template: null, planet_accent: null, card_backdrop: null };
186
+ // The physics check's hide rules a walk depends on (task 1004419), copied from
187
+ // modules/provisioning/soft-limits.js (a kit module may not import a sibling).
188
+ // `when` here is "every key's value is one of these" — the shape of those rules.
189
+ const STUB_PHYSICS_HIDES = [
190
+ { id: 'rewards-need-other-builders', when: { builders_at_start: [1], builders_expected: [1] }, option: 'reward_intents',
191
+ reason: "You're building solo, so there is nobody to reward yet. Expect builders to join and the question comes back." },
192
+ { id: 'managed-includes-every-service', when: { framing: ['managed'] }, option: 'services',
193
+ reason: 'All managed includes the whole suite, so there is nothing to pick.' },
194
+ { id: 'open-source-is-the-free-core', when: { framing: ['open-source'] }, option: 'services',
195
+ reason: 'Open source, local is the free core on its own. You can add services later.' },
196
+ ];
186
197
  function readBody(req, cb) {
187
198
  let d = '';
188
199
  req.on('data', (c) => { d += c; });
@@ -443,10 +454,22 @@ const server = http.createServer((req, res) => {
443
454
  if (rest === '/me/profile' && req.method === 'PATCH') return AUTH ? readBody(req, (body) => profilePatch(res, body)) : json(res, 401, UNAUTH);
444
455
  if (rest === '/me/handle' && req.method === 'PATCH') return AUTH ? readBody(req, (body) => handlePatch(res, body)) : json(res, 401, UNAUTH);
445
456
  if (rest === '/provisioning/instances' && req.method === 'GET') return AUTH ? instances(res, null, false) : json(res, 401, UNAUTH);
446
- // the planet-physics questions' pre-create check (task 1004418): nothing stops and no
447
- // option is limited here — the kit carries neither the server's screen nor its table
457
+ // the planet-physics questions' pre-create check (task 1004418): nothing stops here —
458
+ // the kit carries no screen. Of the soft-limit table it mirrors only the three hide
459
+ // rules that change which screens a walk sees (task 1004419); their reasons are
460
+ // copies of modules/provisioning/soft-limits.js, held equal by tests/wizard_physics_more.mjs
448
461
  if (rest === '/provisioning/physics-check' && req.method === 'POST') {
449
- return AUTH ? json(res, 200, { stop: false, message: null, soft_limits: { enforced: false, limits: [] } }) : json(res, 401, UNAUTH);
462
+ if (!AUTH) return json(res, 401, UNAUTH);
463
+ return readBody(req, (body) => {
464
+ const d = (body && body.detail) || {};
465
+ const limits = [];
466
+ for (const rule of STUB_PHYSICS_HIDES) {
467
+ if (Object.entries(rule.when).every(([k, vals]) => vals.includes(d[k]))) {
468
+ limits.push({ option: rule.option, effect: 'hide', reason: rule.reason, rule: rule.id });
469
+ }
470
+ }
471
+ json(res, 200, { stop: false, message: null, soft_limits: { enforced: false, limits } });
472
+ });
450
473
  }
451
474
  // where a project's app runs (task 1004353): the status read, from a fixture keyed by
452
475
  // project id — a project the fixture does not name has no platform chosen
package/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@bongos/core",
3
- "version": "1.20.76",
3
+ "version": "1.20.78",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@bongos/core",
9
- "version": "1.20.76",
9
+ "version": "1.20.78",
10
10
  "license": "AGPL-3.0-or-later",
11
11
  "dependencies": {
12
12
  "express": "^4.21.2",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bongos/core",
3
- "version": "1.20.76",
3
+ "version": "1.20.78",
4
4
  "description": "Cloud Bongos — the AI-first build platform core (GDS + platform surfaces + module system), installed as a versioned dependency (ADR 0108).",
5
5
  "license": "AGPL-3.0-or-later",
6
6
  "main": "src/platform-server.js",
@@ -8585,5 +8585,29 @@
8585
8585
  "id": "1004434",
8586
8586
  "text": "A profile now leads with the person's own work. An artist's page opens on pages approved, this week's gain and how many pages of each part of the site they have tweaked; an ideator's on thoughts filed, how many became work, Fu"
8587
8587
  }
8588
+ ],
8589
+ "1.20.77": [
8590
+ {
8591
+ "id": "1004419",
8592
+ "text": "New founders now answer the last three planet questions: how many people will build (with a growth guess they can adjust), how builders might be rewarded (skipped for someone building alone), and how much the platform should r"
8593
+ }
8594
+ ],
8595
+ "1.20.78": [
8596
+ {
8597
+ "id": "1004500",
8598
+ "text": "Your thinking and the project sky now have a light mode. When the hall is set to light, the sky turns to paper with ink-drawn rings and thoughts and light panels; switch to dark and the black night sky comes back exactly as be"
8599
+ },
8600
+ {
8601
+ "id": "1004435",
8602
+ "text": "A profile's Activity section now has one tab for each role the person has, each with a count. The engineer tab lists their finished work and the goals they created. The ideator tab draws their ideas as the sky trail, with a li"
8603
+ },
8604
+ {
8605
+ "id": "1004488",
8606
+ "text": "The script that updates the database on every deploy could randomly re-run a handful of updates it had already made. Most were harmless repeats, but one could change live data or fail a deploy. It now checks reliably, proven o"
8607
+ },
8608
+ {
8609
+ "id": "1004297",
8610
+ "text": "Each project can now be set to take every new version (Bongos) or only released ones (everyone else), a version that fails is no longer retried in a loop, and the deploy page shows each upgrade, any rollback, and when the auto"
8611
+ }
8588
8612
  ]
8589
8613
  }
@@ -17,6 +17,16 @@
17
17
  // A MAJOR bump is NEVER automatic under any channel — a major is a breaking change that wants a human.
18
18
  // Prereleases (1.17.2-rc.1) are never auto-target either — only stable releases.
19
19
  //
20
+ // A second, independent axis says WHICH published versions an instance may take at all (task 1004297,
21
+ // ADR 0360) — its FOLLOW:
22
+ // released — only versions at or below the one the registry labels `latest`, i.e. what the owner
23
+ // has released to other projects. DEFAULT, for every project.
24
+ // candidates — every published version, the moment it is published. The platform's own hall, and
25
+ // only it: Bongos runs each version before anyone else is offered it.
26
+ // The channel bounds how FAR a jump may go; the follow bounds which versions exist to jump to. Until
27
+ // candidates publish under their own label (task 1004298), `latest` is the newest version and the two
28
+ // follows pick the same target — the axis exists first so that the split changes nothing for Bongos.
29
+ //
20
30
  // WHY the registry as the source (not vendored tarballs): a subscription needs a LIVE source of
21
31
  // truth for "what's the newest published core?" — that's `npm view @bongos/core versions` against the
22
32
  // private registry (ADR 0134, task 2090). The vendored path is for a one-off manual bump.
@@ -28,6 +38,10 @@ const { spawnSync } = require('node:child_process');
28
38
  const CORE_PKG = '@bongos/core';
29
39
  const VALID_CHANNELS = ['pinned', 'patch', 'minor'];
30
40
  const DEFAULT_CHANNEL = 'patch';
41
+ const VALID_FOLLOWS = ['released', 'candidates'];
42
+ // Unknown or absent reads as `released`: the follow that takes FEWER versions is the safe default,
43
+ // the way an unknown channel reads as `patch` rather than `minor`.
44
+ const DEFAULT_FOLLOW = 'released';
31
45
  const NPM_VIEW_TIMEOUT_MS = 30000;
32
46
  // The subscription manifest an operator edits to opt instances in. Ships EMPTY (instances: []) in the
33
47
  // core template — a fresh instance subscribes nothing until the operator lists a target here.
@@ -109,6 +123,22 @@ function normalizeChannel(channel) {
109
123
  return VALID_CHANNELS.includes(c) ? c : DEFAULT_CHANNEL;
110
124
  }
111
125
 
126
+ function normalizeFollow(follow) {
127
+ const f = String(follow == null ? '' : follow).trim().toLowerCase();
128
+ return VALID_FOLLOWS.includes(f) ? f : DEFAULT_FOLLOW;
129
+ }
130
+
131
+ // The published versions an instance's FOLLOW admits (task 1004297). PURE. `candidates` admits every
132
+ // one; `released` admits those at or below `released` — the version the registry labels `latest` —
133
+ // and NOTHING when that label is unknown: an instance that follows releases must never take a version
134
+ // because nobody could say whether it was released. Feed the result to resolveChannelTarget.
135
+ function versionsForFollow({ follow, available, released } = {}) {
136
+ const list = Array.isArray(available) ? available.filter((v) => typeof v === 'string') : [];
137
+ if (normalizeFollow(follow) === 'candidates') return list;
138
+ if (!parseSemver(released)) return [];
139
+ return list.filter((v) => compareSemver(v, released) <= 0);
140
+ }
141
+
112
142
  // Would `channel` permit an unattended jump from `installed` to `candidate`? True only when candidate
113
143
  // is a STABLE release strictly newer than installed AND within the channel's blast radius. Any invalid
114
144
  // input, an unknown installed version, a prerelease candidate, or a major bump ⇒ false (fail-closed).
@@ -174,6 +204,34 @@ function parseNpmViewVersions(stdout) {
174
204
  return { ok: false, error: 'unexpected npm view shape', versions: [] };
175
205
  }
176
206
 
207
+ // Which version is RELEASED — the one the registry labels `latest` (task 1004297) — via
208
+ // `npm view … dist-tags --json`. A separate read from listAvailableVersions on purpose: that one's
209
+ // output shape is relied on by the deploy door and `bongos upgrade`, and it stays exactly as it is.
210
+ // Fail-SOFT like its sibling: { ok:false, error } on any failure, never a throw. `released` is null
211
+ // unless the label names a stable version.
212
+ function readReleaseTags({ cwd = process.cwd(), pkg = CORE_PKG, run = spawnSync, env = process.env, timeoutMs = NPM_VIEW_TIMEOUT_MS } = {}) {
213
+ let res;
214
+ try {
215
+ res = run('npm', ['view', pkg, 'dist-tags', '--json'], { cwd, env, encoding: 'utf8', timeout: timeoutMs });
216
+ } catch (e) {
217
+ return { ok: false, error: e && e.message ? e.message : String(e), released: null, tags: {} };
218
+ }
219
+ if (!res || res.status !== 0) {
220
+ const reason = (res && (res.stderr || res.error && res.error.message)) || `exit ${res && res.status}`;
221
+ return { ok: false, error: String(reason).trim().split('\n')[0] || 'npm view failed', released: null, tags: {} };
222
+ }
223
+ let tags;
224
+ try { tags = JSON.parse(String(res.stdout || '').trim() || '{}'); } catch (e) {
225
+ return { ok: false, error: `unparseable npm output: ${e.message}`, released: null, tags: {} };
226
+ }
227
+ if (!tags || typeof tags !== 'object' || Array.isArray(tags)) return { ok: false, error: 'unexpected npm view shape', released: null, tags: {} };
228
+ const latest = typeof tags.latest === 'string' ? tags.latest : null;
229
+ const released = latest && isStable(latest) ? latest : null;
230
+ return released
231
+ ? { ok: true, released, tags }
232
+ : { ok: false, error: 'the registry names no released (latest) version', released: null, tags };
233
+ }
234
+
177
235
  // ---- subscription manifest --------------------------------------------------
178
236
 
179
237
  // Read + normalize config/update-subscriptions.json — the operator-edited opt-in list of instances
@@ -191,6 +249,7 @@ function loadSubscriptions({ instanceDir = process.cwd(), fsImpl = fs, file = SU
191
249
  let json;
192
250
  try { json = JSON.parse(raw); } catch (e) { return { defaultChannel: DEFAULT_CHANNEL, instances: [], source: abs, present: true, dropped: 0, error: `malformed JSON: ${e.message}`, reason: ROSTER_MALFORMED }; }
193
251
  const defaultChannel = normalizeChannel(json.defaultChannel);
252
+ const defaultFollow = normalizeFollow(json.defaultFollow);
194
253
  const rows = Array.isArray(json.instances) ? json.instances : [];
195
254
  // An entry without a dir can't be upgraded — drop it, but COUNT the drops. Silently discarding an
196
255
  // operator's malformed row is how an instance believes it is enrolled while nothing ever touches it.
@@ -203,6 +262,9 @@ function loadSubscriptions({ instanceDir = process.cwd(), fsImpl = fs, file = SU
203
262
  service: r.service ? String(r.service) : null,
204
263
  healthUrl: r.healthUrl ? String(r.healthUrl) : null,
205
264
  channel: normalizeChannel(r.channel == null ? defaultChannel : r.channel),
265
+ // Which versions this instance takes at all (task 1004297): `released` unless the operator
266
+ // says `candidates` — which only the platform's own hall should.
267
+ follow: normalizeFollow(r.follow == null ? defaultFollow : r.follow),
206
268
  // Deploy topology (task 1003219). Optional, and only meaningful together: with
207
269
  // versionUrl + deployTimer present the sweep can hand the bump to go-live.js and
208
270
  // inherit its backup, pull-deploy-timer guard and INDEPENDENT box-side version
@@ -223,7 +285,7 @@ function loadSubscriptions({ instanceDir = process.cwd(), fsImpl = fs, file = SU
223
285
  : {},
224
286
  }));
225
287
  return {
226
- defaultChannel, instances, source: abs, present: true, dropped,
288
+ defaultChannel, defaultFollow, instances, source: abs, present: true, dropped,
227
289
  reason: instances.length ? ROSTER_OK : ROSTER_EMPTY,
228
290
  };
229
291
  }
@@ -396,6 +458,11 @@ module.exports = {
396
458
  CORE_PKG,
397
459
  VALID_CHANNELS,
398
460
  DEFAULT_CHANNEL,
461
+ VALID_FOLLOWS,
462
+ DEFAULT_FOLLOW,
463
+ normalizeFollow,
464
+ versionsForFollow,
465
+ readReleaseTags,
399
466
  SUBSCRIPTIONS_REL,
400
467
  parseSemver,
401
468
  isStable,