@antseed/node 0.2.117 → 0.2.119
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/README.md +30 -0
- package/dist/discovery/display-name.d.ts +8 -0
- package/dist/discovery/display-name.d.ts.map +1 -0
- package/dist/discovery/display-name.js +17 -0
- package/dist/discovery/display-name.js.map +1 -0
- package/dist/discovery/domain-verification.d.ts.map +1 -1
- package/dist/discovery/domain-verification.js +2 -1
- package/dist/discovery/domain-verification.js.map +1 -1
- package/dist/discovery/github-verification.d.ts.map +1 -1
- package/dist/discovery/github-verification.js +5 -1
- package/dist/discovery/github-verification.js.map +1 -1
- package/dist/discovery/index.d.ts +1 -0
- package/dist/discovery/index.d.ts.map +1 -1
- package/dist/discovery/index.js +1 -0
- package/dist/discovery/index.js.map +1 -1
- package/dist/discovery/service-catalog.d.ts +2 -1
- package/dist/discovery/service-catalog.d.ts.map +1 -1
- package/dist/discovery/service-catalog.js +2 -0
- package/dist/discovery/service-catalog.js.map +1 -1
- package/dist/discovery/verifier-capabilities.d.ts +9 -0
- package/dist/discovery/verifier-capabilities.d.ts.map +1 -0
- package/dist/discovery/verifier-capabilities.js +35 -0
- package/dist/discovery/verifier-capabilities.js.map +1 -0
- package/dist/index.d.ts +20 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -1
- package/dist/index.js.map +1 -1
- package/dist/node.d.ts +17 -3
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +117 -82
- package/dist/node.js.map +1 -1
- package/dist/p2p/identity.js +1 -1
- package/dist/p2p/identity.js.map +1 -1
- package/dist/payments/chain-config.d.ts +53 -0
- package/dist/payments/chain-config.d.ts.map +1 -1
- package/dist/payments/chain-config.js +43 -23
- package/dist/payments/chain-config.js.map +1 -1
- package/dist/payments/contract-stack.d.ts +53 -0
- package/dist/payments/contract-stack.d.ts.map +1 -0
- package/dist/payments/contract-stack.js +97 -0
- package/dist/payments/contract-stack.js.map +1 -0
- package/dist/payments/evm/ants-token-client.d.ts +7 -0
- package/dist/payments/evm/ants-token-client.d.ts.map +1 -1
- package/dist/payments/evm/ants-token-client.js +37 -1
- package/dist/payments/evm/ants-token-client.js.map +1 -1
- package/dist/payments/evm/emissions-client.d.ts +3 -0
- package/dist/payments/evm/emissions-client.d.ts.map +1 -1
- package/dist/payments/evm/emissions-client.js +13 -0
- package/dist/payments/evm/emissions-client.js.map +1 -1
- package/dist/payments/evm/emissions-gate-client.d.ts +51 -0
- package/dist/payments/evm/emissions-gate-client.d.ts.map +1 -0
- package/dist/payments/evm/emissions-gate-client.js +55 -0
- package/dist/payments/evm/emissions-gate-client.js.map +1 -0
- package/dist/payments/evm/multicall.d.ts +22 -0
- package/dist/payments/evm/multicall.d.ts.map +1 -0
- package/dist/payments/evm/multicall.js +73 -0
- package/dist/payments/evm/multicall.js.map +1 -0
- package/dist/payments/evm/points-policy-registry-client.d.ts +21 -0
- package/dist/payments/evm/points-policy-registry-client.d.ts.map +1 -0
- package/dist/payments/evm/points-policy-registry-client.js +34 -0
- package/dist/payments/evm/points-policy-registry-client.js.map +1 -0
- package/dist/payments/evm/position-init-client.d.ts +18 -0
- package/dist/payments/evm/position-init-client.d.ts.map +1 -0
- package/dist/payments/evm/position-init-client.js +19 -0
- package/dist/payments/evm/position-init-client.js.map +1 -0
- package/dist/payments/evm/registry-client.d.ts +17 -0
- package/dist/payments/evm/registry-client.d.ts.map +1 -0
- package/dist/payments/evm/registry-client.js +24 -0
- package/dist/payments/evm/registry-client.js.map +1 -0
- package/dist/payments/evm/seller-pools-client.d.ts +95 -0
- package/dist/payments/evm/seller-pools-client.d.ts.map +1 -0
- package/dist/payments/evm/seller-pools-client.js +193 -0
- package/dist/payments/evm/seller-pools-client.js.map +1 -0
- package/dist/payments/evm/seller-pools-rewards-client.d.ts +36 -0
- package/dist/payments/evm/seller-pools-rewards-client.d.ts.map +1 -0
- package/dist/payments/evm/seller-pools-rewards-client.js +126 -0
- package/dist/payments/evm/seller-pools-rewards-client.js.map +1 -0
- package/dist/payments/evm/seller-registry-client.d.ts +28 -0
- package/dist/payments/evm/seller-registry-client.d.ts.map +1 -0
- package/dist/payments/evm/seller-registry-client.js +60 -0
- package/dist/payments/evm/seller-registry-client.js.map +1 -0
- package/dist/payments/evm/seller-rewards-pool-client.d.ts +24 -0
- package/dist/payments/evm/seller-rewards-pool-client.d.ts.map +1 -0
- package/dist/payments/evm/seller-rewards-pool-client.js +27 -0
- package/dist/payments/evm/seller-rewards-pool-client.js.map +1 -0
- package/dist/payments/evm/trust-signals-client.d.ts +54 -0
- package/dist/payments/evm/trust-signals-client.d.ts.map +1 -0
- package/dist/payments/evm/trust-signals-client.js +162 -0
- package/dist/payments/evm/trust-signals-client.js.map +1 -0
- package/dist/payments/evm/usage-accounting-client.d.ts +49 -0
- package/dist/payments/evm/usage-accounting-client.d.ts.map +1 -0
- package/dist/payments/evm/usage-accounting-client.js +82 -0
- package/dist/payments/evm/usage-accounting-client.js.map +1 -0
- package/dist/payments/evm/usage-rewards-client.d.ts +43 -0
- package/dist/payments/evm/usage-rewards-client.d.ts.map +1 -0
- package/dist/payments/evm/usage-rewards-client.js +62 -0
- package/dist/payments/evm/usage-rewards-client.js.map +1 -0
- package/dist/payments/evm/wash-trading-registry-client.d.ts +105 -0
- package/dist/payments/evm/wash-trading-registry-client.d.ts.map +1 -0
- package/dist/payments/evm/wash-trading-registry-client.js +170 -0
- package/dist/payments/evm/wash-trading-registry-client.js.map +1 -0
- package/dist/payments/generated-contract-addresses.d.ts +59 -0
- package/dist/payments/generated-contract-addresses.d.ts.map +1 -0
- package/dist/payments/generated-contract-addresses.js +60 -0
- package/dist/payments/generated-contract-addresses.js.map +1 -0
- package/dist/payments/index.d.ts +28 -0
- package/dist/payments/index.d.ts.map +1 -1
- package/dist/payments/index.js +14 -0
- package/dist/payments/index.js.map +1 -1
- package/dist/payments/reward-claims.d.ts +28 -0
- package/dist/payments/reward-claims.d.ts.map +1 -0
- package/dist/payments/reward-claims.js +67 -0
- package/dist/payments/reward-claims.js.map +1 -0
- package/dist/payments/reward-preview.d.ts +19 -0
- package/dist/payments/reward-preview.d.ts.map +1 -0
- package/dist/payments/reward-preview.js +36 -0
- package/dist/payments/reward-preview.js.map +1 -0
- package/dist/payments/seller-payment-manager.d.ts +9 -0
- package/dist/payments/seller-payment-manager.d.ts.map +1 -1
- package/dist/payments/seller-payment-manager.js +45 -0
- package/dist/payments/seller-payment-manager.js.map +1 -1
- package/dist/reputation/identity-history.d.ts +75 -0
- package/dist/reputation/identity-history.d.ts.map +1 -0
- package/dist/reputation/identity-history.js +258 -0
- package/dist/reputation/identity-history.js.map +1 -0
- package/dist/reputation/model-reputation.d.ts +3 -2
- package/dist/reputation/model-reputation.d.ts.map +1 -1
- package/dist/reputation/model-reputation.js +2 -9
- package/dist/reputation/model-reputation.js.map +1 -1
- package/dist/reputation/public-json.d.ts +9 -0
- package/dist/reputation/public-json.d.ts.map +1 -0
- package/dist/reputation/public-json.js +98 -0
- package/dist/reputation/public-json.js.map +1 -0
- package/dist/reputation/sybil-risk.d.ts +35 -0
- package/dist/reputation/sybil-risk.d.ts.map +1 -0
- package/dist/reputation/sybil-risk.js +136 -0
- package/dist/reputation/sybil-risk.js.map +1 -0
- package/dist/reputation/trust-score.d.ts +83 -0
- package/dist/reputation/trust-score.d.ts.map +1 -0
- package/dist/reputation/trust-score.js +91 -0
- package/dist/reputation/trust-score.js.map +1 -0
- package/dist/routing/default-router.d.ts +0 -1
- package/dist/routing/default-router.d.ts.map +1 -1
- package/dist/routing/default-router.js +2 -12
- package/dist/routing/default-router.js.map +1 -1
- package/dist/routing/model-route-ranking.d.ts +0 -1
- package/dist/routing/model-route-ranking.d.ts.map +1 -1
- package/dist/routing/model-route-ranking.js.map +1 -1
- package/dist/seller-request-handler.d.ts.map +1 -1
- package/dist/seller-request-handler.js +12 -0
- package/dist/seller-request-handler.js.map +1 -1
- package/dist/types/peer.d.ts +27 -18
- package/dist/types/peer.d.ts.map +1 -1
- package/dist/verification/tee-status.d.ts +35 -0
- package/dist/verification/tee-status.d.ts.map +1 -0
- package/dist/verification/tee-status.js +21 -0
- package/dist/verification/tee-status.js.map +1 -0
- package/package.json +14 -6
- package/dist/reputation/on-chain-reputation.d.ts +0 -84
- package/dist/reputation/on-chain-reputation.d.ts.map +0 -1
- package/dist/reputation/on-chain-reputation.js +0 -290
- package/dist/reputation/on-chain-reputation.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seller-payment-manager.js","sourceRoot":"","sources":["../../src/payments/seller-payment-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seller-payment-manager.js","sourceRoot":"","sources":["../../src/payments/seller-payment-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { PeerInfo, PeerVerificationResults } from '../types/peer.js';
|
|
2
|
+
import { fetchPublicJson } from './public-json.js';
|
|
3
|
+
/**
|
|
4
|
+
* Public history for a peer's verified identities, collected buyer-locally.
|
|
5
|
+
*
|
|
6
|
+
* Only identities whose ownership proof verified (see `discovery/*-verification`)
|
|
7
|
+
* are looked up: a GitHub account's public repositories and creation date, or a
|
|
8
|
+
* domain's registration date via the authoritative RDAP registry. The result
|
|
9
|
+
* is the `identity` part of the trust score (see `trust-score.ts`).
|
|
10
|
+
*/
|
|
11
|
+
export declare const IDENTITY_HISTORY_VERSION = 1;
|
|
12
|
+
/** Evidence and the ownership verification behind it are usable for seven days. */
|
|
13
|
+
export declare const IDENTITY_HISTORY_TTL_MS: number;
|
|
14
|
+
/** Maximum points a verified GitHub portfolio can earn. */
|
|
15
|
+
export declare const IDENTITY_GITHUB_MAX_POINTS = 70;
|
|
16
|
+
/** Maximum points a verified domain's registration age can earn. */
|
|
17
|
+
export declare const IDENTITY_DOMAIN_MAX_POINTS = 12;
|
|
18
|
+
export interface GithubProjectHistory {
|
|
19
|
+
id: number;
|
|
20
|
+
name: string;
|
|
21
|
+
createdAtMs: number;
|
|
22
|
+
stars: number;
|
|
23
|
+
archived: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface IdentityHistory {
|
|
26
|
+
kind: 'github' | 'domain';
|
|
27
|
+
claim: string;
|
|
28
|
+
status: 'available' | 'unavailable';
|
|
29
|
+
fetchedAtMs: number;
|
|
30
|
+
/** `github:<numeric account id>` or `domain:<name>`; stable across renames. */
|
|
31
|
+
identityId?: string;
|
|
32
|
+
createdAtMs?: number;
|
|
33
|
+
projects?: GithubProjectHistory[];
|
|
34
|
+
truncated?: boolean;
|
|
35
|
+
source?: string;
|
|
36
|
+
}
|
|
37
|
+
export interface IdentityHistoryEvidence {
|
|
38
|
+
version: typeof IDENTITY_HISTORY_VERSION;
|
|
39
|
+
identities: IdentityHistory[];
|
|
40
|
+
}
|
|
41
|
+
export declare class IdentityHistoryCollector {
|
|
42
|
+
private readonly getJson;
|
|
43
|
+
private readonly now;
|
|
44
|
+
private cache;
|
|
45
|
+
private bootstrap;
|
|
46
|
+
constructor(getJson?: typeof fetchPublicJson, now?: () => number);
|
|
47
|
+
collect(results: PeerVerificationResults): Promise<IdentityHistoryEvidence>;
|
|
48
|
+
private load;
|
|
49
|
+
/** One account lookup (done by the caller) plus at most four pages of repositories. */
|
|
50
|
+
private github;
|
|
51
|
+
/** IANA RDAP bootstrap (cached) plus one registry query; the registration must match the exact domain. */
|
|
52
|
+
private domain;
|
|
53
|
+
}
|
|
54
|
+
export interface IdentityScore {
|
|
55
|
+
kind: 'github' | 'domain';
|
|
56
|
+
claim: string;
|
|
57
|
+
identityId: string;
|
|
58
|
+
points: number;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Score the strongest verified identity, or `null` when none has usable
|
|
62
|
+
* evidence. Identities never add up: several accounts or domains owned by one
|
|
63
|
+
* operator are not independent evidence.
|
|
64
|
+
*
|
|
65
|
+
* GitHub (max 70): original, non-fork repositories at least three months old
|
|
66
|
+
* with at least five stars, excluding the ownership-proof repository.
|
|
67
|
+
* 40 * min(1, sum(log2(1 + min(stars, 500))) / 40) stars
|
|
68
|
+
* + 20 * min(1, projects / 8) breadth
|
|
69
|
+
* + 10 * min(1, oldest project years / 3) age
|
|
70
|
+
* Archived repositories count at 20%. An empty or zero-star account earns 0.
|
|
71
|
+
*
|
|
72
|
+
* Domain (max 12): 12 * min(1, registration years / 5).
|
|
73
|
+
*/
|
|
74
|
+
export declare function scoreIdentityHistory(peer: Pick<PeerInfo, 'peerId' | 'metadata' | 'verificationResults'>, nowMs?: number): IdentityScore | null;
|
|
75
|
+
//# sourceMappingURL=identity-history.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-history.d.ts","sourceRoot":"","sources":["../../src/reputation/identity-history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAkB,MAAM,kBAAkB,CAAC;AAEnE;;;;;;;GAOG;AAEH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,mFAAmF;AACnF,eAAO,MAAM,uBAAuB,QAAiB,CAAC;AACtD,2DAA2D;AAC3D,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,oEAAoE;AACpE,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAM7C,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,GAAG,aAAa,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,wBAAwB,CAAC;IACzC,UAAU,EAAE,eAAe,EAAE,CAAC;CAC/B;AAcD,qBAAa,wBAAwB;IAIvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAAoB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAH5E,OAAO,CAAC,KAAK,CAA8E;IAC3F,OAAO,CAAC,SAAS,CAA8D;gBAElD,OAAO,yBAAkB,EAAmB,GAAG,eAAW;IAEjF,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC;YA4CnE,IAAI;IASlB,uFAAuF;YACzE,MAAM;IAuBpB,0GAA0G;YAC5F,MAAM;CAwBrB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAQD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,UAAU,GAAG,qBAAqB,CAAC,EAAE,KAAK,SAAa,GAAG,aAAa,GAAG,IAAI,CA4BlJ"}
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
import { fetchPublicJson, publicHttpsUrl } from './public-json.js';
|
|
2
|
+
/**
|
|
3
|
+
* Public history for a peer's verified identities, collected buyer-locally.
|
|
4
|
+
*
|
|
5
|
+
* Only identities whose ownership proof verified (see `discovery/*-verification`)
|
|
6
|
+
* are looked up: a GitHub account's public repositories and creation date, or a
|
|
7
|
+
* domain's registration date via the authoritative RDAP registry. The result
|
|
8
|
+
* is the `identity` part of the trust score (see `trust-score.ts`).
|
|
9
|
+
*/
|
|
10
|
+
export const IDENTITY_HISTORY_VERSION = 1;
|
|
11
|
+
/** Evidence and the ownership verification behind it are usable for seven days. */
|
|
12
|
+
export const IDENTITY_HISTORY_TTL_MS = 7 * 86_400_000;
|
|
13
|
+
/** Maximum points a verified GitHub portfolio can earn. */
|
|
14
|
+
export const IDENTITY_GITHUB_MAX_POINTS = 70;
|
|
15
|
+
/** Maximum points a verified domain's registration age can earn. */
|
|
16
|
+
export const IDENTITY_DOMAIN_MAX_POINTS = 12;
|
|
17
|
+
const RETRY_MS = 60 * 60_000;
|
|
18
|
+
const MAX_IDENTITIES = 8;
|
|
19
|
+
const MAX_CACHE_ENTRIES = 512;
|
|
20
|
+
function record(value) {
|
|
21
|
+
return value && typeof value === 'object' && !Array.isArray(value) ? value : {};
|
|
22
|
+
}
|
|
23
|
+
function timestamp(value) {
|
|
24
|
+
return typeof value === 'string' ? Date.parse(value) : NaN;
|
|
25
|
+
}
|
|
26
|
+
function id(value) {
|
|
27
|
+
return typeof value === 'number' && Number.isSafeInteger(value) && value > 0;
|
|
28
|
+
}
|
|
29
|
+
export class IdentityHistoryCollector {
|
|
30
|
+
getJson;
|
|
31
|
+
now;
|
|
32
|
+
cache = new Map();
|
|
33
|
+
bootstrap;
|
|
34
|
+
constructor(getJson = fetchPublicJson, now = Date.now) {
|
|
35
|
+
this.getJson = getJson;
|
|
36
|
+
this.now = now;
|
|
37
|
+
}
|
|
38
|
+
async collect(results) {
|
|
39
|
+
const claims = new Map();
|
|
40
|
+
for (const result of results.github) {
|
|
41
|
+
if (result.verified && /^[a-z0-9-]{1,39}$/i.test(result.username)) {
|
|
42
|
+
const claim = result.username.toLowerCase();
|
|
43
|
+
claims.set(`github:${claim}`, { kind: 'github', claim });
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
for (const result of results.domains) {
|
|
47
|
+
if (result.verified && /^[a-z0-9.-]{1,253}$/i.test(result.domain)) {
|
|
48
|
+
const claim = result.domain.toLowerCase();
|
|
49
|
+
claims.set(`domain:${claim}`, { kind: 'domain', claim });
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const identities = [];
|
|
53
|
+
for (const [claimKey, { kind, claim }] of [...claims].slice(0, MAX_IDENTITIES)) {
|
|
54
|
+
// Resolve the username to its numeric account id on every pass so a
|
|
55
|
+
// reassigned username cannot inherit the previous owner's cached history.
|
|
56
|
+
let account;
|
|
57
|
+
if (kind === 'github') {
|
|
58
|
+
try {
|
|
59
|
+
account = record(await this.getJson(`https://api.github.com/users/${claim}`));
|
|
60
|
+
if (!id(account.id) || typeof account.login !== 'string' || account.login.toLowerCase() !== claim
|
|
61
|
+
|| !Number.isFinite(timestamp(account.created_at)))
|
|
62
|
+
throw new Error('Invalid account');
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
identities.push({ kind, claim, status: 'unavailable', fetchedAtMs: this.now() });
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
const key = account ? `github:${account.id}` : claimKey;
|
|
70
|
+
let cached = this.cache.get(key);
|
|
71
|
+
if (!cached || cached.expiresAt <= this.now()) {
|
|
72
|
+
const result = this.load(kind, claim, account);
|
|
73
|
+
cached = { expiresAt: this.now() + RETRY_MS, result };
|
|
74
|
+
if (this.cache.size >= MAX_CACHE_ENTRIES)
|
|
75
|
+
this.cache.delete(this.cache.keys().next().value);
|
|
76
|
+
this.cache.set(key, cached);
|
|
77
|
+
const entry = cached;
|
|
78
|
+
void result.then((evidence) => { entry.expiresAt = evidence.fetchedAtMs + (evidence.status === 'available' ? IDENTITY_HISTORY_TTL_MS : RETRY_MS); });
|
|
79
|
+
}
|
|
80
|
+
identities.push({ ...await cached.result, claim });
|
|
81
|
+
}
|
|
82
|
+
return { version: IDENTITY_HISTORY_VERSION, identities };
|
|
83
|
+
}
|
|
84
|
+
async load(kind, claim, account) {
|
|
85
|
+
try {
|
|
86
|
+
const evidence = kind === 'github' ? await this.github(claim, account) : await this.domain(claim);
|
|
87
|
+
return { ...evidence, kind, claim, status: 'available', fetchedAtMs: this.now() };
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
return { kind, claim, status: 'unavailable', fetchedAtMs: this.now() };
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/** One account lookup (done by the caller) plus at most four pages of repositories. */
|
|
94
|
+
async github(claim, account) {
|
|
95
|
+
const source = `https://api.github.com/users/${claim}`;
|
|
96
|
+
const projects = new Map();
|
|
97
|
+
let truncated = false;
|
|
98
|
+
for (let page = 1; page <= 4; page++) {
|
|
99
|
+
const data = await this.getJson(`https://api.github.com/users/${claim}/repos?per_page=100&page=${page}&sort=created&direction=asc`);
|
|
100
|
+
if (!Array.isArray(data) || data.length > 100)
|
|
101
|
+
throw new Error('Invalid repository page');
|
|
102
|
+
for (const value of data) {
|
|
103
|
+
const repo = record(value);
|
|
104
|
+
if (record(repo.owner).id !== account.id || repo.fork !== false || !id(repo.id)
|
|
105
|
+
|| typeof repo.size !== 'number' || !Number.isFinite(repo.size) || repo.size <= 0 || repo.disabled === true
|
|
106
|
+
|| typeof repo.name !== 'string' || !Number.isFinite(timestamp(repo.created_at))
|
|
107
|
+
|| typeof repo.stargazers_count !== 'number' || !Number.isSafeInteger(repo.stargazers_count)
|
|
108
|
+
|| repo.stargazers_count < 0 || typeof repo.archived !== 'boolean')
|
|
109
|
+
continue;
|
|
110
|
+
projects.set(repo.id, { id: repo.id, name: repo.name, createdAtMs: timestamp(repo.created_at),
|
|
111
|
+
stars: repo.stargazers_count, archived: repo.archived });
|
|
112
|
+
}
|
|
113
|
+
truncated = data.length === 100;
|
|
114
|
+
if (!truncated)
|
|
115
|
+
break;
|
|
116
|
+
}
|
|
117
|
+
return { identityId: `github:${account.id}`, createdAtMs: timestamp(account.created_at), projects: [...projects.values()], truncated, source };
|
|
118
|
+
}
|
|
119
|
+
/** IANA RDAP bootstrap (cached) plus one registry query; the registration must match the exact domain. */
|
|
120
|
+
async domain(claim) {
|
|
121
|
+
if (!this.bootstrap || this.bootstrap.expiresAt <= this.now()) {
|
|
122
|
+
this.bootstrap = { expiresAt: this.now() + RETRY_MS, result: this.getJson('https://data.iana.org/rdap/dns.json') };
|
|
123
|
+
}
|
|
124
|
+
const services = record(await this.bootstrap.result).services;
|
|
125
|
+
if (!Array.isArray(services))
|
|
126
|
+
throw new Error('Invalid RDAP bootstrap');
|
|
127
|
+
const tld = claim.split('.').at(-1);
|
|
128
|
+
const service = services.find((entry) => Array.isArray(entry) && Array.isArray(entry[0]) && entry[0].includes(tld));
|
|
129
|
+
if (!Array.isArray(service) || !Array.isArray(service[1]))
|
|
130
|
+
throw new Error('No authoritative RDAP service');
|
|
131
|
+
const base = service[1].find((value) => typeof value === 'string' && value.startsWith('https://'));
|
|
132
|
+
if (typeof base !== 'string')
|
|
133
|
+
throw new Error('No HTTPS RDAP service');
|
|
134
|
+
const url = publicHttpsUrl(base);
|
|
135
|
+
url.pathname = `${url.pathname.replace(/\/$/, '')}/domain/${encodeURIComponent(claim)}`;
|
|
136
|
+
url.search = '';
|
|
137
|
+
url.hash = '';
|
|
138
|
+
const domain = record(await this.getJson(url.href));
|
|
139
|
+
if (domain.objectClassName !== 'domain' || typeof domain.ldhName !== 'string' || domain.ldhName.toLowerCase() !== claim) {
|
|
140
|
+
throw new Error('RDAP registration does not match verified domain');
|
|
141
|
+
}
|
|
142
|
+
const events = Array.isArray(domain.events) ? domain.events : [];
|
|
143
|
+
const dates = events.map(record).filter((event) => event.eventAction === 'registration').map((event) => timestamp(event.eventDate));
|
|
144
|
+
if (dates.length !== 1 || !Number.isFinite(dates[0]))
|
|
145
|
+
throw new Error('Missing unambiguous registration');
|
|
146
|
+
return { identityId: `domain:${claim}`, createdAtMs: dates[0], source: url.href };
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
const YEAR_MS = 365.25 * 86_400_000;
|
|
150
|
+
const MAX_PROJECTS_SCORED = 400;
|
|
151
|
+
const MIN_PROJECT_STARS = 5;
|
|
152
|
+
const MIN_PROJECT_AGE_YEARS = 0.25;
|
|
153
|
+
const ARCHIVED_PROJECT_WEIGHT = 0.2;
|
|
154
|
+
/**
|
|
155
|
+
* Score the strongest verified identity, or `null` when none has usable
|
|
156
|
+
* evidence. Identities never add up: several accounts or domains owned by one
|
|
157
|
+
* operator are not independent evidence.
|
|
158
|
+
*
|
|
159
|
+
* GitHub (max 70): original, non-fork repositories at least three months old
|
|
160
|
+
* with at least five stars, excluding the ownership-proof repository.
|
|
161
|
+
* 40 * min(1, sum(log2(1 + min(stars, 500))) / 40) stars
|
|
162
|
+
* + 20 * min(1, projects / 8) breadth
|
|
163
|
+
* + 10 * min(1, oldest project years / 3) age
|
|
164
|
+
* Archived repositories count at 20%. An empty or zero-star account earns 0.
|
|
165
|
+
*
|
|
166
|
+
* Domain (max 12): 12 * min(1, registration years / 5).
|
|
167
|
+
*/
|
|
168
|
+
export function scoreIdentityHistory(peer, nowMs = Date.now()) {
|
|
169
|
+
const results = peer.verificationResults;
|
|
170
|
+
const evidence = results?.identityHistory;
|
|
171
|
+
const fresh = (time) => Number.isFinite(time) && time <= nowMs && nowMs - time <= IDENTITY_HISTORY_TTL_MS;
|
|
172
|
+
if (!results || !fresh(results.checkedAtMs) || !Array.isArray(results.github) || !Array.isArray(results.domains)
|
|
173
|
+
|| evidence?.version !== IDENTITY_HISTORY_VERSION || !Array.isArray(evidence.identities)) {
|
|
174
|
+
return null;
|
|
175
|
+
}
|
|
176
|
+
const years = (time) => Number.isFinite(time) && time > 0 && time <= nowMs ? (nowMs - time) / YEAR_MS : 0;
|
|
177
|
+
let best = null;
|
|
178
|
+
const seen = new Set();
|
|
179
|
+
for (const item of evidence.identities.slice(0, MAX_IDENTITIES)) {
|
|
180
|
+
if (!item || item.status !== 'available' || !fresh(item.fetchedAtMs) || !item.identityId || seen.has(item.identityId))
|
|
181
|
+
continue;
|
|
182
|
+
if (!isStillClaimed(peer, item) || !isOwnershipVerified(peer.peerId, results, item, fresh))
|
|
183
|
+
continue;
|
|
184
|
+
let points;
|
|
185
|
+
if (item.kind === 'github' && /^github:[1-9]\d*$/.test(item.identityId)) {
|
|
186
|
+
points = scoreGithubPortfolio(item, results, years);
|
|
187
|
+
}
|
|
188
|
+
else if (item.kind === 'domain' && item.identityId === `domain:${item.claim}`) {
|
|
189
|
+
points = IDENTITY_DOMAIN_MAX_POINTS * Math.min(1, years(item.createdAtMs ?? NaN) / 5);
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
continue;
|
|
193
|
+
}
|
|
194
|
+
seen.add(item.identityId);
|
|
195
|
+
if (!best || points > best.points)
|
|
196
|
+
best = { kind: item.kind, claim: item.claim, identityId: item.identityId, points };
|
|
197
|
+
}
|
|
198
|
+
return best;
|
|
199
|
+
}
|
|
200
|
+
/** The seller still announces this claim in its current metadata (or metadata is unavailable). */
|
|
201
|
+
function isStillClaimed(peer, item) {
|
|
202
|
+
const announced = peer.metadata?.verifications;
|
|
203
|
+
if (!announced)
|
|
204
|
+
return true;
|
|
205
|
+
if (item.kind === 'github') {
|
|
206
|
+
return Array.isArray(announced.github)
|
|
207
|
+
&& announced.github.some((entry) => typeof entry?.username === 'string' && entry.username.toLowerCase() === item.claim);
|
|
208
|
+
}
|
|
209
|
+
return Array.isArray(announced.domains)
|
|
210
|
+
&& announced.domains.some((entry) => typeof entry?.domain === 'string' && entry.domain.toLowerCase() === item.claim);
|
|
211
|
+
}
|
|
212
|
+
/** This peer's ownership proof for the claim verified recently. */
|
|
213
|
+
function isOwnershipVerified(peerId, results, item, fresh) {
|
|
214
|
+
if (item.kind === 'github') {
|
|
215
|
+
return results.github.some((result) => result?.verified && result.peerId === peerId
|
|
216
|
+
&& typeof result.username === 'string' && result.username.toLowerCase() === item.claim && fresh(result.checkedAtMs));
|
|
217
|
+
}
|
|
218
|
+
return results.domains.some((result) => result?.verified && result.peerId === peerId
|
|
219
|
+
&& typeof result.domain === 'string' && result.domain.toLowerCase() === item.claim && fresh(result.checkedAtMs));
|
|
220
|
+
}
|
|
221
|
+
/** The repository that hosts the ownership proof never counts as a project. */
|
|
222
|
+
function isProofRepository(results, claim, name) {
|
|
223
|
+
return results.github.some((result) => typeof result?.username === 'string' && result.username.toLowerCase() === claim
|
|
224
|
+
&& typeof result.repository === 'string' && result.repository.toLowerCase() === name.toLowerCase());
|
|
225
|
+
}
|
|
226
|
+
function scoreGithubPortfolio(item, results, years) {
|
|
227
|
+
const projects = Array.isArray(item.projects) ? item.projects.slice(0, MAX_PROJECTS_SCORED) : [];
|
|
228
|
+
const accountCreatedAtMs = item.createdAtMs ?? Infinity;
|
|
229
|
+
const seenIds = new Set();
|
|
230
|
+
let starWeight = 0;
|
|
231
|
+
let projectWeight = 0;
|
|
232
|
+
let oldestYears = 0;
|
|
233
|
+
for (const project of projects) {
|
|
234
|
+
if (!project || !id(project.id) || seenIds.has(project.id))
|
|
235
|
+
continue;
|
|
236
|
+
if (!Number.isFinite(project.stars) || project.stars < MIN_PROJECT_STARS)
|
|
237
|
+
continue;
|
|
238
|
+
if (typeof project.name !== 'string' || typeof project.archived !== 'boolean')
|
|
239
|
+
continue;
|
|
240
|
+
if (isProofRepository(results, item.claim, project.name))
|
|
241
|
+
continue;
|
|
242
|
+
// A project older than the account was transferred in, not built here.
|
|
243
|
+
if (project.createdAtMs < accountCreatedAtMs || years(project.createdAtMs) < MIN_PROJECT_AGE_YEARS)
|
|
244
|
+
continue;
|
|
245
|
+
seenIds.add(project.id);
|
|
246
|
+
const weight = project.archived ? ARCHIVED_PROJECT_WEIGHT : 1;
|
|
247
|
+
starWeight += Math.log2(1 + Math.min(500, project.stars)) * weight;
|
|
248
|
+
projectWeight += weight;
|
|
249
|
+
oldestYears = Math.max(oldestYears, years(project.createdAtMs) * weight);
|
|
250
|
+
}
|
|
251
|
+
if (projectWeight === 0)
|
|
252
|
+
return 0;
|
|
253
|
+
const starPoints = 40 * Math.min(1, starWeight / 40);
|
|
254
|
+
const breadthPoints = 20 * Math.min(1, projectWeight / 8);
|
|
255
|
+
const agePoints = 10 * Math.min(1, oldestYears / 3);
|
|
256
|
+
return Math.min(IDENTITY_GITHUB_MAX_POINTS, starPoints + breadthPoints + agePoints);
|
|
257
|
+
}
|
|
258
|
+
//# sourceMappingURL=identity-history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-history.js","sourceRoot":"","sources":["../../src/reputation/identity-history.ts"],"names":[],"mappings":"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"}
|