@neuroverseos/governance 0.10.0 → 0.12.0
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/dist/adapters/autoresearch.cjs +19 -1
- package/dist/adapters/autoresearch.d.cts +1 -1
- package/dist/adapters/autoresearch.d.ts +1 -1
- package/dist/adapters/autoresearch.js +2 -2
- package/dist/adapters/deep-agents.cjs +19 -1
- package/dist/adapters/deep-agents.d.cts +2 -2
- package/dist/adapters/deep-agents.d.ts +2 -2
- package/dist/adapters/deep-agents.js +2 -2
- package/dist/adapters/express.cjs +19 -1
- package/dist/adapters/express.d.cts +1 -1
- package/dist/adapters/express.d.ts +1 -1
- package/dist/adapters/express.js +2 -2
- package/dist/adapters/github.cjs +19 -1
- package/dist/adapters/github.d.cts +2 -2
- package/dist/adapters/github.d.ts +2 -2
- package/dist/adapters/github.js +2 -2
- package/dist/adapters/index.cjs +19 -1
- package/dist/adapters/index.d.cts +2 -2
- package/dist/adapters/index.d.ts +2 -2
- package/dist/adapters/index.js +8 -8
- package/dist/adapters/langchain.cjs +19 -1
- package/dist/adapters/langchain.d.cts +2 -2
- package/dist/adapters/langchain.d.ts +2 -2
- package/dist/adapters/langchain.js +2 -2
- package/dist/adapters/mentraos.cjs +19 -1
- package/dist/adapters/mentraos.d.cts +2 -2
- package/dist/adapters/mentraos.d.ts +2 -2
- package/dist/adapters/mentraos.js +2 -2
- package/dist/adapters/openai.cjs +19 -1
- package/dist/adapters/openai.d.cts +2 -2
- package/dist/adapters/openai.d.ts +2 -2
- package/dist/adapters/openai.js +2 -2
- package/dist/adapters/openclaw.cjs +19 -1
- package/dist/adapters/openclaw.d.cts +2 -2
- package/dist/adapters/openclaw.d.ts +2 -2
- package/dist/adapters/openclaw.js +2 -2
- package/dist/admin/index.cjs +19 -1
- package/dist/admin/index.js +1 -1
- package/dist/audit-JYNN3MOQ.js +98 -0
- package/dist/audit-behavior-C62FdRAC.d.cts +100 -0
- package/dist/audit-behavior-DFy7LeYv.d.ts +100 -0
- package/dist/{behavioral-SPWPGYXL.js → behavioral-4TKMHZQZ.js} +2 -2
- package/dist/{chunk-OQU65525.js → chunk-24YW7BHC.js} +1 -1
- package/dist/{chunk-BZYQHJDM.js → chunk-2KTPIE57.js} +25 -5
- package/dist/{chunk-TJ5L2UTE.js → chunk-5K3LATTM.js} +1 -1
- package/dist/{chunk-HDNDL6D5.js → chunk-5LDBYOSJ.js} +1 -1
- package/dist/{chunk-FDPPZLSQ.js → chunk-5ZWKM7MO.js} +1 -1
- package/dist/{chunk-B3IIPTY3.js → chunk-6MB6TMAG.js} +1 -1
- package/dist/{chunk-IOVXB6QN.js → chunk-GXTAHCND.js} +1 -1
- package/dist/{chunk-FKQCPRKI.js → chunk-MAOIHKFO.js} +1 -1
- package/dist/{chunk-ZAF6JH23.js → chunk-MBOW6YXN.js} +19 -1
- package/dist/{chunk-A2UZTLRV.js → chunk-MLXKSX3L.js} +1 -1
- package/dist/{chunk-7FL3U7Z5.js → chunk-MWGEXHOD.js} +1 -1
- package/dist/{chunk-6CV4XG3J.js → chunk-QFDFAWZ6.js} +1 -1
- package/dist/{chunk-2VAWP6FI.js → chunk-RAS62JXV.js} +1 -1
- package/dist/{chunk-OTZU76DH.js → chunk-XAF3CYCW.js} +1 -1
- package/dist/{chunk-T6GMRZWC.js → chunk-XTYQCTDD.js} +1 -1
- package/dist/{chunk-TIXVEPS2.js → chunk-YN7OI5ZV.js} +1 -1
- package/dist/cli/neuroverse.cjs +229 -93
- package/dist/cli/neuroverse.js +16 -12
- package/dist/cli/plan.cjs +18 -0
- package/dist/cli/radiant.cjs +42 -4
- package/dist/cli/radiant.js +3 -3
- package/dist/cli/run.cjs +18 -0
- package/dist/cli/run.js +4 -4
- package/dist/{decision-flow-IJPNMVQK.js → decision-flow-5VI5YG6A.js} +2 -2
- package/dist/{demo-6W3YXLAX.js → demo-GYX6CYHC.js} +2 -2
- package/dist/engine/guard-engine.cjs +19 -1
- package/dist/engine/guard-engine.d.cts +21 -1
- package/dist/engine/guard-engine.d.ts +21 -1
- package/dist/engine/guard-engine.js +1 -1
- package/dist/{equity-penalties-CCO3GVHS.js → equity-penalties-NOM46NEO.js} +2 -2
- package/dist/{guard-IHJEKHL2.js → guard-PQ3SYV4Y.js} +3 -3
- package/dist/{guard-contract-ddiIPlOg.d.cts → guard-contract-Oznf-Kgq.d.cts} +32 -0
- package/dist/{guard-contract-q6HJAq3Q.d.ts → guard-contract-w_i_6gh-.d.ts} +32 -0
- package/dist/{impact-WIAM66IH.js → impact-LDJLTVRU.js} +3 -3
- package/dist/index.cjs +62 -1
- package/dist/index.d.cts +4 -3
- package/dist/index.d.ts +4 -3
- package/dist/index.js +49 -8
- package/dist/{mcp-server-CKYBHXWK.js → mcp-server-W3MWSKD7.js} +2 -2
- package/dist/{playground-3TTBN7XD.js → playground-SSZRNUAF.js} +1 -1
- package/dist/radiant/index.cjs +450 -5
- package/dist/radiant/index.d.cts +151 -1
- package/dist/radiant/index.d.ts +151 -1
- package/dist/radiant/index.js +405 -2
- package/dist/{redteam-W644UMWN.js → redteam-KCULS7EW.js} +1 -1
- package/dist/{server-EI5JCIBU.js → server-EGRGGSM2.js} +2 -2
- package/dist/{session-FMAROEIE.js → session-PZLTL22G.js} +2 -2
- package/dist/{shared-PpalGKxc.d.cts → shared-BC8mOpt0.d.cts} +1 -1
- package/dist/{shared-DAzdfWtU.d.ts → shared-CP63gNNW.d.ts} +1 -1
- package/dist/{test-XDB2DH3L.js → test-LIHGWHBA.js} +1 -1
- package/dist/{trace-2YDNAXMK.js → trace-DC3D7XPD.js} +2 -2
- package/package.json +1 -1
- /package/dist/{doctor-XEMLO6UA.js → doctor-SIWQGTAO.js} +0 -0
package/dist/radiant/index.d.cts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import { C as Crossing } from '../audit-behavior-C62FdRAC.cjs';
|
|
2
|
+
import '../guard-contract-Oznf-Kgq.cjs';
|
|
3
|
+
import '../types.cjs';
|
|
4
|
+
|
|
1
5
|
/**
|
|
2
6
|
* @neuroverseos/governance/radiant — core types
|
|
3
7
|
*
|
|
@@ -1240,6 +1244,136 @@ declare function fetchLinearActivity(apiKey: string, options?: LinearFetchOption
|
|
|
1240
1244
|
*/
|
|
1241
1245
|
declare function formatLinearSignalsForPrompt(signals: LinearSignals): string;
|
|
1242
1246
|
|
|
1247
|
+
/**
|
|
1248
|
+
* @neuroverseos/governance/radiant — Google Workspace adapter
|
|
1249
|
+
*
|
|
1250
|
+
* Reads the leader's Gmail (sent messages) + Calendar (events in the
|
|
1251
|
+
* window) and normalizes both into Event[] for the Radiant pipeline.
|
|
1252
|
+
*
|
|
1253
|
+
* Why Google Workspace matters:
|
|
1254
|
+
* - It's the most universal source. Every non-MS-shop leader has
|
|
1255
|
+
* Gmail + Calendar. Non-engineering leaders who never touch GitHub
|
|
1256
|
+
* or Linear still live in these two apps.
|
|
1257
|
+
* - Gmail sent folder = external coordination signal. What the
|
|
1258
|
+
* leader's actually pushing out into the world. Drift between
|
|
1259
|
+
* stated strategy and actual outreach shows up here first.
|
|
1260
|
+
* - Calendar = meeting load vs. output. Heavy meetings + thin
|
|
1261
|
+
* shipping = the drift pattern leaders most want to catch.
|
|
1262
|
+
*
|
|
1263
|
+
* v1 scope:
|
|
1264
|
+
* - Gmail: list the leader's own sent messages in the window.
|
|
1265
|
+
* Subject + snippet + recipients + timestamp. No body (privacy +
|
|
1266
|
+
* payload size).
|
|
1267
|
+
* - Calendar: list events in the window from the primary calendar.
|
|
1268
|
+
* Title + attendees count + duration + whether the leader
|
|
1269
|
+
* organized.
|
|
1270
|
+
*
|
|
1271
|
+
* Auth: Google OAuth access token with scopes
|
|
1272
|
+
* https://www.googleapis.com/auth/gmail.readonly
|
|
1273
|
+
* https://www.googleapis.com/auth/calendar.readonly
|
|
1274
|
+
* Token lifecycle (refresh) is the caller's job — this adapter takes
|
|
1275
|
+
* a valid access token as input.
|
|
1276
|
+
*
|
|
1277
|
+
* Deno / browser / Node all work — uses native fetch only.
|
|
1278
|
+
*/
|
|
1279
|
+
|
|
1280
|
+
interface GoogleWorkspaceFetchOptions {
|
|
1281
|
+
/** Access token with gmail.readonly + calendar.readonly scopes. */
|
|
1282
|
+
accessToken: string;
|
|
1283
|
+
/** How many days of history to fetch. Default: 14. */
|
|
1284
|
+
windowDays?: number;
|
|
1285
|
+
/** Max emails to include. Default: 100. */
|
|
1286
|
+
maxEmails?: number;
|
|
1287
|
+
/** Max calendar events to include. Default: 100. */
|
|
1288
|
+
maxEvents?: number;
|
|
1289
|
+
/** The leader's own email address — used to identify their events. */
|
|
1290
|
+
leaderEmail?: string;
|
|
1291
|
+
}
|
|
1292
|
+
interface GoogleWorkspaceSignals {
|
|
1293
|
+
emailsSent: number;
|
|
1294
|
+
uniqueRecipients: number;
|
|
1295
|
+
topRecipients: string[];
|
|
1296
|
+
meetingsHeld: number;
|
|
1297
|
+
meetingsOrganized: number;
|
|
1298
|
+
uniqueAttendees: number;
|
|
1299
|
+
totalMeetingMinutes: number;
|
|
1300
|
+
avgMeetingAttendees: number | null;
|
|
1301
|
+
}
|
|
1302
|
+
declare function fetchGoogleWorkspaceActivity(options: GoogleWorkspaceFetchOptions): Promise<{
|
|
1303
|
+
events: Event[];
|
|
1304
|
+
signals: GoogleWorkspaceSignals;
|
|
1305
|
+
}>;
|
|
1306
|
+
/**
|
|
1307
|
+
* Format Google Workspace signals for the AI interpretation prompt.
|
|
1308
|
+
*/
|
|
1309
|
+
declare function formatGoogleWorkspaceSignalsForPrompt(signals: GoogleWorkspaceSignals): string;
|
|
1310
|
+
|
|
1311
|
+
/**
|
|
1312
|
+
* @neuroverseos/governance/radiant — Salesforce adapter
|
|
1313
|
+
*
|
|
1314
|
+
* Reads the leader's Salesforce activity and normalizes it into Event[]
|
|
1315
|
+
* for the Radiant pipeline. Opens the entire sales-leader market —
|
|
1316
|
+
* every sales org of any scale runs on Salesforce, and "is the pipeline
|
|
1317
|
+
* drifting from what we declared we'd close" is the exact job Radiant
|
|
1318
|
+
* does for that audience.
|
|
1319
|
+
*
|
|
1320
|
+
* v1 scope:
|
|
1321
|
+
* - Recent Opportunity changes: stage transitions, amount updates,
|
|
1322
|
+
* close-date changes (the signal set for deal-drift detection)
|
|
1323
|
+
* - Recent Tasks + logged Calls (activity per rep)
|
|
1324
|
+
* - Chatter FeedItems if accessible (how the team talks about deals)
|
|
1325
|
+
*
|
|
1326
|
+
* Auth: Salesforce OAuth — access token + instance URL. Each org has
|
|
1327
|
+
* its own `my.salesforce.com` endpoint; the token alone isn't enough,
|
|
1328
|
+
* the caller must also pass the instance URL.
|
|
1329
|
+
*
|
|
1330
|
+
* Individual-rep or individual-manager OAuth works without admin
|
|
1331
|
+
* consent — this adapter assumes one Salesforce user's view. For
|
|
1332
|
+
* enterprise admin-consent + org-wide access, a later adapter
|
|
1333
|
+
* variant can use the Reports API or a service-user token.
|
|
1334
|
+
*
|
|
1335
|
+
* Deno / browser / Node — native fetch only.
|
|
1336
|
+
*/
|
|
1337
|
+
|
|
1338
|
+
interface SalesforceFetchOptions {
|
|
1339
|
+
/** OAuth access token with api + refresh_token scopes. */
|
|
1340
|
+
accessToken: string;
|
|
1341
|
+
/**
|
|
1342
|
+
* Salesforce instance URL — e.g. https://acme.my.salesforce.com.
|
|
1343
|
+
* Comes back in the token response; caller must persist it.
|
|
1344
|
+
*/
|
|
1345
|
+
instanceUrl: string;
|
|
1346
|
+
/** How many days of history to fetch. Default: 14. */
|
|
1347
|
+
windowDays?: number;
|
|
1348
|
+
/** Max records per entity. Default: 200 (hard cap on SOQL page). */
|
|
1349
|
+
maxRecords?: number;
|
|
1350
|
+
/** The leader's own Salesforce user name / email, if known. */
|
|
1351
|
+
leaderName?: string;
|
|
1352
|
+
}
|
|
1353
|
+
interface SalesforceSignals {
|
|
1354
|
+
opportunitiesMoved: number;
|
|
1355
|
+
stageTransitions: number;
|
|
1356
|
+
amountChanges: number;
|
|
1357
|
+
closedWon: number;
|
|
1358
|
+
closedLost: number;
|
|
1359
|
+
tasksLogged: number;
|
|
1360
|
+
callsLogged: number;
|
|
1361
|
+
feedPostsByLeader: number;
|
|
1362
|
+
totalPipelineAmount: number;
|
|
1363
|
+
topStages: Array<{
|
|
1364
|
+
stage: string;
|
|
1365
|
+
count: number;
|
|
1366
|
+
}>;
|
|
1367
|
+
}
|
|
1368
|
+
declare function fetchSalesforceActivity(options: SalesforceFetchOptions): Promise<{
|
|
1369
|
+
events: Event[];
|
|
1370
|
+
signals: SalesforceSignals;
|
|
1371
|
+
}>;
|
|
1372
|
+
/**
|
|
1373
|
+
* Format Salesforce signals for the AI interpretation prompt.
|
|
1374
|
+
*/
|
|
1375
|
+
declare function formatSalesforceSignalsForPrompt(signals: SalesforceSignals): string;
|
|
1376
|
+
|
|
1243
1377
|
/**
|
|
1244
1378
|
* @neuroverseos/governance/radiant — declared vocabulary extraction
|
|
1245
1379
|
*
|
|
@@ -1411,6 +1545,15 @@ interface GovernanceAudit {
|
|
|
1411
1545
|
block: number;
|
|
1412
1546
|
details: GovernanceVerdict[];
|
|
1413
1547
|
};
|
|
1548
|
+
/**
|
|
1549
|
+
* Crossings — events that WOULD have been blocked/paused/modified in
|
|
1550
|
+
* enforce mode. Populated by running the guard engine in observe mode,
|
|
1551
|
+
* so nothing is actually stopped; callers record the crossing for the
|
|
1552
|
+
* leader to see. Each crossing carries shadowStatus + shadowReason so
|
|
1553
|
+
* downstream tooling (Bevia, Radiant UIs, audit logs) can surface
|
|
1554
|
+
* specific moments the worldmodel was touched.
|
|
1555
|
+
*/
|
|
1556
|
+
crossings: Crossing[];
|
|
1414
1557
|
/** Summary for rendering — most important findings. */
|
|
1415
1558
|
summary: string;
|
|
1416
1559
|
}
|
|
@@ -1896,6 +2039,13 @@ interface EmergentResult {
|
|
|
1896
2039
|
activeAdapters?: string[];
|
|
1897
2040
|
/** World stack — what worlds were discovered and loaded. */
|
|
1898
2041
|
worldStack?: WorldStack;
|
|
2042
|
+
/**
|
|
2043
|
+
* Governance audit — populated when a compiled world was loaded. Includes
|
|
2044
|
+
* `crossings` (events that would have blocked/modified/paused in enforce
|
|
2045
|
+
* mode) for surfacing in Bevia / Radiant UIs as moments the leader's
|
|
2046
|
+
* worldmodel was bumped against.
|
|
2047
|
+
*/
|
|
2048
|
+
governance?: GovernanceAudit;
|
|
1899
2049
|
}
|
|
1900
2050
|
declare function emergent(input: EmergentInput): Promise<EmergentResult>;
|
|
1901
2051
|
/**
|
|
@@ -1942,4 +2092,4 @@ declare function filterEventsByUser(events: readonly Event[], username: string):
|
|
|
1942
2092
|
*/
|
|
1943
2093
|
declare const RADIANT_PACKAGE_VERSION = "0.0.0";
|
|
1944
2094
|
|
|
1945
|
-
export { type Actor, type ActorDomain, type ActorKind, type AlignmentStatus, type BridgingComponent, type BridgingComponentScore, type ClassifiedEvent, type CyberCapability, type CyberDimension, DEFAULT_EVIDENCE_GATE, DEFAULT_SIGNAL_EXTRACTORS, type DeclaredPattern, type DeclaredVocabulary, type DiscordFetchOptions, type DiscordSignals, type DiscoveredWorld, type EmergentInput, type EmergentResult, type Event, type EventReference, type EvidenceGate, type ExemplarRef, type ExocortexContext, type ExtendsConfig, type ExtendsSpec, type ExtractionResult, type Fetcher, type GitHubFetchOptions, type GovernanceAudit, type GovernanceVerdict, type InterpretInput, type InterpretResult, LENSES, type LensVocabulary, type LifeCapability, type LifeDimension, type LinearFetchOptions, type LinearSignals, type NotionFetchOptions, type NotionSignals, type ObservedPattern, type OrgScope, type OverlapDef, type ParsedRemote, type PatternEvidence, type PatternPersistence, type PrimaryFrame, type PriorRead, RADIANT_PACKAGE_VERSION, type RadiantAI, type RenderInput, type RenderOutput, type RenderingLens, type RepoScope, type ResolveResult, type Scope, type Score, type ScoreSentinel, type ScoredObservation, type Signal, type SignalExtractor, type SignalMatrix, type SlackFetchOptions, type SlackSignals, type ThinkInput, type ThinkResult, type ViewLevel, type VoiceDirectives, type VoiceViolation, type WorldStack, type WorldmodelItem, auditGovernance, aukiBuilderLens, checkForbiddenPhrases, classifyActorDomain, classifyEvents, composeSystemPrompt, compressExocortex, compressLens, compressPriorReads, compressWorldmodel, computePersistence, createAnthropicAI, createMockAI, createMockGitHubAdapter, detectOrgExtendsSpec, discoverWorlds, emergent, extractDeclaredVocabulary, extractSignals, fetchDiscordActivity, fetchGitHubActivity, fetchGitHubOrgActivity, fetchLinearActivity, fetchNotionActivity, fetchSlackActivity, filterEventsByUser, formatActiveWorlds, formatDiscordSignalsForPrompt, formatExocortexForPrompt, formatLinearSignalsForPrompt, formatNotionSignalsForPrompt, formatPriorReadsForPrompt, formatScope, formatSlackSignalsForPrompt, formatTeamExocorticesForPrompt, getCacheDir, getLens, getRepoOrigin, interpretPatterns, isPresent, isScored, isSentinel, listLenses, loadExtendsConfig, loadPriorReads, matchDeclaredPattern, parseExtendsSpec, parseRemoteUrl, parseRepoScope, parseScope, presenceAverage, readExocortex, readOriginRemote, readTeamExocortices, render, resolveAllExtends, resolveExtendsSpec, scoreComposite, scoreCyber, scoreLife, scoreNeuroVerse, sovereignConduitLens, summarizeExocortex, think, updateKnowledge, writeRead };
|
|
2095
|
+
export { type Actor, type ActorDomain, type ActorKind, type AlignmentStatus, type BridgingComponent, type BridgingComponentScore, type ClassifiedEvent, type CyberCapability, type CyberDimension, DEFAULT_EVIDENCE_GATE, DEFAULT_SIGNAL_EXTRACTORS, type DeclaredPattern, type DeclaredVocabulary, type DiscordFetchOptions, type DiscordSignals, type DiscoveredWorld, type EmergentInput, type EmergentResult, type Event, type EventReference, type EvidenceGate, type ExemplarRef, type ExocortexContext, type ExtendsConfig, type ExtendsSpec, type ExtractionResult, type Fetcher, type GitHubFetchOptions, type GoogleWorkspaceFetchOptions, type GoogleWorkspaceSignals, type GovernanceAudit, type GovernanceVerdict, type InterpretInput, type InterpretResult, LENSES, type LensVocabulary, type LifeCapability, type LifeDimension, type LinearFetchOptions, type LinearSignals, type NotionFetchOptions, type NotionSignals, type ObservedPattern, type OrgScope, type OverlapDef, type ParsedRemote, type PatternEvidence, type PatternPersistence, type PrimaryFrame, type PriorRead, RADIANT_PACKAGE_VERSION, type RadiantAI, type RenderInput, type RenderOutput, type RenderingLens, type RepoScope, type ResolveResult, type SalesforceFetchOptions, type SalesforceSignals, type Scope, type Score, type ScoreSentinel, type ScoredObservation, type Signal, type SignalExtractor, type SignalMatrix, type SlackFetchOptions, type SlackSignals, type ThinkInput, type ThinkResult, type ViewLevel, type VoiceDirectives, type VoiceViolation, type WorldStack, type WorldmodelItem, auditGovernance, aukiBuilderLens, checkForbiddenPhrases, classifyActorDomain, classifyEvents, composeSystemPrompt, compressExocortex, compressLens, compressPriorReads, compressWorldmodel, computePersistence, createAnthropicAI, createMockAI, createMockGitHubAdapter, detectOrgExtendsSpec, discoverWorlds, emergent, extractDeclaredVocabulary, extractSignals, fetchDiscordActivity, fetchGitHubActivity, fetchGitHubOrgActivity, fetchGoogleWorkspaceActivity, fetchLinearActivity, fetchNotionActivity, fetchSalesforceActivity, fetchSlackActivity, filterEventsByUser, formatActiveWorlds, formatDiscordSignalsForPrompt, formatExocortexForPrompt, formatGoogleWorkspaceSignalsForPrompt, formatLinearSignalsForPrompt, formatNotionSignalsForPrompt, formatPriorReadsForPrompt, formatSalesforceSignalsForPrompt, formatScope, formatSlackSignalsForPrompt, formatTeamExocorticesForPrompt, getCacheDir, getLens, getRepoOrigin, interpretPatterns, isPresent, isScored, isSentinel, listLenses, loadExtendsConfig, loadPriorReads, matchDeclaredPattern, parseExtendsSpec, parseRemoteUrl, parseRepoScope, parseScope, presenceAverage, readExocortex, readOriginRemote, readTeamExocortices, render, resolveAllExtends, resolveExtendsSpec, scoreComposite, scoreCyber, scoreLife, scoreNeuroVerse, sovereignConduitLens, summarizeExocortex, think, updateKnowledge, writeRead };
|
package/dist/radiant/index.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import { C as Crossing } from '../audit-behavior-DFy7LeYv.js';
|
|
2
|
+
import '../guard-contract-w_i_6gh-.js';
|
|
3
|
+
import '../types.js';
|
|
4
|
+
|
|
1
5
|
/**
|
|
2
6
|
* @neuroverseos/governance/radiant — core types
|
|
3
7
|
*
|
|
@@ -1240,6 +1244,136 @@ declare function fetchLinearActivity(apiKey: string, options?: LinearFetchOption
|
|
|
1240
1244
|
*/
|
|
1241
1245
|
declare function formatLinearSignalsForPrompt(signals: LinearSignals): string;
|
|
1242
1246
|
|
|
1247
|
+
/**
|
|
1248
|
+
* @neuroverseos/governance/radiant — Google Workspace adapter
|
|
1249
|
+
*
|
|
1250
|
+
* Reads the leader's Gmail (sent messages) + Calendar (events in the
|
|
1251
|
+
* window) and normalizes both into Event[] for the Radiant pipeline.
|
|
1252
|
+
*
|
|
1253
|
+
* Why Google Workspace matters:
|
|
1254
|
+
* - It's the most universal source. Every non-MS-shop leader has
|
|
1255
|
+
* Gmail + Calendar. Non-engineering leaders who never touch GitHub
|
|
1256
|
+
* or Linear still live in these two apps.
|
|
1257
|
+
* - Gmail sent folder = external coordination signal. What the
|
|
1258
|
+
* leader's actually pushing out into the world. Drift between
|
|
1259
|
+
* stated strategy and actual outreach shows up here first.
|
|
1260
|
+
* - Calendar = meeting load vs. output. Heavy meetings + thin
|
|
1261
|
+
* shipping = the drift pattern leaders most want to catch.
|
|
1262
|
+
*
|
|
1263
|
+
* v1 scope:
|
|
1264
|
+
* - Gmail: list the leader's own sent messages in the window.
|
|
1265
|
+
* Subject + snippet + recipients + timestamp. No body (privacy +
|
|
1266
|
+
* payload size).
|
|
1267
|
+
* - Calendar: list events in the window from the primary calendar.
|
|
1268
|
+
* Title + attendees count + duration + whether the leader
|
|
1269
|
+
* organized.
|
|
1270
|
+
*
|
|
1271
|
+
* Auth: Google OAuth access token with scopes
|
|
1272
|
+
* https://www.googleapis.com/auth/gmail.readonly
|
|
1273
|
+
* https://www.googleapis.com/auth/calendar.readonly
|
|
1274
|
+
* Token lifecycle (refresh) is the caller's job — this adapter takes
|
|
1275
|
+
* a valid access token as input.
|
|
1276
|
+
*
|
|
1277
|
+
* Deno / browser / Node all work — uses native fetch only.
|
|
1278
|
+
*/
|
|
1279
|
+
|
|
1280
|
+
interface GoogleWorkspaceFetchOptions {
|
|
1281
|
+
/** Access token with gmail.readonly + calendar.readonly scopes. */
|
|
1282
|
+
accessToken: string;
|
|
1283
|
+
/** How many days of history to fetch. Default: 14. */
|
|
1284
|
+
windowDays?: number;
|
|
1285
|
+
/** Max emails to include. Default: 100. */
|
|
1286
|
+
maxEmails?: number;
|
|
1287
|
+
/** Max calendar events to include. Default: 100. */
|
|
1288
|
+
maxEvents?: number;
|
|
1289
|
+
/** The leader's own email address — used to identify their events. */
|
|
1290
|
+
leaderEmail?: string;
|
|
1291
|
+
}
|
|
1292
|
+
interface GoogleWorkspaceSignals {
|
|
1293
|
+
emailsSent: number;
|
|
1294
|
+
uniqueRecipients: number;
|
|
1295
|
+
topRecipients: string[];
|
|
1296
|
+
meetingsHeld: number;
|
|
1297
|
+
meetingsOrganized: number;
|
|
1298
|
+
uniqueAttendees: number;
|
|
1299
|
+
totalMeetingMinutes: number;
|
|
1300
|
+
avgMeetingAttendees: number | null;
|
|
1301
|
+
}
|
|
1302
|
+
declare function fetchGoogleWorkspaceActivity(options: GoogleWorkspaceFetchOptions): Promise<{
|
|
1303
|
+
events: Event[];
|
|
1304
|
+
signals: GoogleWorkspaceSignals;
|
|
1305
|
+
}>;
|
|
1306
|
+
/**
|
|
1307
|
+
* Format Google Workspace signals for the AI interpretation prompt.
|
|
1308
|
+
*/
|
|
1309
|
+
declare function formatGoogleWorkspaceSignalsForPrompt(signals: GoogleWorkspaceSignals): string;
|
|
1310
|
+
|
|
1311
|
+
/**
|
|
1312
|
+
* @neuroverseos/governance/radiant — Salesforce adapter
|
|
1313
|
+
*
|
|
1314
|
+
* Reads the leader's Salesforce activity and normalizes it into Event[]
|
|
1315
|
+
* for the Radiant pipeline. Opens the entire sales-leader market —
|
|
1316
|
+
* every sales org of any scale runs on Salesforce, and "is the pipeline
|
|
1317
|
+
* drifting from what we declared we'd close" is the exact job Radiant
|
|
1318
|
+
* does for that audience.
|
|
1319
|
+
*
|
|
1320
|
+
* v1 scope:
|
|
1321
|
+
* - Recent Opportunity changes: stage transitions, amount updates,
|
|
1322
|
+
* close-date changes (the signal set for deal-drift detection)
|
|
1323
|
+
* - Recent Tasks + logged Calls (activity per rep)
|
|
1324
|
+
* - Chatter FeedItems if accessible (how the team talks about deals)
|
|
1325
|
+
*
|
|
1326
|
+
* Auth: Salesforce OAuth — access token + instance URL. Each org has
|
|
1327
|
+
* its own `my.salesforce.com` endpoint; the token alone isn't enough,
|
|
1328
|
+
* the caller must also pass the instance URL.
|
|
1329
|
+
*
|
|
1330
|
+
* Individual-rep or individual-manager OAuth works without admin
|
|
1331
|
+
* consent — this adapter assumes one Salesforce user's view. For
|
|
1332
|
+
* enterprise admin-consent + org-wide access, a later adapter
|
|
1333
|
+
* variant can use the Reports API or a service-user token.
|
|
1334
|
+
*
|
|
1335
|
+
* Deno / browser / Node — native fetch only.
|
|
1336
|
+
*/
|
|
1337
|
+
|
|
1338
|
+
interface SalesforceFetchOptions {
|
|
1339
|
+
/** OAuth access token with api + refresh_token scopes. */
|
|
1340
|
+
accessToken: string;
|
|
1341
|
+
/**
|
|
1342
|
+
* Salesforce instance URL — e.g. https://acme.my.salesforce.com.
|
|
1343
|
+
* Comes back in the token response; caller must persist it.
|
|
1344
|
+
*/
|
|
1345
|
+
instanceUrl: string;
|
|
1346
|
+
/** How many days of history to fetch. Default: 14. */
|
|
1347
|
+
windowDays?: number;
|
|
1348
|
+
/** Max records per entity. Default: 200 (hard cap on SOQL page). */
|
|
1349
|
+
maxRecords?: number;
|
|
1350
|
+
/** The leader's own Salesforce user name / email, if known. */
|
|
1351
|
+
leaderName?: string;
|
|
1352
|
+
}
|
|
1353
|
+
interface SalesforceSignals {
|
|
1354
|
+
opportunitiesMoved: number;
|
|
1355
|
+
stageTransitions: number;
|
|
1356
|
+
amountChanges: number;
|
|
1357
|
+
closedWon: number;
|
|
1358
|
+
closedLost: number;
|
|
1359
|
+
tasksLogged: number;
|
|
1360
|
+
callsLogged: number;
|
|
1361
|
+
feedPostsByLeader: number;
|
|
1362
|
+
totalPipelineAmount: number;
|
|
1363
|
+
topStages: Array<{
|
|
1364
|
+
stage: string;
|
|
1365
|
+
count: number;
|
|
1366
|
+
}>;
|
|
1367
|
+
}
|
|
1368
|
+
declare function fetchSalesforceActivity(options: SalesforceFetchOptions): Promise<{
|
|
1369
|
+
events: Event[];
|
|
1370
|
+
signals: SalesforceSignals;
|
|
1371
|
+
}>;
|
|
1372
|
+
/**
|
|
1373
|
+
* Format Salesforce signals for the AI interpretation prompt.
|
|
1374
|
+
*/
|
|
1375
|
+
declare function formatSalesforceSignalsForPrompt(signals: SalesforceSignals): string;
|
|
1376
|
+
|
|
1243
1377
|
/**
|
|
1244
1378
|
* @neuroverseos/governance/radiant — declared vocabulary extraction
|
|
1245
1379
|
*
|
|
@@ -1411,6 +1545,15 @@ interface GovernanceAudit {
|
|
|
1411
1545
|
block: number;
|
|
1412
1546
|
details: GovernanceVerdict[];
|
|
1413
1547
|
};
|
|
1548
|
+
/**
|
|
1549
|
+
* Crossings — events that WOULD have been blocked/paused/modified in
|
|
1550
|
+
* enforce mode. Populated by running the guard engine in observe mode,
|
|
1551
|
+
* so nothing is actually stopped; callers record the crossing for the
|
|
1552
|
+
* leader to see. Each crossing carries shadowStatus + shadowReason so
|
|
1553
|
+
* downstream tooling (Bevia, Radiant UIs, audit logs) can surface
|
|
1554
|
+
* specific moments the worldmodel was touched.
|
|
1555
|
+
*/
|
|
1556
|
+
crossings: Crossing[];
|
|
1414
1557
|
/** Summary for rendering — most important findings. */
|
|
1415
1558
|
summary: string;
|
|
1416
1559
|
}
|
|
@@ -1896,6 +2039,13 @@ interface EmergentResult {
|
|
|
1896
2039
|
activeAdapters?: string[];
|
|
1897
2040
|
/** World stack — what worlds were discovered and loaded. */
|
|
1898
2041
|
worldStack?: WorldStack;
|
|
2042
|
+
/**
|
|
2043
|
+
* Governance audit — populated when a compiled world was loaded. Includes
|
|
2044
|
+
* `crossings` (events that would have blocked/modified/paused in enforce
|
|
2045
|
+
* mode) for surfacing in Bevia / Radiant UIs as moments the leader's
|
|
2046
|
+
* worldmodel was bumped against.
|
|
2047
|
+
*/
|
|
2048
|
+
governance?: GovernanceAudit;
|
|
1899
2049
|
}
|
|
1900
2050
|
declare function emergent(input: EmergentInput): Promise<EmergentResult>;
|
|
1901
2051
|
/**
|
|
@@ -1942,4 +2092,4 @@ declare function filterEventsByUser(events: readonly Event[], username: string):
|
|
|
1942
2092
|
*/
|
|
1943
2093
|
declare const RADIANT_PACKAGE_VERSION = "0.0.0";
|
|
1944
2094
|
|
|
1945
|
-
export { type Actor, type ActorDomain, type ActorKind, type AlignmentStatus, type BridgingComponent, type BridgingComponentScore, type ClassifiedEvent, type CyberCapability, type CyberDimension, DEFAULT_EVIDENCE_GATE, DEFAULT_SIGNAL_EXTRACTORS, type DeclaredPattern, type DeclaredVocabulary, type DiscordFetchOptions, type DiscordSignals, type DiscoveredWorld, type EmergentInput, type EmergentResult, type Event, type EventReference, type EvidenceGate, type ExemplarRef, type ExocortexContext, type ExtendsConfig, type ExtendsSpec, type ExtractionResult, type Fetcher, type GitHubFetchOptions, type GovernanceAudit, type GovernanceVerdict, type InterpretInput, type InterpretResult, LENSES, type LensVocabulary, type LifeCapability, type LifeDimension, type LinearFetchOptions, type LinearSignals, type NotionFetchOptions, type NotionSignals, type ObservedPattern, type OrgScope, type OverlapDef, type ParsedRemote, type PatternEvidence, type PatternPersistence, type PrimaryFrame, type PriorRead, RADIANT_PACKAGE_VERSION, type RadiantAI, type RenderInput, type RenderOutput, type RenderingLens, type RepoScope, type ResolveResult, type Scope, type Score, type ScoreSentinel, type ScoredObservation, type Signal, type SignalExtractor, type SignalMatrix, type SlackFetchOptions, type SlackSignals, type ThinkInput, type ThinkResult, type ViewLevel, type VoiceDirectives, type VoiceViolation, type WorldStack, type WorldmodelItem, auditGovernance, aukiBuilderLens, checkForbiddenPhrases, classifyActorDomain, classifyEvents, composeSystemPrompt, compressExocortex, compressLens, compressPriorReads, compressWorldmodel, computePersistence, createAnthropicAI, createMockAI, createMockGitHubAdapter, detectOrgExtendsSpec, discoverWorlds, emergent, extractDeclaredVocabulary, extractSignals, fetchDiscordActivity, fetchGitHubActivity, fetchGitHubOrgActivity, fetchLinearActivity, fetchNotionActivity, fetchSlackActivity, filterEventsByUser, formatActiveWorlds, formatDiscordSignalsForPrompt, formatExocortexForPrompt, formatLinearSignalsForPrompt, formatNotionSignalsForPrompt, formatPriorReadsForPrompt, formatScope, formatSlackSignalsForPrompt, formatTeamExocorticesForPrompt, getCacheDir, getLens, getRepoOrigin, interpretPatterns, isPresent, isScored, isSentinel, listLenses, loadExtendsConfig, loadPriorReads, matchDeclaredPattern, parseExtendsSpec, parseRemoteUrl, parseRepoScope, parseScope, presenceAverage, readExocortex, readOriginRemote, readTeamExocortices, render, resolveAllExtends, resolveExtendsSpec, scoreComposite, scoreCyber, scoreLife, scoreNeuroVerse, sovereignConduitLens, summarizeExocortex, think, updateKnowledge, writeRead };
|
|
2095
|
+
export { type Actor, type ActorDomain, type ActorKind, type AlignmentStatus, type BridgingComponent, type BridgingComponentScore, type ClassifiedEvent, type CyberCapability, type CyberDimension, DEFAULT_EVIDENCE_GATE, DEFAULT_SIGNAL_EXTRACTORS, type DeclaredPattern, type DeclaredVocabulary, type DiscordFetchOptions, type DiscordSignals, type DiscoveredWorld, type EmergentInput, type EmergentResult, type Event, type EventReference, type EvidenceGate, type ExemplarRef, type ExocortexContext, type ExtendsConfig, type ExtendsSpec, type ExtractionResult, type Fetcher, type GitHubFetchOptions, type GoogleWorkspaceFetchOptions, type GoogleWorkspaceSignals, type GovernanceAudit, type GovernanceVerdict, type InterpretInput, type InterpretResult, LENSES, type LensVocabulary, type LifeCapability, type LifeDimension, type LinearFetchOptions, type LinearSignals, type NotionFetchOptions, type NotionSignals, type ObservedPattern, type OrgScope, type OverlapDef, type ParsedRemote, type PatternEvidence, type PatternPersistence, type PrimaryFrame, type PriorRead, RADIANT_PACKAGE_VERSION, type RadiantAI, type RenderInput, type RenderOutput, type RenderingLens, type RepoScope, type ResolveResult, type SalesforceFetchOptions, type SalesforceSignals, type Scope, type Score, type ScoreSentinel, type ScoredObservation, type Signal, type SignalExtractor, type SignalMatrix, type SlackFetchOptions, type SlackSignals, type ThinkInput, type ThinkResult, type ViewLevel, type VoiceDirectives, type VoiceViolation, type WorldStack, type WorldmodelItem, auditGovernance, aukiBuilderLens, checkForbiddenPhrases, classifyActorDomain, classifyEvents, composeSystemPrompt, compressExocortex, compressLens, compressPriorReads, compressWorldmodel, computePersistence, createAnthropicAI, createMockAI, createMockGitHubAdapter, detectOrgExtendsSpec, discoverWorlds, emergent, extractDeclaredVocabulary, extractSignals, fetchDiscordActivity, fetchGitHubActivity, fetchGitHubOrgActivity, fetchGoogleWorkspaceActivity, fetchLinearActivity, fetchNotionActivity, fetchSalesforceActivity, fetchSlackActivity, filterEventsByUser, formatActiveWorlds, formatDiscordSignalsForPrompt, formatExocortexForPrompt, formatGoogleWorkspaceSignalsForPrompt, formatLinearSignalsForPrompt, formatNotionSignalsForPrompt, formatPriorReadsForPrompt, formatSalesforceSignalsForPrompt, formatScope, formatSlackSignalsForPrompt, formatTeamExocorticesForPrompt, getCacheDir, getLens, getRepoOrigin, interpretPatterns, isPresent, isScored, isSentinel, listLenses, loadExtendsConfig, loadPriorReads, matchDeclaredPattern, parseExtendsSpec, parseRemoteUrl, parseRepoScope, parseScope, presenceAverage, readExocortex, readOriginRemote, readTeamExocortices, render, resolveAllExtends, resolveExtendsSpec, scoreComposite, scoreCyber, scoreLife, scoreNeuroVerse, sovereignConduitLens, summarizeExocortex, think, updateKnowledge, writeRead };
|