@bongos/core 1.24.5 → 1.24.6
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.
- package/.bongos-core.json +70 -45
- package/clients/bongos-client/README.md +1 -1
- package/clients/bongos-client/bongos-client.global.js +6 -0
- package/clients/bongos-client/index.cjs +6 -0
- package/clients/bongos-client/index.d.ts +7 -0
- package/clients/bongos-client/index.mjs +6 -0
- package/docs/adr/0396-google-sign-in-a-stand-in-login-and-a-browser-approved-cli-sign-in.md +8 -0
- package/docs/api/openapi.json +110 -5
- package/docs/api-reference.md +6 -3
- package/docs/copy-inventory.md +36 -32
- package/docs/copy-registry.json +69 -33
- package/docs/module-api-changelog.md +2 -0
- package/docs/page-inventory.json +2 -1
- package/docs/page-readings.json +63 -55
- package/migrations/core_286_credit_log_no_spend.sql +128 -0
- package/modules/copy-desk/auto-close.js +5 -3
- package/modules/copy-desk/page-status.js +7 -4
- package/modules/copy-desk/tests/copy_page_auto_close.mjs +4 -4
- package/modules/lifecycle/routes/claims.js +7 -1
- package/modules/platform-identity/account-logins.js +131 -0
- package/modules/platform-identity/migrations/platform_identity_035_account_login_email_idx.sql +19 -0
- package/modules/platform-identity/routes/profile.js +29 -1
- package/modules/platform-identity/routes/sso.js +25 -3
- package/modules/public-landing/public/account.html +114 -0
- package/modules/public-landing/public/account.states.json +1 -0
- package/modules/ui-design/kit/serve.js +24 -0
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/release-notes.json +18 -0
- package/scripts/bongos/run-unit-tests.js +4 -0
- package/src/bongos/auth-github.js +24 -7
- package/src/bongos/routes/auth-google.js +71 -5
- package/src/bongos/routes/auth-link.js +132 -0
- package/src/bongos/routes.js +2 -0
- package/src/bongos/sign-in-pages.js +20 -1
- package/src/module-api.js +1 -1
- package/tests/account_linking.mjs +289 -0
- package/tests/account_logins_db.mjs +56 -0
- package/tests/claims_batch_routes.mjs +79 -12
- package/tests/copy_desk_page_release.mjs +20 -0
- package/tests/copy_stuck_page_tweaks.mjs +2 -2
- package/tests/credit_log_no_spend_db.mjs +160 -0
- package/tests/effective_visibility_predicate.mjs +8 -0
- package/tests/hub_account_page.mjs +91 -5
package/docs/copy-registry.json
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
"generator": "scripts/bongos/copy-inventory.js",
|
|
4
4
|
"goal": 1000074,
|
|
5
5
|
"counts": {
|
|
6
|
-
"strings":
|
|
7
|
-
"unique_ids":
|
|
8
|
-
"certain":
|
|
6
|
+
"strings": 3115,
|
|
7
|
+
"unique_ids": 2454,
|
|
8
|
+
"certain": 3115,
|
|
9
9
|
"heuristic": 0,
|
|
10
10
|
"duplicate_ids": 261
|
|
11
11
|
},
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"landing": {
|
|
24
24
|
"at": "modules/public-landing/public",
|
|
25
25
|
"files": 10,
|
|
26
|
-
"strings":
|
|
26
|
+
"strings": 1011
|
|
27
27
|
}
|
|
28
28
|
},
|
|
29
29
|
"blind_spots": [
|
|
@@ -389,7 +389,7 @@
|
|
|
389
389
|
"text": "Builders' hall",
|
|
390
390
|
"occurrences": 12,
|
|
391
391
|
"at": [
|
|
392
|
-
"modules/public-landing/public/account.html:
|
|
392
|
+
"modules/public-landing/public/account.html:308",
|
|
393
393
|
"modules/public-landing/public/community.html:358",
|
|
394
394
|
"modules/public-landing/public/connections.html:190",
|
|
395
395
|
"modules/public-landing/public/contact.html:133",
|
|
@@ -447,7 +447,7 @@
|
|
|
447
447
|
"text": "A non-profit, capture-resistant commons.",
|
|
448
448
|
"occurrences": 10,
|
|
449
449
|
"at": [
|
|
450
|
-
"modules/public-landing/public/account.html:
|
|
450
|
+
"modules/public-landing/public/account.html:308",
|
|
451
451
|
"modules/public-landing/public/community.html:358",
|
|
452
452
|
"modules/public-landing/public/connections.html:190",
|
|
453
453
|
"modules/public-landing/public/contact.html:133",
|
|
@@ -501,7 +501,7 @@
|
|
|
501
501
|
"text": "Open source",
|
|
502
502
|
"occurrences": 10,
|
|
503
503
|
"at": [
|
|
504
|
-
"modules/public-landing/public/account.html:
|
|
504
|
+
"modules/public-landing/public/account.html:308",
|
|
505
505
|
"modules/public-landing/public/community.html:358",
|
|
506
506
|
"modules/public-landing/public/connections.html:190",
|
|
507
507
|
"modules/public-landing/public/contact.html:133",
|
|
@@ -573,7 +573,7 @@
|
|
|
573
573
|
"text": "Built by agents, on Cloud Bongos.",
|
|
574
574
|
"occurrences": 9,
|
|
575
575
|
"at": [
|
|
576
|
-
"modules/public-landing/public/account.html:
|
|
576
|
+
"modules/public-landing/public/account.html:308",
|
|
577
577
|
"modules/public-landing/public/community.html:358",
|
|
578
578
|
"modules/public-landing/public/connections.html:190",
|
|
579
579
|
"modules/public-landing/public/contact.html:133",
|
|
@@ -21424,7 +21424,7 @@
|
|
|
21424
21424
|
"surface": "landing",
|
|
21425
21425
|
"text": "A non-profit, capture-resistant commons.",
|
|
21426
21426
|
"file": "modules/public-landing/public/account.html",
|
|
21427
|
-
"line":
|
|
21427
|
+
"line": 308,
|
|
21428
21428
|
"origin": "html-text",
|
|
21429
21429
|
"confidence": "certain"
|
|
21430
21430
|
},
|
|
@@ -21739,7 +21739,7 @@
|
|
|
21739
21739
|
"surface": "landing",
|
|
21740
21740
|
"text": "Anyone find you.",
|
|
21741
21741
|
"file": "modules/public-landing/public/account.html",
|
|
21742
|
-
"line":
|
|
21742
|
+
"line": 246,
|
|
21743
21743
|
"origin": "html-text",
|
|
21744
21744
|
"confidence": "certain"
|
|
21745
21745
|
},
|
|
@@ -22297,7 +22297,7 @@
|
|
|
22297
22297
|
"surface": "landing",
|
|
22298
22298
|
"text": "Builders' hall",
|
|
22299
22299
|
"file": "modules/public-landing/public/account.html",
|
|
22300
|
-
"line":
|
|
22300
|
+
"line": 308,
|
|
22301
22301
|
"origin": "html-text",
|
|
22302
22302
|
"confidence": "certain"
|
|
22303
22303
|
},
|
|
@@ -22432,7 +22432,7 @@
|
|
|
22432
22432
|
"surface": "landing",
|
|
22433
22433
|
"text": "Built by agents, on Cloud Bongos.",
|
|
22434
22434
|
"file": "modules/public-landing/public/account.html",
|
|
22435
|
-
"line":
|
|
22435
|
+
"line": 308,
|
|
22436
22436
|
"origin": "html-text",
|
|
22437
22437
|
"confidence": "certain"
|
|
22438
22438
|
},
|
|
@@ -22549,7 +22549,7 @@
|
|
|
22549
22549
|
"surface": "landing",
|
|
22550
22550
|
"text": "Can find me",
|
|
22551
22551
|
"file": "modules/public-landing/public/account.html",
|
|
22552
|
-
"line":
|
|
22552
|
+
"line": 254,
|
|
22553
22553
|
"origin": "html-text",
|
|
22554
22554
|
"confidence": "certain"
|
|
22555
22555
|
},
|
|
@@ -22558,7 +22558,7 @@
|
|
|
22558
22558
|
"surface": "landing",
|
|
22559
22559
|
"text": "Can’t find me",
|
|
22560
22560
|
"file": "modules/public-landing/public/account.html",
|
|
22561
|
-
"line":
|
|
22561
|
+
"line": 255,
|
|
22562
22562
|
"origin": "html-text",
|
|
22563
22563
|
"confidence": "certain"
|
|
22564
22564
|
},
|
|
@@ -23008,7 +23008,7 @@
|
|
|
23008
23008
|
"surface": "landing",
|
|
23009
23009
|
"text": "Cross-project Record",
|
|
23010
23010
|
"file": "modules/public-landing/public/account.html",
|
|
23011
|
-
"line":
|
|
23011
|
+
"line": 276,
|
|
23012
23012
|
"origin": "html-text",
|
|
23013
23013
|
"confidence": "certain"
|
|
23014
23014
|
},
|
|
@@ -23714,6 +23714,15 @@
|
|
|
23714
23714
|
"origin": "html-attr:placeholder",
|
|
23715
23715
|
"confidence": "certain"
|
|
23716
23716
|
},
|
|
23717
|
+
{
|
|
23718
|
+
"id": "8c815a28df30",
|
|
23719
|
+
"surface": "landing",
|
|
23720
|
+
"text": "GitHub, Google or both. Each one opens this same account, with the same credits, ranks and history.",
|
|
23721
|
+
"file": "modules/public-landing/public/account.html",
|
|
23722
|
+
"line": 224,
|
|
23723
|
+
"origin": "html-text",
|
|
23724
|
+
"confidence": "certain"
|
|
23725
|
+
},
|
|
23717
23726
|
{
|
|
23718
23727
|
"id": "cf1458a108cd",
|
|
23719
23728
|
"surface": "landing",
|
|
@@ -23755,7 +23764,7 @@
|
|
|
23755
23764
|
"surface": "landing",
|
|
23756
23765
|
"text": "Hide it",
|
|
23757
23766
|
"file": "modules/public-landing/public/account.html",
|
|
23758
|
-
"line":
|
|
23767
|
+
"line": 279,
|
|
23759
23768
|
"origin": "html-text",
|
|
23760
23769
|
"confidence": "certain"
|
|
23761
23770
|
},
|
|
@@ -24182,6 +24191,15 @@
|
|
|
24182
24191
|
"origin": "html-text",
|
|
24183
24192
|
"confidence": "certain"
|
|
24184
24193
|
},
|
|
24194
|
+
{
|
|
24195
|
+
"id": "62bf4cd7f215",
|
|
24196
|
+
"surface": "landing",
|
|
24197
|
+
"text": "Linking never joins two accounts. If the other one already has its own account here, we say so and change nothing.",
|
|
24198
|
+
"file": "modules/public-landing/public/account.html",
|
|
24199
|
+
"line": 228,
|
|
24200
|
+
"origin": "html-text",
|
|
24201
|
+
"confidence": "certain"
|
|
24202
|
+
},
|
|
24185
24203
|
{
|
|
24186
24204
|
"id": "5ceffa7b9d7e",
|
|
24187
24205
|
"surface": "landing",
|
|
@@ -24790,7 +24808,7 @@
|
|
|
24790
24808
|
"surface": "landing",
|
|
24791
24809
|
"text": "Open source",
|
|
24792
24810
|
"file": "modules/public-landing/public/account.html",
|
|
24793
|
-
"line":
|
|
24811
|
+
"line": 308,
|
|
24794
24812
|
"origin": "html-text",
|
|
24795
24813
|
"confidence": "certain"
|
|
24796
24814
|
},
|
|
@@ -25456,7 +25474,7 @@
|
|
|
25456
25474
|
"surface": "landing",
|
|
25457
25475
|
"text": "Reading the projects you build on…",
|
|
25458
25476
|
"file": "modules/public-landing/public/account.html",
|
|
25459
|
-
"line":
|
|
25477
|
+
"line": 299,
|
|
25460
25478
|
"origin": "html-text",
|
|
25461
25479
|
"confidence": "certain"
|
|
25462
25480
|
},
|
|
@@ -25658,12 +25676,21 @@
|
|
|
25658
25676
|
"origin": "html-text",
|
|
25659
25677
|
"confidence": "certain"
|
|
25660
25678
|
},
|
|
25679
|
+
{
|
|
25680
|
+
"id": "fd718a4f17ca",
|
|
25681
|
+
"surface": "landing",
|
|
25682
|
+
"text": "Reading your ways to sign in…",
|
|
25683
|
+
"file": "modules/public-landing/public/account.html",
|
|
25684
|
+
"line": 226,
|
|
25685
|
+
"origin": "html-text",
|
|
25686
|
+
"confidence": "certain"
|
|
25687
|
+
},
|
|
25661
25688
|
{
|
|
25662
25689
|
"id": "604f5274ae98",
|
|
25663
25690
|
"surface": "landing",
|
|
25664
25691
|
"text": "Recruiters looking for builders can find you.",
|
|
25665
25692
|
"file": "modules/public-landing/public/account.html",
|
|
25666
|
-
"line":
|
|
25693
|
+
"line": 254,
|
|
25667
25694
|
"origin": "html-text",
|
|
25668
25695
|
"confidence": "certain"
|
|
25669
25696
|
},
|
|
@@ -25843,7 +25870,7 @@
|
|
|
25843
25870
|
"surface": "landing",
|
|
25844
25871
|
"text": "Show it",
|
|
25845
25872
|
"file": "modules/public-landing/public/account.html",
|
|
25846
|
-
"line":
|
|
25873
|
+
"line": 278,
|
|
25847
25874
|
"origin": "html-text",
|
|
25848
25875
|
"confidence": "certain"
|
|
25849
25876
|
},
|
|
@@ -26653,7 +26680,7 @@
|
|
|
26653
26680
|
"surface": "landing",
|
|
26654
26681
|
"text": "The projects you have joined as a builder. Only you see this list.",
|
|
26655
26682
|
"file": "modules/public-landing/public/account.html",
|
|
26656
|
-
"line":
|
|
26683
|
+
"line": 297,
|
|
26657
26684
|
"origin": "html-text",
|
|
26658
26685
|
"confidence": "certain"
|
|
26659
26686
|
},
|
|
@@ -27526,7 +27553,7 @@
|
|
|
27526
27553
|
"surface": "landing",
|
|
27527
27554
|
"text": "You stay out of the recruiting directory and a recruiter’s look-up.",
|
|
27528
27555
|
"file": "modules/public-landing/public/account.html",
|
|
27529
|
-
"line":
|
|
27556
|
+
"line": 255,
|
|
27530
27557
|
"origin": "html-text",
|
|
27531
27558
|
"confidence": "certain"
|
|
27532
27559
|
},
|
|
@@ -27697,7 +27724,7 @@
|
|
|
27697
27724
|
"surface": "landing",
|
|
27698
27725
|
"text": "Your profile page",
|
|
27699
27726
|
"file": "modules/public-landing/public/account.html",
|
|
27700
|
-
"line":
|
|
27727
|
+
"line": 244,
|
|
27701
27728
|
"origin": "html-text",
|
|
27702
27729
|
"confidence": "certain"
|
|
27703
27730
|
},
|
|
@@ -27706,7 +27733,7 @@
|
|
|
27706
27733
|
"surface": "landing",
|
|
27707
27734
|
"text": "Your profile page can be public or private, and recruiters are let in separately — so a private profile can still be reachable for work, and a public one can stay out of recruiting entirely.",
|
|
27708
27735
|
"file": "modules/public-landing/public/account.html",
|
|
27709
|
-
"line":
|
|
27736
|
+
"line": 241,
|
|
27710
27737
|
"origin": "html-text",
|
|
27711
27738
|
"confidence": "certain"
|
|
27712
27739
|
},
|
|
@@ -27715,7 +27742,7 @@
|
|
|
27715
27742
|
"surface": "landing",
|
|
27716
27743
|
"text": "Your profile page setting applies now — private already answers “not found” everywhere your profile is read. Recruiter discoverability applies now too — switching it off removes you from both recruiting surfaces immediately, and back on puts you there again.",
|
|
27717
27744
|
"file": "modules/public-landing/public/account.html",
|
|
27718
|
-
"line":
|
|
27745
|
+
"line": 259,
|
|
27719
27746
|
"origin": "html-text",
|
|
27720
27747
|
"confidence": "certain"
|
|
27721
27748
|
},
|
|
@@ -27868,7 +27895,7 @@
|
|
|
27868
27895
|
"surface": "landing",
|
|
27869
27896
|
"text": "Your stats appear on your profile and in the directories.",
|
|
27870
27897
|
"file": "modules/public-landing/public/account.html",
|
|
27871
|
-
"line":
|
|
27898
|
+
"line": 278,
|
|
27872
27899
|
"origin": "html-text",
|
|
27873
27900
|
"confidence": "certain"
|
|
27874
27901
|
},
|
|
@@ -27877,7 +27904,7 @@
|
|
|
27877
27904
|
"surface": "landing",
|
|
27878
27905
|
"text": "Your stats are hidden.",
|
|
27879
27906
|
"file": "modules/public-landing/public/account.html",
|
|
27880
|
-
"line":
|
|
27907
|
+
"line": 279,
|
|
27881
27908
|
"origin": "html-text",
|
|
27882
27909
|
"confidence": "certain"
|
|
27883
27910
|
},
|
|
@@ -27886,7 +27913,7 @@
|
|
|
27886
27913
|
"surface": "landing",
|
|
27887
27914
|
"text": "Your track record across every project you build on. Hiding it takes effect immediately everywhere — your profile, the recruiting directory, and a recruiter’s look-up of one builder.",
|
|
27888
27915
|
"file": "modules/public-landing/public/account.html",
|
|
27889
|
-
"line":
|
|
27916
|
+
"line": 272,
|
|
27890
27917
|
"origin": "html-text",
|
|
27891
27918
|
"confidence": "certain"
|
|
27892
27919
|
},
|
|
@@ -27922,7 +27949,7 @@
|
|
|
27922
27949
|
"surface": "landing",
|
|
27923
27950
|
"text": "You’re not building on any other projects yet.",
|
|
27924
27951
|
"file": "modules/public-landing/public/account.html",
|
|
27925
|
-
"line":
|
|
27952
|
+
"line": 300,
|
|
27926
27953
|
"origin": "html-text",
|
|
27927
27954
|
"confidence": "certain"
|
|
27928
27955
|
},
|
|
@@ -28687,7 +28714,7 @@
|
|
|
28687
28714
|
"surface": "landing",
|
|
28688
28715
|
"text": "projects you build on",
|
|
28689
28716
|
"file": "modules/public-landing/public/account.html",
|
|
28690
|
-
"line":
|
|
28717
|
+
"line": 296,
|
|
28691
28718
|
"origin": "html-text",
|
|
28692
28719
|
"confidence": "certain"
|
|
28693
28720
|
},
|
|
@@ -29456,6 +29483,15 @@
|
|
|
29456
29483
|
"origin": "html-text",
|
|
29457
29484
|
"confidence": "certain"
|
|
29458
29485
|
},
|
|
29486
|
+
{
|
|
29487
|
+
"id": "667fd4617840",
|
|
29488
|
+
"surface": "landing",
|
|
29489
|
+
"text": "ways to sign in",
|
|
29490
|
+
"file": "modules/public-landing/public/account.html",
|
|
29491
|
+
"line": 223,
|
|
29492
|
+
"origin": "html-text",
|
|
29493
|
+
"confidence": "certain"
|
|
29494
|
+
},
|
|
29459
29495
|
{
|
|
29460
29496
|
"id": "c142e2581ed3",
|
|
29461
29497
|
"surface": "landing",
|
|
@@ -29470,7 +29506,7 @@
|
|
|
29470
29506
|
"surface": "landing",
|
|
29471
29507
|
"text": "who can find you",
|
|
29472
29508
|
"file": "modules/public-landing/public/account.html",
|
|
29473
|
-
"line":
|
|
29509
|
+
"line": 240,
|
|
29474
29510
|
"origin": "html-text",
|
|
29475
29511
|
"confidence": "certain"
|
|
29476
29512
|
},
|
|
@@ -29839,7 +29875,7 @@
|
|
|
29839
29875
|
"surface": "landing",
|
|
29840
29876
|
"text": "you are a ninja. Private hides the page from everyone — including you. You see your record here.",
|
|
29841
29877
|
"file": "modules/public-landing/public/account.html",
|
|
29842
|
-
"line":
|
|
29878
|
+
"line": 247,
|
|
29843
29879
|
"origin": "html-text",
|
|
29844
29880
|
"confidence": "certain"
|
|
29845
29881
|
},
|
|
@@ -29902,7 +29938,7 @@
|
|
|
29902
29938
|
"surface": "landing",
|
|
29903
29939
|
"text": "your record",
|
|
29904
29940
|
"file": "modules/public-landing/public/account.html",
|
|
29905
|
-
"line":
|
|
29941
|
+
"line": 271,
|
|
29906
29942
|
"origin": "html-text",
|
|
29907
29943
|
"confidence": "certain"
|
|
29908
29944
|
},
|
|
@@ -3268,5 +3268,7 @@ is load-bearing: the script throws rather than guess if it is missing, and
|
|
|
3268
3268
|
landed since 1.24.1 with no explicit bump. run 41000649913. (task 1002620)
|
|
3269
3269
|
1.24.5 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
3270
3270
|
landed since 1.24.2 with no explicit bump. run 41006914357. (task 1002620)
|
|
3271
|
+
1.24.6 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
3272
|
+
landed since 1.24.5 with no explicit bump. run 41008421453. (task 1002620)
|
|
3271
3273
|
---------------------------------------------------------------------------
|
|
3272
3274
|
```
|
package/docs/page-inventory.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"pages": 48,
|
|
14
14
|
"surfaces": 3,
|
|
15
15
|
"with_states": 41,
|
|
16
|
-
"states":
|
|
16
|
+
"states": 364
|
|
17
17
|
},
|
|
18
18
|
"surfaces": [
|
|
19
19
|
{
|
|
@@ -1479,6 +1479,7 @@
|
|
|
1479
1479
|
"in-projects-band",
|
|
1480
1480
|
"in-profile-band",
|
|
1481
1481
|
"in-building",
|
|
1482
|
+
"in-ways",
|
|
1482
1483
|
"in-privacy",
|
|
1483
1484
|
"in-private"
|
|
1484
1485
|
]
|
package/docs/page-readings.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"adr": "0341 D3",
|
|
6
6
|
"reread": "node scripts/bongos/page-reader.js --stale",
|
|
7
7
|
"how": ["Generated by node scripts/bongos/page-reader.js (BV2.TW04, task 1004315; ADR 0341 D3). Do not hand-edit.","One entry per page of docs/page-inventory.json. Lines are in page order: the default state first, and a line only another state shows sits where that state shows it, with its state named.","placement: placed = a docs/copy-registry.json row renders it (file, line, string_id); shared = shell text every page of the surface carries (top bar, sidebar, footer), with its row when the registry has one; unplaced = the registry cannot place it (a rewrite becomes an engineer task, ADR 0341 D4).","text keeps {…} where the registry row has a hole, or where a value the page read from its API was filled in. A string that is only such data is counted under omitted.data, not listed.","reading_hash is over the non-shared lines (key, section, text); files_hash is over the page's inventory files. --check compares files_hash only and never opens a browser.","Rendered through the hall-preview harness (hall) and the ui-design kit stub (landing, status), at 1280x800 with the clock pinned, so a reading is the fixture world's page."],
|
|
8
|
-
"counts": {"pages":48,"lines":
|
|
8
|
+
"counts": {"pages":48,"lines":5464,"placed":1686,"shared":427,"unplaced":3351,"omitted_data":3732},
|
|
9
9
|
"pages": [
|
|
10
10
|
{
|
|
11
11
|
"id": "builders:ai-studio",
|
|
@@ -4568,11 +4568,11 @@
|
|
|
4568
4568
|
"id": "landing:account",
|
|
4569
4569
|
"surface": "landing",
|
|
4570
4570
|
"title": "{{productName}} — Your account",
|
|
4571
|
-
"states_read": ["out","in","in-projects-band","in-profile-band","in-building","in-privacy","in-private"],
|
|
4572
|
-
"files_hash": "
|
|
4573
|
-
"reading_hash": "
|
|
4574
|
-
"counts": {"lines":
|
|
4575
|
-
"omitted": {"data":
|
|
4571
|
+
"states_read": ["out","in","in-projects-band","in-profile-band","in-building","in-ways","in-privacy","in-private"],
|
|
4572
|
+
"files_hash": "62466bd448aefdf7",
|
|
4573
|
+
"reading_hash": "a50818bf29267425",
|
|
4574
|
+
"counts": {"lines":100,"placed":46,"shared":12,"unplaced":42},
|
|
4575
|
+
"omitted": {"data":10},
|
|
4576
4576
|
"notes": [],
|
|
4577
4577
|
"lines": [
|
|
4578
4578
|
{"key":"L0001","section":"top bar","text":"Community","placement":"shared"},
|
|
@@ -4618,55 +4618,63 @@
|
|
|
4618
4618
|
{"key":"L0041","section":"your handle","text":"your-handle","placement":"unplaced","attr":"placeholder","state":"in"},
|
|
4619
4619
|
{"key":"L0042","section":"your handle","text":"Lowercase letters, numbers and hyphens, up to 39. You can change it once a week, and your old handle keeps leading to you until you change it again.","placement":"placed","file":"modules/public-landing/public/account.html","line":211,"string_id":"5ceffa7b9d7e","state":"in"},
|
|
4620
4620
|
{"key":"L0043","section":"your handle","text":"change handle","placement":"placed","file":"modules/public-landing/public/account.html","line":212,"string_id":"0a22c9a537b4","state":"in"},
|
|
4621
|
-
{"key":"L0044","section":"
|
|
4622
|
-
{"key":"L0045","section":"
|
|
4623
|
-
{"key":"L0046","section":"
|
|
4624
|
-
{"key":"L0047","section":"
|
|
4625
|
-
{"key":"L0048","section":"
|
|
4626
|
-
{"key":"L0049","section":"
|
|
4627
|
-
{"key":"L0050","section":"
|
|
4628
|
-
{"key":"L0051","section":"
|
|
4629
|
-
{"key":"L0052","section":"who can find you","text":"
|
|
4630
|
-
{"key":"L0053","section":"who can find you","text":"
|
|
4631
|
-
{"key":"L0054","section":"who can find you","text":"
|
|
4632
|
-
{"key":"L0055","section":"who can find you","text":"
|
|
4633
|
-
{"key":"L0056","section":"who can find you","text":"
|
|
4634
|
-
{"key":"L0057","section":"who can find you","text":"
|
|
4635
|
-
{"key":"L0058","section":"who can find you","text":"
|
|
4636
|
-
{"key":"L0059","section":"who can find you","text":"
|
|
4637
|
-
{"key":"L0060","section":"who can find you","text":"
|
|
4638
|
-
{"key":"L0061","section":"who can find you","text":"
|
|
4639
|
-
{"key":"L0062","section":"who can find you","text":"
|
|
4640
|
-
{"key":"L0063","section":"who can find you","text":"
|
|
4641
|
-
{"key":"L0064","section":"who can find you","text":"
|
|
4642
|
-
{"key":"L0065","section":"
|
|
4643
|
-
{"key":"L0066","section":"
|
|
4644
|
-
{"key":"L0067","section":"
|
|
4645
|
-
{"key":"L0068","section":"
|
|
4646
|
-
{"key":"L0069","section":"
|
|
4647
|
-
{"key":"L0070","section":"
|
|
4648
|
-
{"key":"L0071","section":"
|
|
4649
|
-
{"key":"L0072","section":"
|
|
4650
|
-
{"key":"L0073","section":"your record","text":"
|
|
4651
|
-
{"key":"L0074","section":"your record","text":"
|
|
4652
|
-
{"key":"L0075","section":"your record","text":"
|
|
4653
|
-
{"key":"L0076","section":"your record","text":"·
|
|
4654
|
-
{"key":"L0077","section":"your record","text":"
|
|
4655
|
-
{"key":"L0078","section":"
|
|
4656
|
-
{"key":"L0079","section":"
|
|
4657
|
-
{"key":"L0080","section":"
|
|
4658
|
-
{"key":"L0081","section":"
|
|
4659
|
-
{"key":"L0082","section":"
|
|
4660
|
-
{"key":"L0083","section":"
|
|
4661
|
-
{"key":"L0084","section":"
|
|
4662
|
-
{"key":"L0085","section":"
|
|
4663
|
-
{"key":"L0086","section":"
|
|
4664
|
-
{"key":"L0087","section":"
|
|
4665
|
-
{"key":"L0088","section":"
|
|
4666
|
-
{"key":"L0089","section":"
|
|
4667
|
-
{"key":"L0090","section":"
|
|
4668
|
-
{"key":"L0091","section":"
|
|
4669
|
-
{"key":"L0092","section":"
|
|
4621
|
+
{"key":"L0044","section":"ways to sign in","text":"ways to sign in","placement":"placed","file":"modules/public-landing/public/account.html","line":223,"string_id":"667fd4617840","state":"in"},
|
|
4622
|
+
{"key":"L0045","section":"ways to sign in","text":"GitHub, Google or both. Each one opens this same account, with the same credits, ranks and history.","placement":"placed","file":"modules/public-landing/public/account.html","line":224,"string_id":"8c815a28df30","state":"in"},
|
|
4623
|
+
{"key":"L0046","section":"ways to sign in","text":"GitHub","placement":"unplaced","state":"in"},
|
|
4624
|
+
{"key":"L0047","section":"ways to sign in","text":"linked","placement":"unplaced","state":"in"},
|
|
4625
|
+
{"key":"L0048","section":"ways to sign in","text":"Your account was made with GitHub, so GitHub stays linked.","placement":"unplaced","state":"in"},
|
|
4626
|
+
{"key":"L0049","section":"ways to sign in","text":"Google","placement":"unplaced","state":"in"},
|
|
4627
|
+
{"key":"L0050","section":"ways to sign in","text":"Remove","placement":"unplaced","state":"in"},
|
|
4628
|
+
{"key":"L0051","section":"ways to sign in","text":"Linking never joins two accounts. If the other one already has its own account here, we say so and change nothing.","placement":"placed","file":"modules/public-landing/public/account.html","line":228,"string_id":"62bf4cd7f215","state":"in"},
|
|
4629
|
+
{"key":"L0052","section":"who can find you","text":"who can find you","placement":"placed","file":"modules/public-landing/public/account.html","line":240,"string_id":"7322eee6b8b4","state":"in"},
|
|
4630
|
+
{"key":"L0053","section":"who can find you","text":"Your profile page can be public or private, and recruiters are let in separately — so a private profile can still be reachable for work, and a public one can stay out of recruiting entirely.","placement":"placed","file":"modules/public-landing/public/account.html","line":241,"string_id":"38f40fb26117","state":"in"},
|
|
4631
|
+
{"key":"L0054","section":"who can find you","text":"Your profile page","placement":"placed","file":"modules/public-landing/public/account.html","line":244,"string_id":"2df3e63e4761","state":"in"},
|
|
4632
|
+
{"key":"L0055","section":"who can find you","text":"Public","placement":"unplaced","state":"in"},
|
|
4633
|
+
{"key":"L0056","section":"who can find you","text":"Anyone find you.","placement":"placed","file":"modules/public-landing/public/account.html","line":246,"string_id":"525a9aa1dd71","state":"in"},
|
|
4634
|
+
{"key":"L0057","section":"who can find you","text":"Private","placement":"unplaced","state":"in"},
|
|
4635
|
+
{"key":"L0058","section":"who can find you","text":"you are a ninja. Private hides the page from everyone — including you. You see your record here.","placement":"placed","file":"modules/public-landing/public/account.html","line":247,"string_id":"8caf52240833","state":"in"},
|
|
4636
|
+
{"key":"L0059","section":"who can find you","text":"Every guild you belong to counts your numbers in its rounded totals unless you leave them out — even while your profile page is {…}. They are never shown on their own: only inside totals rounded down to a band (10+, 20+, 50+ …) and counted once a week. Each guild’s page has the switch:","placement":"unplaced","state":"in-privacy"},
|
|
4637
|
+
{"key":"L0060","section":"who can find you","text":"· counted","placement":"unplaced","state":"in-privacy"},
|
|
4638
|
+
{"key":"L0061","section":"who can find you","text":"· left out","placement":"unplaced","state":"in-privacy"},
|
|
4639
|
+
{"key":"L0062","section":"who can find you","text":"Recruiters","placement":"unplaced","state":"in"},
|
|
4640
|
+
{"key":"L0063","section":"who can find you","text":"Can find me","placement":"placed","file":"modules/public-landing/public/account.html","line":254,"string_id":"50d493f08964","state":"in"},
|
|
4641
|
+
{"key":"L0064","section":"who can find you","text":"Recruiters looking for builders can find you.","placement":"placed","file":"modules/public-landing/public/account.html","line":254,"string_id":"604f5274ae98","state":"in"},
|
|
4642
|
+
{"key":"L0065","section":"who can find you","text":"Can’t find me","placement":"placed","file":"modules/public-landing/public/account.html","line":255,"string_id":"48d721eb2ed7","state":"in"},
|
|
4643
|
+
{"key":"L0066","section":"who can find you","text":"You stay out of the recruiting directory and a recruiter’s look-up.","placement":"placed","file":"modules/public-landing/public/account.html","line":255,"string_id":"af2177106d7c","state":"in"},
|
|
4644
|
+
{"key":"L0067","section":"who can find you","text":"Because your cross-project record is hidden, they will see your name and your picture, and nothing else. This is the one thing a recruiter can see while your profile page is {…}. Turning this off removes you from both recruiting surfaces — the recruiting directory, and a recruiter’s look-up of one {…} — straight away.","placement":"unplaced","state":"in-private"},
|
|
4645
|
+
{"key":"L0068","section":"who can find you","text":"They will see your name, your picture, your roles, and whether you have been {…} in the last 30 days — never your {…}, works shipped, karma, or the projects you build on. This is the one thing a recruiter can see while your profile page is {…}. Turning this off removes you from both recruiting surfaces — the recruiting directory, and a recruiter’s look-up of one {…} — straight away.","placement":"unplaced","state":"in-privacy"},
|
|
4646
|
+
{"key":"L0069","section":"who can find you","text":"They will see your name, your picture, your roles, and whether you have been {…} in the last 30 days — never your {…}, works shipped, karma, or the projects you build on. Turning this off removes you from both recruiting surfaces — the recruiting directory, and a recruiter’s look-up of one {…} — straight away.","placement":"unplaced","state":"in"},
|
|
4647
|
+
{"key":"L0070","section":"who can find you","text":"· For now this follows your profile page setting.","placement":"unplaced","state":"in"},
|
|
4648
|
+
{"key":"L0071","section":"who can find you","text":"Your profile page setting applies now — private already answers “not found” everywhere your profile is read. Recruiter discoverability applies now too — switching it off removes you from both recruiting surfaces immediately, and back on puts you there again.","placement":"placed","file":"modules/public-landing/public/account.html","line":259,"string_id":"e0d6e4196161","state":"in"},
|
|
4649
|
+
{"key":"L0072","section":"who can find you","text":"save","placement":"unplaced","state":"in"},
|
|
4650
|
+
{"key":"L0073","section":"your record","text":"your record","placement":"placed","file":"modules/public-landing/public/account.html","line":271,"string_id":"b494287ce724","state":"in"},
|
|
4651
|
+
{"key":"L0074","section":"your record","text":"Your track record across every project you build on. Hiding it takes effect immediately everywhere — your profile, the recruiting directory, and a recruiter’s look-up of one builder.","placement":"placed","file":"modules/public-landing/public/account.html","line":272,"string_id":"f18600e9cff1","state":"in"},
|
|
4652
|
+
{"key":"L0075","section":"your record","text":"No cross-project activity reported yet. Your profile is not published yet; it publishes after your next sign-in.","placement":"unplaced","state":"in-private"},
|
|
4653
|
+
{"key":"L0076","section":"your record","text":"Your record: 3 projects · 1000 {…} · 19 works shipped · 10 karma.","placement":"unplaced","state":"in"},
|
|
4654
|
+
{"key":"L0077","section":"your record","text":"Cross-project Record","placement":"placed","file":"modules/public-landing/public/account.html","line":276,"string_id":"d5c4a0e0f864","state":"in"},
|
|
4655
|
+
{"key":"L0078","section":"your record","text":"Show it","placement":"placed","file":"modules/public-landing/public/account.html","line":278,"string_id":"960b894c0ea1","state":"in"},
|
|
4656
|
+
{"key":"L0079","section":"your record","text":"Your stats appear on your profile and in the directories.","placement":"placed","file":"modules/public-landing/public/account.html","line":278,"string_id":"edf1c4f5e0c5","state":"in"},
|
|
4657
|
+
{"key":"L0080","section":"your record","text":"Hide it","placement":"placed","file":"modules/public-landing/public/account.html","line":279,"string_id":"ccd4861996eb","state":"in"},
|
|
4658
|
+
{"key":"L0081","section":"your record","text":"Your stats are hidden.","placement":"placed","file":"modules/public-landing/public/account.html","line":279,"string_id":"44c8b76631bf","state":"in"},
|
|
4659
|
+
{"key":"L0082","section":"your record","text":"Every guild you belong to counts your numbers in its rounded totals unless you leave them out — even while your record is hidden. They are never shown on their own: only inside totals rounded down to a band (10+, 20+, 50+ …) and counted once a week. Each guild’s page has the switch:","placement":"unplaced","state":"in-private"},
|
|
4660
|
+
{"key":"L0083","section":"your record","text":"· counted","placement":"unplaced","state":"in-private"},
|
|
4661
|
+
{"key":"L0084","section":"your record","text":"· left out","placement":"unplaced","state":"in-private"},
|
|
4662
|
+
{"key":"L0085","section":"your record","text":"save","placement":"unplaced","state":"in"},
|
|
4663
|
+
{"key":"L0086","section":"projects you build on","text":"projects you build on","placement":"placed","file":"modules/public-landing/public/account.html","line":296,"string_id":"f8aa3ff34a10","state":"in"},
|
|
4664
|
+
{"key":"L0087","section":"projects you build on","text":"The projects you have joined as a builder. Only you see this list.","placement":"placed","file":"modules/public-landing/public/account.html","line":297,"string_id":"d466ee6b6e30","state":"in"},
|
|
4665
|
+
{"key":"L0088","section":"projects you build on","text":"example.com","placement":"unplaced","state":"in"},
|
|
4666
|
+
{"key":"L0089","section":"projects you build on","text":"Leave","placement":"unplaced","state":"in","occurrences":2},
|
|
4667
|
+
{"key":"L0090","section":"projects you build on","text":"{…}-circles.cloudbongos.com","placement":"unplaced","state":"in"},
|
|
4668
|
+
{"key":"L0091","section":"footer","text":"A non-profit, capture-resistant commons.","placement":"shared","file":"modules/public-landing/public/account.html","line":308,"string_id":"afe83bbbd0d4","state":"in","occurrences":2},
|
|
4669
|
+
{"key":"L0092","section":"footer","text":"Built by agents, on Cloud Bongos.","placement":"shared","file":"modules/public-landing/public/account.html","line":308,"string_id":"bd315dd71ea7","state":"in","occurrences":2},
|
|
4670
|
+
{"key":"L0093","section":"footer","text":"Open source","placement":"shared","file":"modules/public-landing/public/account.html","line":308,"string_id":"d6314ddcc1d0","state":"in","occurrences":2},
|
|
4671
|
+
{"key":"L0094","section":"footer","text":"AGPL-3.0","placement":"shared","state":"in","occurrences":2},
|
|
4672
|
+
{"key":"L0095","section":"navigation","text":"Privacy","placement":"shared","state":"in","occurrences":2},
|
|
4673
|
+
{"key":"L0096","section":"navigation","text":"Terms","placement":"shared","state":"in","occurrences":2},
|
|
4674
|
+
{"key":"L0097","section":"navigation","text":"Contact","placement":"shared","state":"in","occurrences":2},
|
|
4675
|
+
{"key":"L0098","section":"navigation","text":"Builders' hall","placement":"shared","file":"modules/public-landing/public/account.html","line":308,"string_id":"90a128c97eae","state":"in","occurrences":2},
|
|
4676
|
+
{"key":"L0099","section":"your account","text":"Sign in to change your handle, your bio and links, and who can find you.","placement":"placed","file":"modules/public-landing/public/account.html","line":159,"string_id":"d9eefaa86565"},
|
|
4677
|
+
{"key":"L0100","section":"your account","text":"Sign in","placement":"placed","file":"modules/public-landing/public/account.html","line":113,"string_id":"ad80586f802a"}
|
|
4670
4678
|
]
|
|
4671
4679
|
},
|
|
4672
4680
|
{
|