agience-origin 0.1.0__py3-none-any.whl

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 (114) hide show
  1. agience_origin-0.1.0.dist-info/METADATA +42 -0
  2. agience_origin-0.1.0.dist-info/RECORD +114 -0
  3. agience_origin-0.1.0.dist-info/WHEEL +5 -0
  4. agience_origin-0.1.0.dist-info/entry_points.txt +2 -0
  5. agience_origin-0.1.0.dist-info/licenses/LICENSE +727 -0
  6. agience_origin-0.1.0.dist-info/licenses/NOTICE +5 -0
  7. agience_origin-0.1.0.dist-info/top_level.txt +1 -0
  8. origin/__init__.py +5 -0
  9. origin/alembic/env.py +55 -0
  10. origin/alembic/script.py.mako +26 -0
  11. origin/alembic/versions/0001_initial_origin_schema.py +235 -0
  12. origin/alembic/versions/0002_email_verified.py +37 -0
  13. origin/alembic/versions/0003_drop_grants_apikeys.py +108 -0
  14. origin/alembic/versions/0004_passkey_challenges.py +63 -0
  15. origin/alembic/versions/0005_person_identity.py +108 -0
  16. origin/alembic/versions/0006_oauth_clients.py +58 -0
  17. origin/alembic/versions/__init__.py +0 -0
  18. origin/alembic.ini +39 -0
  19. origin/api/__init__.py +0 -0
  20. origin/api/server_credential.py +58 -0
  21. origin/authority_trust.py +30 -0
  22. origin/config.py +282 -0
  23. origin/db/__init__.py +4 -0
  24. origin/db/base.py +19 -0
  25. origin/db/oauth_clients.py +34 -0
  26. origin/db/otp_codes.py +144 -0
  27. origin/db/passkey_challenges.py +98 -0
  28. origin/db/passkey_credentials.py +77 -0
  29. origin/db/person_identities.py +109 -0
  30. origin/db/persons.py +73 -0
  31. origin/db/platform_settings.py +52 -0
  32. origin/db/server_credentials.py +93 -0
  33. origin/db/session.py +160 -0
  34. origin/entity.py +186 -0
  35. origin/key_manager.py +30 -0
  36. origin/logging_utils.py +103 -0
  37. origin/main.py +723 -0
  38. origin/models/__init__.py +26 -0
  39. origin/models/oauth_client.py +66 -0
  40. origin/models/otp_code.py +29 -0
  41. origin/models/passkey_challenge.py +49 -0
  42. origin/models/passkey_credential.py +46 -0
  43. origin/models/person.py +37 -0
  44. origin/models/person_identity.py +66 -0
  45. origin/models/platform_setting.py +31 -0
  46. origin/models/server_credential.py +38 -0
  47. origin/routers/__init__.py +0 -0
  48. origin/routers/auth_router.py +2828 -0
  49. origin/routers/oracle_router.py +148 -0
  50. origin/routers/otp_router.py +98 -0
  51. origin/routers/passkey_router.py +232 -0
  52. origin/routers/server_credentials_router.py +212 -0
  53. origin/routers/setup_router.py +352 -0
  54. origin/routers/system_router.py +150 -0
  55. origin/scopes.py +64 -0
  56. origin/scripts/__init__.py +6 -0
  57. origin/scripts/emit_trust_anchor.py +145 -0
  58. origin/service_identity.py +25 -0
  59. origin/services/__init__.py +0 -0
  60. origin/services/auth_service.py +536 -0
  61. origin/services/auth_verifier.py +113 -0
  62. origin/services/dependencies.py +241 -0
  63. origin/services/email_service.py +406 -0
  64. origin/services/guess_budget.py +202 -0
  65. origin/services/key_oracle.py +55 -0
  66. origin/services/manifest.py +147 -0
  67. origin/services/oidc_providers.py +121 -0
  68. origin/services/otp_service.py +213 -0
  69. origin/services/passkey_service.py +412 -0
  70. origin/services/person_service.py +370 -0
  71. origin/services/platform_settings_service.py +239 -0
  72. origin/services/shamir.py +85 -0
  73. origin/tests/__init__.py +0 -0
  74. origin/tests/conftest.py +125 -0
  75. origin/tests/test_access_token_lifetime.py +239 -0
  76. origin/tests/test_account_surface.py +132 -0
  77. origin/tests/test_auth_foundation.py +301 -0
  78. origin/tests/test_auth_policy_matrix.py +160 -0
  79. origin/tests/test_authorize_client_enforcement.py +362 -0
  80. origin/tests/test_authorize_local_methods.py +475 -0
  81. origin/tests/test_bootstrap_claim.py +271 -0
  82. origin/tests/test_browser_facing_defaults.py +209 -0
  83. origin/tests/test_delegation_token.py +337 -0
  84. origin/tests/test_disclosure_boundaries.py +775 -0
  85. origin/tests/test_discovery_is_configured_not_requested.py +162 -0
  86. origin/tests/test_dynamic_client_registration.py +476 -0
  87. origin/tests/test_email_service.py +190 -0
  88. origin/tests/test_healthz.py +12 -0
  89. origin/tests/test_jwks.py +28 -0
  90. origin/tests/test_mcp_client_token_scoping.py +374 -0
  91. origin/tests/test_oracle_router_auth.py +115 -0
  92. origin/tests/test_origin_refuses_multiple_workers.py +100 -0
  93. origin/tests/test_otp_bruteforce_and_stall.py +330 -0
  94. origin/tests/test_passkey_challenge_replay.py +155 -0
  95. origin/tests/test_password_guess_budget.py +387 -0
  96. origin/tests/test_platform_settings_and_setup_hardening.py +308 -0
  97. origin/tests/test_router_auth.py +957 -0
  98. origin/tests/test_server_credentials_authz.py +112 -0
  99. origin/tests/test_sqlite_write_contention.py +165 -0
  100. origin/tests/test_the_package_ships_what_it_serves.py +223 -0
  101. origin/tests/test_trust_anchor_emission.py +160 -0
  102. origin/tests/test_trust_floor_has_one_implementation.py +138 -0
  103. origin/tests/test_wellknown_agience.py +118 -0
  104. origin/uvicorn_log_config.json +54 -0
  105. origin/web/account.html +46 -0
  106. origin/web/app.css +52 -0
  107. origin/web/app.js +56 -0
  108. origin/web/bg.js +38 -0
  109. origin/web/favicon.png +0 -0
  110. origin/web/index.html +102 -0
  111. origin/web/logo_h.png +0 -0
  112. origin/web/logo_v.png +0 -0
  113. origin/web/reset-password.html +65 -0
  114. origin/web/verify-email.html +47 -0
@@ -0,0 +1,42 @@
1
+ Metadata-Version: 2.4
2
+ Name: agience-origin
3
+ Version: 0.1.0
4
+ Summary: Agience Origin — the identity authority (IdP): principals, identities, grants, service identity and the trust anchors peers verify against. Import name is `origin`.
5
+ Author: Ikailo Inc.
6
+ License: AGPL-3.0-only
7
+ Requires-Python: >=3.11
8
+ License-File: LICENSE
9
+ License-File: NOTICE
10
+ Requires-Dist: agience-prism[trust]==0.1.0
11
+ Requires-Dist: authlib==1.6.9
12
+ Requires-Dist: bcrypt==5.0.0
13
+ Requires-Dist: cryptography==46.0.7
14
+ Requires-Dist: webauthn>=2.5.0
15
+ Requires-Dist: aiosmtplib==3.0.2
16
+ Requires-Dist: fastapi==0.135.1
17
+ Requires-Dist: starlette==0.49.3
18
+ Requires-Dist: itsdangerous==2.2.0
19
+ Requires-Dist: uvicorn[standard]==0.37.0
20
+ Requires-Dist: python-multipart==0.0.26
21
+ Requires-Dist: python-dotenv>=1.0.0
22
+ Requires-Dist: pydantic==2.12.0
23
+ Requires-Dist: pydantic[email]==2.12.0
24
+ Requires-Dist: pydantic-core==2.41.1
25
+ Requires-Dist: annotated-types==0.7.0
26
+ Requires-Dist: email-validator==2.2.0
27
+ Requires-Dist: sqlalchemy<3.0,>=2.0
28
+ Requires-Dist: alembic>=1.13
29
+ Requires-Dist: pyyaml>=6.0
30
+ Requires-Dist: boto3==1.40.50
31
+ Requires-Dist: botocore==1.40.50
32
+ Requires-Dist: httpx==0.28.1
33
+ Requires-Dist: anyio==4.11.0
34
+ Requires-Dist: typing-extensions==4.15.0
35
+ Requires-Dist: python-dateutil==2.9.0.post0
36
+ Requires-Dist: python-jose==3.5.0
37
+ Provides-Extra: test
38
+ Requires-Dist: pytest==8.4.2; extra == "test"
39
+ Requires-Dist: pytest-asyncio>=1.0.0; extra == "test"
40
+ Requires-Dist: pytest-xdist>=3.5.0; extra == "test"
41
+ Requires-Dist: pytest-timeout>=2.2.0; extra == "test"
42
+ Dynamic: license-file
@@ -0,0 +1,114 @@
1
+ agience_origin-0.1.0.dist-info/licenses/LICENSE,sha256=yWquLg9-nCVS52BJD8Kszdg1_RA9yjeRhcq3dJDFcUE,36951
2
+ agience_origin-0.1.0.dist-info/licenses/NOTICE,sha256=l7bNURrYpVoTjtmLBZ0a7bgHWNig4qRPnoPrv8o8DF4,169
3
+ origin/__init__.py,sha256=G4Hb0q7wVh2wVE9FgH_0km_-44Y4dz_pOEcQMIue7mw,223
4
+ origin/alembic.ini,sha256=IbamsrZ08elFL9HxqGYW7GzScYNB3c02nV4RvQ6w7UA,580
5
+ origin/authority_trust.py,sha256=khRNI2cfkRI6ZiVno0YmXWS1wOKmmKZzzUfPmvygCss,1957
6
+ origin/config.py,sha256=12o40hXt1ysQr0FopBeOCjScWlspZ4FQwahE8MbXVmo,15576
7
+ origin/entity.py,sha256=f12ABDx1GgbL0Hp1He5XH3W3ioAilxqQgRJM1S99NBc,8876
8
+ origin/key_manager.py,sha256=ZrkIabILJxcrYniFbJIEHoquhFIfAhnz979ZTwHHZqI,1928
9
+ origin/logging_utils.py,sha256=KYT5n5ApdnvhrhJ7pI2fNMWcQLbBONriiRyf-tboihw,4086
10
+ origin/main.py,sha256=CC4bbp0fVYiKTO0Yji6ag8UOqP3_CXHf47DhKdTJdUA,35463
11
+ origin/scopes.py,sha256=GqjlvQFt9JJhlXN49BeyaFDnNjXJZdMbT3VtvbuA2is,2252
12
+ origin/service_identity.py,sha256=INl5XslkS9_9YjK_VMs7qBSNwobQHpot_McAY9x1DyM,1625
13
+ origin/uvicorn_log_config.json,sha256=TrCqE_Pr0FzdlOztz0TumCpTkJHw8ze9WR_K4mRlqJg,1306
14
+ origin/alembic/env.py,sha256=xX7BNeGYXPlfNveS-mNvzegGpGX8qmAwMfcJElH9Nds,1721
15
+ origin/alembic/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
16
+ origin/alembic/versions/0001_initial_origin_schema.py,sha256=OUSkRfuJBKT1y_juqem3Zsoq-gu0AJc6dg_HvxtP8zY,12446
17
+ origin/alembic/versions/0002_email_verified.py,sha256=J8Oj68pl31ErSh5POD_OJW0rqRCjraqsogip4Pd7xq8,1004
18
+ origin/alembic/versions/0003_drop_grants_apikeys.py,sha256=jjXDb6AEDOpB0WJM5P8lINEVDEEFYwFDUpNa-VSqUmk,5972
19
+ origin/alembic/versions/0004_passkey_challenges.py,sha256=k-iK2hfqi2jAM2YRDJR-El2bD9KnVzGuRx-szPJ6K6s,2931
20
+ origin/alembic/versions/0005_person_identity.py,sha256=oTLROZyhXYnfchrlDjLnz2AXBAvenP0I54aB-0I0DiM,5597
21
+ origin/alembic/versions/0006_oauth_clients.py,sha256=UbeW_PP-zjv8p1n4cl_P0yCvigmVfQ9asvJguh1aJCo,2859
22
+ origin/alembic/versions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
+ origin/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
+ origin/api/server_credential.py,sha256=nc66SQ-J8EK9147ad_t8K_6QU-s-gH9d5SnDplmqc8c,1678
25
+ origin/db/__init__.py,sha256=278f_0xCbRzoinp84RnRHrj3EXePMKNW7lUw8ZeSF4Y,197
26
+ origin/db/base.py,sha256=9RRylX3PItvhdU-XUGhJNRzKX2TpiH-JfYvIePOhyJ8,644
27
+ origin/db/oauth_clients.py,sha256=hQSXpMCTGa3xyCqCWfr7vioQxSWV9XhUdoT9DixserU,1382
28
+ origin/db/otp_codes.py,sha256=A1bL3x7j1HLbTfsl7WbrmuLBqSxBtRnyaJUTXVLu8wI,4417
29
+ origin/db/passkey_challenges.py,sha256=VZuDZMIFtrci8HT4tAApKgiNCoin75zDyMz59HHrYuw,3276
30
+ origin/db/passkey_credentials.py,sha256=mOPK1f05gA5Nam_E2rsSNmK4B--8FaaGNoEcQEuOypY,2160
31
+ origin/db/person_identities.py,sha256=fgd3jVfNnaXqQCEk3JCMDzGHxKoVGJrp6GhkP7aNU80,3455
32
+ origin/db/persons.py,sha256=_zMVsYBGggC0Vin8lSkM6IZLglEdG53U-PR3CPKAfOA,2113
33
+ origin/db/platform_settings.py,sha256=2ipSAYQSVLJJ5e-zdy-K6s547ZGsXDEVelO0pgfLEPc,1504
34
+ origin/db/server_credentials.py,sha256=qIc06kOg3deVIPFdEXuPiQ_jRFJ_mvAC9BSZt0fw6XQ,2770
35
+ origin/db/session.py,sha256=F0NFOJSG0JyE2KbGi-rpWuDPhwwztyt5lNxv6uTVG24,6710
36
+ origin/models/__init__.py,sha256=zGtFywaPcuLA3r8QyJRDKqTR_3NBs5UZYJaM4uWPf34,890
37
+ origin/models/oauth_client.py,sha256=EylSKx_i8xbUFkQlHoqgLqoq1xuNh3J55aml9DD0HAw,4104
38
+ origin/models/otp_code.py,sha256=pGkf6iZvPMof4oLuJ6FDfzZqfdWJ3T_e4bStR5UyWNg,997
39
+ origin/models/passkey_challenge.py,sha256=Bd0WC9yUqcu_flGfD9yZDGUkkHA6o3dHKROsRxfvjZE,2023
40
+ origin/models/passkey_credential.py,sha256=mKQ-ow8INClhBdLYIbzZdqQV05LWuDpoygTqbSCVPcc,1310
41
+ origin/models/person.py,sha256=DCeV83k5CnfQVF4aFzHl3MQzMlB9sEz0rAVKGgKcTXE,1340
42
+ origin/models/person_identity.py,sha256=qR0v3k4b1NvsmrOPXxKQsU-DG7JCgVPMIRix7TO-iBY,2838
43
+ origin/models/platform_setting.py,sha256=kuTMdts46JHTRelIbb80oa5jT-Whwxto0cqjF0QOFl4,1075
44
+ origin/models/server_credential.py,sha256=mL9-yL79rM8SZBHuKSkBWugEb8othrisvm1s0FD7fpo,1512
45
+ origin/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
+ origin/routers/auth_router.py,sha256=p_Pc-r6B4-C6ILvryrB1YsLQp5d44rNTt0ewtJTSIj4,134964
47
+ origin/routers/oracle_router.py,sha256=CVF35YO8wUopMjLpU0aeOAPgAjBN-pTiTtLXLJiJuu4,7787
48
+ origin/routers/otp_router.py,sha256=Qfd_VDCt8PcSGIMCMR_er_0yVGcTiv46jznmcuujE3s,2952
49
+ origin/routers/passkey_router.py,sha256=maqKyC1Tb5_koUH3JhXy-Ngsf5OGkck3_iO5xvvCMuQ,9415
50
+ origin/routers/server_credentials_router.py,sha256=jq179ZFvUSbMtFJZgKc_NUkCBDYQOKAG91sr4ZEhUgE,8418
51
+ origin/routers/setup_router.py,sha256=ZTUs2To1BWkL6vNTLr89qnEBjSdYXuao2uk26K9OnaE,15516
52
+ origin/routers/system_router.py,sha256=oYaFp7-PH3fQbu8a5arbx4uyfC4Z32LsjgkVB5_oObs,6337
53
+ origin/scripts/__init__.py,sha256=b-zNfy0ygilPGV7Lc2LefKjWjEz8_3XOGjfA2A1kddU,338
54
+ origin/scripts/emit_trust_anchor.py,sha256=5jkpS3jrj8McAQGe0QjSrLOgkoto_QQCxYmA7ukf5yU,6780
55
+ origin/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
56
+ origin/services/auth_service.py,sha256=VEAUM9XGWLpUn69x9sr_npQwTWjhXTFtvqiZ919M3EA,23934
57
+ origin/services/auth_verifier.py,sha256=UV78OWj69GRJhYpPDnMC_8wqkt5WLmojH686-RGtMBk,3534
58
+ origin/services/dependencies.py,sha256=pDbaeHvbtsdumpmYRm0V_FAopKdPTIDksWwwR3uv3P0,11420
59
+ origin/services/email_service.py,sha256=AVrnUKgi1ld_d0OMbLc_RNBO8VDxUXM1r9VELoNjytA,17559
60
+ origin/services/guess_budget.py,sha256=9XZL2dNpv5jAyOLdKP0ExlG8tt8J8kFvTkyUPKaVbhs,10407
61
+ origin/services/key_oracle.py,sha256=IXudna6_D-Q3PPs-vN1dh6r63uhTcG43BkouUQgcu8g,2140
62
+ origin/services/manifest.py,sha256=ZcnT0nzWWckXos6IzBMIkMclECvzGCjSe4v3a309Tzg,4921
63
+ origin/services/oidc_providers.py,sha256=LBHaSvLtJ7bSepXmphby3BmqOzaud-YwTufCj24y25g,4228
64
+ origin/services/otp_service.py,sha256=9qB344rYy9O9KWL4UH5mxSW71_IOMLhhsIoDKSU3cgs,8757
65
+ origin/services/passkey_service.py,sha256=3Xu0-PG0v2_rXJh4Gx075lL8KnRoELsagUxLsZtJWtc,16835
66
+ origin/services/person_service.py,sha256=xTZEHcN6x1C5J2PgLSAX7E0QjFG_OVFSQLI7VTJio8g,15400
67
+ origin/services/platform_settings_service.py,sha256=nfV2QghtzFtxfPChHP6WsYvWW9ARVkDvjm5pFYtZ4r8,8111
68
+ origin/services/shamir.py,sha256=0brh816IA8VAYIGUx-bTVQxAs0XSTbsZSWqvcwjiLvk,3145
69
+ origin/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
+ origin/tests/conftest.py,sha256=7cTT3t9CV6k2AKHl9ULO9DXDXf4tVktmYC4nmyS05IU,4925
71
+ origin/tests/test_access_token_lifetime.py,sha256=5uddPUlMTC3mfYK3M5wHToFt4FImhAjAZzjo5vWQEYw,10749
72
+ origin/tests/test_account_surface.py,sha256=YCrVXJ9sFf9-50SEycXYLiKpFC66x2MHDvmitrvrKDU,5633
73
+ origin/tests/test_auth_foundation.py,sha256=aq6YAD7drrOVRTPhW4jpo69Y7SppOdxeT97-PBgIGV4,12283
74
+ origin/tests/test_auth_policy_matrix.py,sha256=v1_0E05UCFeZfOxmjgH8fszDX-H13DXqpfFs3wx6r5I,7642
75
+ origin/tests/test_authorize_client_enforcement.py,sha256=KQY9F9VhQzVC4Cglvq1A9QWUFrrDnE52LVt7DCp97aI,18115
76
+ origin/tests/test_authorize_local_methods.py,sha256=XHscW9DtlCj8-tp_cerBUMi1EoSTUbeK-QLZlRJ3Wu0,20230
77
+ origin/tests/test_bootstrap_claim.py,sha256=jbLHqVwcVNvP0iimqHTfyvnbj70o7ap_fwWh2esCQ4c,10371
78
+ origin/tests/test_browser_facing_defaults.py,sha256=FOA05_URBhqZ_03W8KxHCitc3sbF9fwoROnegcjiHBU,8626
79
+ origin/tests/test_delegation_token.py,sha256=g_UH5U0YIx7iocl5XliYMM6qreEoNnpk6OqZveuvR0E,13936
80
+ origin/tests/test_disclosure_boundaries.py,sha256=jkhbVbnEGw0SLrJiXU8RAlLJAVoxpSVN2GHOKDKmzUI,36069
81
+ origin/tests/test_discovery_is_configured_not_requested.py,sha256=g0BC5hJjXUbIogVkda51NqC06zBhQty8Xx3yy7iW_cE,7294
82
+ origin/tests/test_dynamic_client_registration.py,sha256=lHyc2QB7pbEQh0NgrIx2upV7uaGGrReGBdkW5R_Uatk,21974
83
+ origin/tests/test_email_service.py,sha256=d00wq7svHwytlpEv-BmcDftqKJxkys9IQwKVfNB1ik0,6609
84
+ origin/tests/test_healthz.py,sha256=xnwnEnkaZGYKzpO_jGxSg7ubiuMMkBrVtYT9xFeBKTE,330
85
+ origin/tests/test_jwks.py,sha256=KJiQd3Oli2hPJ3kK3YvQsU3v-07J3SHyjNBNCwawBMc,1143
86
+ origin/tests/test_mcp_client_token_scoping.py,sha256=zhCtSV9SgFkePTWCQmxllZdlJwQCzAZT3ixbIADkZ_w,15495
87
+ origin/tests/test_oracle_router_auth.py,sha256=8fzHm834G8BLFlCO93lPOQMH7zVj_iz2DC64y-MhdY4,5305
88
+ origin/tests/test_origin_refuses_multiple_workers.py,sha256=q9Y-RtXFY8AVH1kZqj3u1hB_W2euvdMzvfNkyAXHyP0,4449
89
+ origin/tests/test_otp_bruteforce_and_stall.py,sha256=4Rw5Z0pUQbVCRMsfeZG3JsYMLO99ac46NMtfuq7WzmE,13112
90
+ origin/tests/test_passkey_challenge_replay.py,sha256=UGSvuF5tAYhhdyOkUGo4hsVHGg6gguPsvnQsFslVRL0,5870
91
+ origin/tests/test_password_guess_budget.py,sha256=i_QTxRr7epD4KFE-oy8rPjVLlZN1Co58y4FcslFvThE,15603
92
+ origin/tests/test_platform_settings_and_setup_hardening.py,sha256=PzTMw_yKsigV38jkK9TwWz1mN0xMB7s3ECH5EOfVwZI,11558
93
+ origin/tests/test_router_auth.py,sha256=k5XoDkePyWWK8nqNXJ9squBF5PGyQ7WIfqgEYAVoeeY,40303
94
+ origin/tests/test_server_credentials_authz.py,sha256=ysLlAHc2G7yZlP9Iw7XfluJ2lZmepdCDKAf7EKMeB6o,5681
95
+ origin/tests/test_sqlite_write_contention.py,sha256=GWlGSGVmI_DBalVKvcMpFq-h6kf7BJWZ7ZF0UZ-yhSI,6854
96
+ origin/tests/test_the_package_ships_what_it_serves.py,sha256=-laL798l9Vuvr3_sKlrTsEG43Z5jAZZYQnXvVqa6MuA,11802
97
+ origin/tests/test_trust_anchor_emission.py,sha256=SOSIQM_obyiZMbsdOWSOmKPU9yTJG4AtAIizc8vj2fM,7796
98
+ origin/tests/test_trust_floor_has_one_implementation.py,sha256=0DusgnA0gu8_UJCZbtEZzfsjCgGFUzxfhGBqCy5y1l8,7572
99
+ origin/tests/test_wellknown_agience.py,sha256=NU4pJhzV6FwF02M-Bakhg1yWxjv7F2bJf4s_hiqgBFs,5666
100
+ origin/web/account.html,sha256=ydBz0b80bWggTZVp0k1Ug1Zrgty4_8ybhOPah-RRDmU,2012
101
+ origin/web/app.css,sha256=xix4qAZnypUX_uKkpvHbkMLea9QQjMvAwL_2znWwp9U,3917
102
+ origin/web/app.js,sha256=TV3J7slrJkkr-1JJdRbNFMT0ZLXyXBD6W9FnQ0j46K0,2566
103
+ origin/web/bg.js,sha256=bl0_EEUivZ4vUbtuoJhvPJS7t3tclxVsRnU78NFqBGw,2625
104
+ origin/web/favicon.png,sha256=H4hdz_kj8CVsbfuCQ1vEa3rvj4CVboLGkM2q5kwUfCk,85431
105
+ origin/web/index.html,sha256=fKPDeU1ki0WAXi3bBgtEVIlGtOueHFeEKNr8v8sao1o,5377
106
+ origin/web/logo_h.png,sha256=XFsdIjGx1wCK57Nypk5uaLMm414dZVLnEhLiI7YJSac,121766
107
+ origin/web/logo_v.png,sha256=e-HdnPvFV1UIYPYcln0svl-SelkgCGXxZdHz__lH8ok,160974
108
+ origin/web/reset-password.html,sha256=gTguKNb911t8zshxLP7HY0CZvQbHZ-1-omRboLSKI2E,3220
109
+ origin/web/verify-email.html,sha256=pnoC5vCyRRaBlTykFf1zKPVRO-bRgtBsTR1NNXsnzHQ,2112
110
+ agience_origin-0.1.0.dist-info/METADATA,sha256=Qt4hXN0SzgJGUQNxo_DWWKVJz-2TWdrc9FPGHF6Q3pM,1528
111
+ agience_origin-0.1.0.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
112
+ agience_origin-0.1.0.dist-info/entry_points.txt,sha256=XWbyGGv-mn8LCHSG1vHl59HHnRPIF4gBEHx_Xp6xnn8,77
113
+ agience_origin-0.1.0.dist-info/top_level.txt,sha256=Si36SEfMPmkauzjSBvYsUFnIHadyRiWAENVPJwOIO-c,7
114
+ agience_origin-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (84.0.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ origin-emit-anchor = origin.scripts.emit_trust_anchor:main