@lucern/contracts 0.1.0-alpha.2 → 0.1.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.
Files changed (82) hide show
  1. package/dist/auth-session.contract.d.ts +50 -5
  2. package/dist/auth-session.contract.d.ts.map +1 -1
  3. package/dist/auth-session.contract.js +46 -5
  4. package/dist/auth-session.contract.js.map +1 -1
  5. package/dist/gateway.contract.d.ts +0 -1
  6. package/dist/gateway.contract.d.ts.map +1 -1
  7. package/dist/gateway.contract.js +1 -9
  8. package/dist/gateway.contract.js.map +1 -1
  9. package/dist/index.d.ts +0 -8
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +0 -8
  12. package/dist/index.js.map +1 -1
  13. package/package.json +1 -34
  14. package/README.md +0 -43
  15. package/dist/auth-context.contract.d.ts +0 -9
  16. package/dist/auth-context.contract.d.ts.map +0 -1
  17. package/dist/auth-context.contract.js +0 -9
  18. package/dist/auth-context.contract.js.map +0 -1
  19. package/dist/auth.contract.d.ts +0 -89
  20. package/dist/auth.contract.d.ts.map +0 -1
  21. package/dist/auth.contract.js +0 -58
  22. package/dist/auth.contract.js.map +0 -1
  23. package/dist/convex-admin.contract.d.ts +0 -6
  24. package/dist/convex-admin.contract.d.ts.map +0 -1
  25. package/dist/convex-admin.contract.js +0 -2
  26. package/dist/convex-admin.contract.js.map +0 -1
  27. package/dist/events-types.contract.d.ts +0 -9
  28. package/dist/events-types.contract.d.ts.map +0 -1
  29. package/dist/events-types.contract.js +0 -9
  30. package/dist/events-types.contract.js.map +0 -1
  31. package/dist/events.contract.d.ts +0 -177
  32. package/dist/events.contract.d.ts.map +0 -1
  33. package/dist/events.contract.js +0 -160
  34. package/dist/events.contract.js.map +0 -1
  35. package/dist/ids.contract.d.ts +0 -8
  36. package/dist/ids.contract.d.ts.map +0 -1
  37. package/dist/ids.contract.js +0 -25
  38. package/dist/ids.contract.js.map +0 -1
  39. package/dist/ontology-matching.contract.d.ts +0 -9
  40. package/dist/ontology-matching.contract.d.ts.map +0 -1
  41. package/dist/ontology-matching.contract.js +0 -9
  42. package/dist/ontology-matching.contract.js.map +0 -1
  43. package/dist/text-matching.contract.d.ts +0 -54
  44. package/dist/text-matching.contract.d.ts.map +0 -1
  45. package/dist/text-matching.contract.js +0 -278
  46. package/dist/text-matching.contract.js.map +0 -1
  47. package/dist/topic-scope.contract.d.ts +0 -9
  48. package/dist/topic-scope.contract.d.ts.map +0 -1
  49. package/dist/topic-scope.contract.js +0 -9
  50. package/dist/topic-scope.contract.js.map +0 -1
  51. package/dist/v1/agents/v1.d.ts +0 -9
  52. package/dist/v1/agents/v1.d.ts.map +0 -1
  53. package/dist/v1/agents/v1.js +0 -2
  54. package/dist/v1/agents/v1.js.map +0 -1
  55. package/dist/v1/beliefs/v1.d.ts +0 -9
  56. package/dist/v1/beliefs/v1.d.ts.map +0 -1
  57. package/dist/v1/beliefs/v1.js +0 -2
  58. package/dist/v1/beliefs/v1.js.map +0 -1
  59. package/dist/v1/evidence/v1.d.ts +0 -9
  60. package/dist/v1/evidence/v1.d.ts.map +0 -1
  61. package/dist/v1/evidence/v1.js +0 -2
  62. package/dist/v1/evidence/v1.js.map +0 -1
  63. package/dist/v1/graph/v1.d.ts +0 -9
  64. package/dist/v1/graph/v1.d.ts.map +0 -1
  65. package/dist/v1/graph/v1.js +0 -2
  66. package/dist/v1/graph/v1.js.map +0 -1
  67. package/dist/v1/ontologies/v1.d.ts +0 -77
  68. package/dist/v1/ontologies/v1.d.ts.map +0 -1
  69. package/dist/v1/ontologies/v1.js +0 -179
  70. package/dist/v1/ontologies/v1.js.map +0 -1
  71. package/dist/v1/questions/v1.d.ts +0 -9
  72. package/dist/v1/questions/v1.d.ts.map +0 -1
  73. package/dist/v1/questions/v1.js +0 -2
  74. package/dist/v1/questions/v1.js.map +0 -1
  75. package/dist/v1/topics/v1.d.ts +0 -20
  76. package/dist/v1/topics/v1.d.ts.map +0 -1
  77. package/dist/v1/topics/v1.js +0 -62
  78. package/dist/v1/topics/v1.js.map +0 -1
  79. package/dist/v1/worktrees/v1.d.ts +0 -9
  80. package/dist/v1/worktrees/v1.d.ts.map +0 -1
  81. package/dist/v1/worktrees/v1.js +0 -2
  82. package/dist/v1/worktrees/v1.js.map +0 -1
@@ -1,9 +1,54 @@
1
1
  /**
2
- * @lucern/contracts auth-session compat shim
2
+ * Session + Delegation Contract
3
3
  *
4
- * This file consolidated into ./auth.contract.ts during EK-16 T1 PR 3a.
5
- * Retained here until the Lucern 1.0.0 barrel-sunset cut (D12).
6
- * New code should import from "@lucern/contracts" (barrel) or "./auth.contract".
4
+ * Canonical session lifecycle vocabulary shared by platform gateway auth,
5
+ * hosted MCP auth, Master Control persistence, and SDK session tokens.
7
6
  */
8
- export * from "./auth.contract";
7
+ export declare const SESSION_AUTH_MODES: readonly ["interactive_user", "service_principal", "tenant_api_key", "session_token"];
8
+ export type SessionAuthMode = (typeof SESSION_AUTH_MODES)[number];
9
+ export declare const SESSION_PRINCIPAL_TYPES: readonly ["human", "service", "agent"];
10
+ export type SessionPrincipalType = (typeof SESSION_PRINCIPAL_TYPES)[number];
11
+ export declare const SESSION_LIFECYCLE_STATUSES: readonly ["active", "expired", "revoked"];
12
+ export type SessionLifecycleStatus = (typeof SESSION_LIFECYCLE_STATUSES)[number];
13
+ export type SessionDelegationHop = {
14
+ principalId: string;
15
+ principalType: SessionPrincipalType;
16
+ authMode?: SessionAuthMode;
17
+ sessionId?: string;
18
+ delegatedAt?: number;
19
+ reason?: string;
20
+ };
21
+ export type SessionAuditOutcome = "accepted" | "rejected" | "revoked" | "expired";
22
+ export type SessionAuditEnvelope = {
23
+ sessionId: string;
24
+ authMode: SessionAuthMode;
25
+ principalId: string;
26
+ principalType: SessionPrincipalType;
27
+ tenantId: string;
28
+ workspaceId?: string;
29
+ apiKeyId?: string;
30
+ scopes: readonly string[];
31
+ roles?: readonly string[];
32
+ delegationChain?: readonly SessionDelegationHop[];
33
+ sourceSessionId?: string;
34
+ expiresAt?: number;
35
+ request?: {
36
+ endpoint?: string;
37
+ method?: string;
38
+ correlationId?: string;
39
+ };
40
+ result?: {
41
+ outcome: SessionAuditOutcome;
42
+ reason?: string;
43
+ };
44
+ };
45
+ export declare function inferSessionPrincipalType(principalId: string): SessionPrincipalType;
46
+ export declare function normalizeDelegationChain(args: {
47
+ delegationChain?: readonly SessionDelegationHop[];
48
+ delegatedBy?: string;
49
+ delegatedByType?: SessionPrincipalType;
50
+ delegatedAt?: number;
51
+ reason?: string;
52
+ }): SessionDelegationHop[] | undefined;
53
+ export declare function lastDelegator(delegationChain?: readonly SessionDelegationHop[]): string | undefined;
9
54
  //# sourceMappingURL=auth-session.contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-session.contract.d.ts","sourceRoot":"","sources":["../src/auth-session.contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"auth-session.contract.d.ts","sourceRoot":"","sources":["../src/auth-session.contract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,kBAAkB,uFAKrB,CAAC;AACX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,eAAO,MAAM,uBAAuB,wCAAyC,CAAC;AAC9E,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,eAAO,MAAM,0BAA0B,2CAI7B,CAAC;AACX,MAAM,MAAM,sBAAsB,GAChC,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9C,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B,UAAU,GACV,UAAU,GACV,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,eAAe,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,oBAAoB,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,eAAe,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,OAAO,EAAE,mBAAmB,CAAC;QAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,GAClB,oBAAoB,CAQtB;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,eAAe,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,oBAAoB,EAAE,GAAG,SAAS,CAgBrC;AAED,wBAAgB,aAAa,CAC3B,eAAe,CAAC,EAAE,SAAS,oBAAoB,EAAE,GAChD,MAAM,GAAG,SAAS,CAKpB"}
@@ -1,9 +1,50 @@
1
1
  /**
2
- * @lucern/contracts auth-session compat shim
2
+ * Session + Delegation Contract
3
3
  *
4
- * This file consolidated into ./auth.contract.ts during EK-16 T1 PR 3a.
5
- * Retained here until the Lucern 1.0.0 barrel-sunset cut (D12).
6
- * New code should import from "@lucern/contracts" (barrel) or "./auth.contract".
4
+ * Canonical session lifecycle vocabulary shared by platform gateway auth,
5
+ * hosted MCP auth, Master Control persistence, and SDK session tokens.
7
6
  */
8
- export * from "./auth.contract";
7
+ export const SESSION_AUTH_MODES = [
8
+ "interactive_user",
9
+ "service_principal",
10
+ "tenant_api_key",
11
+ "session_token",
12
+ ];
13
+ export const SESSION_PRINCIPAL_TYPES = ["human", "service", "agent"];
14
+ export const SESSION_LIFECYCLE_STATUSES = [
15
+ "active",
16
+ "expired",
17
+ "revoked",
18
+ ];
19
+ export function inferSessionPrincipalType(principalId) {
20
+ if (principalId.startsWith("user:")) {
21
+ return "human";
22
+ }
23
+ if (principalId.startsWith("agent:")) {
24
+ return "agent";
25
+ }
26
+ return "service";
27
+ }
28
+ export function normalizeDelegationChain(args) {
29
+ if (args.delegationChain && args.delegationChain.length > 0) {
30
+ return [...args.delegationChain];
31
+ }
32
+ if (!args.delegatedBy) {
33
+ return;
34
+ }
35
+ return [
36
+ {
37
+ principalId: args.delegatedBy,
38
+ principalType: args.delegatedByType ?? inferSessionPrincipalType(args.delegatedBy),
39
+ delegatedAt: args.delegatedAt,
40
+ reason: args.reason,
41
+ },
42
+ ];
43
+ }
44
+ export function lastDelegator(delegationChain) {
45
+ if (!delegationChain || delegationChain.length === 0) {
46
+ return;
47
+ }
48
+ return delegationChain[delegationChain.length - 1]?.principalId;
49
+ }
9
50
  //# sourceMappingURL=auth-session.contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-session.contract.js","sourceRoot":"","sources":["../src/auth-session.contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"auth-session.contract.js","sourceRoot":"","sources":["../src/auth-session.contract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,kBAAkB;IAClB,mBAAmB;IACnB,gBAAgB;IAChB,eAAe;CACP,CAAC;AAGX,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAG9E,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,QAAQ;IACR,SAAS;IACT,SAAS;CACD,CAAC;AA2CX,MAAM,UAAU,yBAAyB,CACvC,WAAmB;IAEnB,IAAI,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAMxC;IACC,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5D,OAAO,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IACD,OAAO;QACL;YACE,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EACX,IAAI,CAAC,eAAe,IAAI,yBAAyB,CAAC,IAAI,CAAC,WAAW,CAAC;YACrE,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,eAAiD;IAEjD,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO;IACT,CAAC;IACD,OAAO,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC;AAClE,CAAC"}
@@ -71,5 +71,4 @@ export type GatewaySuccessArgs = {
71
71
  policyTraceId?: string;
72
72
  idempotentReplay?: boolean;
73
73
  };
74
- export declare function requireActorPrincipalId(authContext: GatewayAuthContext): string;
75
74
  //# sourceMappingURL=gateway.contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.contract.d.ts","sourceRoot":"","sources":["../src/gateway.contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway.contract.d.ts","sourceRoot":"","sources":["../src/gateway.contract.ts"],"names":[],"mappings":"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"}
@@ -8,13 +8,5 @@
8
8
  *
9
9
  * @module @lucern/contracts/src/gateway
10
10
  */
11
- export function requireActorPrincipalId(authContext) {
12
- const principalId = typeof authContext.principalId === "string"
13
- ? authContext.principalId.trim()
14
- : "";
15
- if (principalId.length > 0) {
16
- return principalId;
17
- }
18
- throw new Error("Access denied: federated principal context required.");
19
- }
11
+ export {};
20
12
  //# sourceMappingURL=gateway.contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.contract.js","sourceRoot":"","sources":["../src/gateway.contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAkIH,MAAM,UAAU,uBAAuB,CACrC,WAA+B;IAE/B,MAAM,WAAW,GACf,OAAO,WAAW,CAAC,WAAW,KAAK,QAAQ;QACzC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE;QAChC,CAAC,CAAC,EAAE,CAAC;IACT,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"gateway.contract.js","sourceRoot":"","sources":["../src/gateway.contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
package/dist/index.d.ts CHANGED
@@ -12,19 +12,11 @@
12
12
  */
13
13
  export * from "./api-enums.contract";
14
14
  export * from "./auth-session.contract";
15
- export * from "./auth-context.contract";
16
- export * from "./convex-admin.contract";
17
15
  export * from "./gateway.contract";
18
16
  export * from "./context-pack.contract";
19
- export * from "./events.contract";
20
- export * from "./events-types.contract";
21
- export * from "./ids.contract";
22
17
  export * as mcpToolsContract from "./mcp-tools.contract";
23
- export * from "./ontology-matching.contract";
24
18
  export * from "./prompt.contract";
25
19
  export * from "./sdk-methods.contract";
26
20
  export * as sdkToolsContract from "./sdk-tools.contract";
27
- export * from "./text-matching.contract";
28
- export * from "./topic-scope.contract";
29
21
  export * from "./workflow-runtime.contract";
30
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,cAAc,6BAA6B,CAAC"}
package/dist/index.js CHANGED
@@ -12,19 +12,11 @@
12
12
  */
13
13
  export * from "./api-enums.contract";
14
14
  export * from "./auth-session.contract";
15
- export * from "./auth-context.contract";
16
- export * from "./convex-admin.contract";
17
15
  export * from "./gateway.contract";
18
16
  export * from "./context-pack.contract";
19
- export * from "./events.contract";
20
- export * from "./events-types.contract";
21
- export * from "./ids.contract";
22
17
  export * as mcpToolsContract from "./mcp-tools.contract";
23
- export * from "./ontology-matching.contract";
24
18
  export * from "./prompt.contract";
25
19
  export * from "./sdk-methods.contract";
26
20
  export * as sdkToolsContract from "./sdk-tools.contract";
27
- export * from "./text-matching.contract";
28
- export * from "./topic-scope.contract";
29
21
  export * from "./workflow-runtime.contract";
30
22
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,OAAO,KAAK,gBAAgB,MAAM,sBAAsB,CAAC;AACzD,cAAc,6BAA6B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lucern/contracts",
3
- "version": "0.1.0-alpha.2",
3
+ "version": "0.1.0",
4
4
  "description": "Lucern shared boundary contracts and public types",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,
@@ -15,38 +15,6 @@
15
15
  "types": "./dist/index.d.ts",
16
16
  "import": "./dist/index.js"
17
17
  },
18
- "./v1/beliefs": {
19
- "types": "./dist/v1/beliefs/v1.d.ts",
20
- "import": "./dist/v1/beliefs/v1.js"
21
- },
22
- "./v1/evidence": {
23
- "types": "./dist/v1/evidence/v1.d.ts",
24
- "import": "./dist/v1/evidence/v1.js"
25
- },
26
- "./v1/questions": {
27
- "types": "./dist/v1/questions/v1.d.ts",
28
- "import": "./dist/v1/questions/v1.js"
29
- },
30
- "./v1/topics": {
31
- "types": "./dist/v1/topics/v1.d.ts",
32
- "import": "./dist/v1/topics/v1.js"
33
- },
34
- "./v1/graph": {
35
- "types": "./dist/v1/graph/v1.d.ts",
36
- "import": "./dist/v1/graph/v1.js"
37
- },
38
- "./v1/agents": {
39
- "types": "./dist/v1/agents/v1.d.ts",
40
- "import": "./dist/v1/agents/v1.js"
41
- },
42
- "./v1/worktrees": {
43
- "types": "./dist/v1/worktrees/v1.d.ts",
44
- "import": "./dist/v1/worktrees/v1.js"
45
- },
46
- "./v1/ontologies": {
47
- "types": "./dist/v1/ontologies/v1.d.ts",
48
- "import": "./dist/v1/ontologies/v1.js"
49
- },
50
18
  "./*": {
51
19
  "types": "./dist/*.d.ts",
52
20
  "import": "./dist/*.js"
@@ -55,7 +23,6 @@
55
23
  "scripts": {
56
24
  "build": "tsc --project tsconfig.build.json",
57
25
  "typecheck": "tsc --noEmit",
58
- "prepack": "npm run build",
59
26
  "prepublishOnly": "npm run build"
60
27
  },
61
28
  "devDependencies": {
package/README.md DELETED
@@ -1,43 +0,0 @@
1
- # @lucern/contracts
2
-
3
- Shared boundary contracts and public types for the Lucern reasoning platform.
4
-
5
- ## What's in the box
6
-
7
- - **Versioned resource namespaces** at `./v1/<resource>/v1.ts`:
8
- - `@lucern/contracts/v1/beliefs`, `/v1/evidence`, `/v1/questions`, `/v1/topics`,
9
- `/v1/graph`, `/v1/agents`, `/v1/worktrees`, `/v1/ontologies`
10
- - These are the contract surfaces for each Lucern resource type. Use them when you
11
- want to commit to a specific major version of a resource's schema.
12
- - **Flat support contracts** at the package root:
13
- - `auth`, `gateway`, `context-pack`, `prompt`, `workflow-runtime`, `lens-filter`,
14
- `lens-workflow`, `mcp-tools`, `sdk-methods`, `sdk-tools`, `api-enums`,
15
- `text-matching`, `ids`, `convex-admin`, `events`
16
- - Cross-cutting surfaces that don't cleanly slot into a single resource namespace.
17
-
18
- ## Stability
19
-
20
- This package is an **alpha preview** published during the EK-16 code-separation track.
21
- Breaking changes may land between alpha versions without a major-version bump until
22
- the first `1.0.0` release.
23
-
24
- Compatibility barrels at pre-reshape import paths (`auth-context`, `auth-session`,
25
- `events-types`, `topic-scope`, `ontology-matching`) are retained until the
26
- `1.0.0` cut to smooth the consumer migration.
27
-
28
- ## Usage
29
-
30
- ```ts
31
- // Versioned resource import (preferred for new code)
32
- import { ROOT_TOPIC_ID, type TopicDoc } from "@lucern/contracts/v1/topics";
33
-
34
- // Flat support contract import
35
- import type { AuthContext } from "@lucern/contracts/auth.contract";
36
-
37
- // Or via the package-root barrel (re-exports everything)
38
- import type { AuthContext, TopicDoc } from "@lucern/contracts";
39
- ```
40
-
41
- ## License
42
-
43
- UNLICENSED — internal Lucern / Stack use. See project root for details.
@@ -1,9 +0,0 @@
1
- /**
2
- * @lucern/contracts — auth-context compat shim
3
- *
4
- * This file consolidated into ./auth.contract.ts during EK-16 T1 PR 3a.
5
- * Retained here until the Lucern 1.0.0 barrel-sunset cut (D12).
6
- * New code should import from "@lucern/contracts" (barrel) or "./auth.contract".
7
- */
8
- export * from "./auth.contract";
9
- //# sourceMappingURL=auth-context.contract.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-context.contract.d.ts","sourceRoot":"","sources":["../src/auth-context.contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,iBAAiB,CAAC"}
@@ -1,9 +0,0 @@
1
- /**
2
- * @lucern/contracts — auth-context compat shim
3
- *
4
- * This file consolidated into ./auth.contract.ts during EK-16 T1 PR 3a.
5
- * Retained here until the Lucern 1.0.0 barrel-sunset cut (D12).
6
- * New code should import from "@lucern/contracts" (barrel) or "./auth.contract".
7
- */
8
- export * from "./auth.contract";
9
- //# sourceMappingURL=auth-context.contract.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-context.contract.js","sourceRoot":"","sources":["../src/auth-context.contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,iBAAiB,CAAC"}
@@ -1,89 +0,0 @@
1
- /**
2
- * @lucern/contracts — auth (canonical support contract)
3
- *
4
- * Consolidated flat support surface for Lucern authentication:
5
- * - Session primitives (auth modes, principal types, lifecycle)
6
- * - AuthContext shape + McpTransportKind + LucernSdkClient alias
7
- *
8
- * Consolidated from src/auth-session.contract.ts and src/auth-context.contract.ts
9
- * in EK-16 T1 PR 3a. Compat shims remain at both old paths until Lucern 1.0.0 (D12).
10
- */
11
- export declare const SESSION_AUTH_MODES: readonly ["interactive_user", "service_principal", "tenant_api_key", "session_token"];
12
- export type SessionAuthMode = (typeof SESSION_AUTH_MODES)[number];
13
- export declare const SESSION_PRINCIPAL_TYPES: readonly ["human", "service", "agent"];
14
- export type SessionPrincipalType = (typeof SESSION_PRINCIPAL_TYPES)[number];
15
- export declare const SESSION_LIFECYCLE_STATUSES: readonly ["active", "expired", "revoked"];
16
- export type SessionLifecycleStatus = (typeof SESSION_LIFECYCLE_STATUSES)[number];
17
- export type SessionDelegationHop = {
18
- principalId: string;
19
- principalType: SessionPrincipalType;
20
- authMode?: SessionAuthMode;
21
- sessionId?: string;
22
- delegatedAt?: number;
23
- reason?: string;
24
- };
25
- export type SessionAuditOutcome = "accepted" | "rejected" | "revoked" | "expired";
26
- export type SessionAuditEnvelope = {
27
- sessionId: string;
28
- authMode: SessionAuthMode;
29
- principalId: string;
30
- principalType: SessionPrincipalType;
31
- tenantId: string;
32
- workspaceId?: string;
33
- apiKeyId?: string;
34
- scopes: readonly string[];
35
- roles?: readonly string[];
36
- delegationChain?: readonly SessionDelegationHop[];
37
- sourceSessionId?: string;
38
- expiresAt?: number;
39
- request?: {
40
- endpoint?: string;
41
- method?: string;
42
- correlationId?: string;
43
- };
44
- result?: {
45
- outcome: SessionAuditOutcome;
46
- reason?: string;
47
- };
48
- };
49
- export declare function inferSessionPrincipalType(principalId: string): SessionPrincipalType;
50
- export declare function normalizeDelegationChain(args: {
51
- delegationChain?: readonly SessionDelegationHop[];
52
- delegatedBy?: string;
53
- delegatedByType?: SessionPrincipalType;
54
- delegatedAt?: number;
55
- reason?: string;
56
- }): SessionDelegationHop[] | undefined;
57
- export declare function lastDelegator(delegationChain?: readonly SessionDelegationHop[]): string | undefined;
58
- import type { ConvexAdminClient } from "./convex-admin.contract";
59
- export type McpTransportKind = "stdio" | "hosted";
60
- export type LucernSdkClient = unknown;
61
- /**
62
- * Session authentication context — injected by withAuth() middleware.
63
- *
64
- * Built from TenantConfig at dispatch time. Agent sessions get
65
- * AGENT_IDENTITY + "agent:internal" role + unrestricted access.
66
- * User sessions get Clerk userId + resolved role + tool ACLs.
67
- */
68
- export type AuthContext = {
69
- sessionType: "agent" | "user";
70
- userId: string;
71
- tenantId: string;
72
- role: string;
73
- allowedTopics: string[] | null;
74
- groupIds: string[];
75
- permittedPackKeys: string[];
76
- sessionId: string;
77
- principalId?: string;
78
- principalType?: SessionPrincipalType;
79
- workspaceId?: string;
80
- scopes?: string[];
81
- authMode?: SessionAuthMode;
82
- roles?: string[];
83
- transportKind?: McpTransportKind;
84
- lucernClient?: LucernSdkClient;
85
- convex?: ConvexAdminClient;
86
- setDefaultScopeContext?: (scopeId: string) => Promise<unknown>;
87
- matchesWorkspaceReasoningScope?: (node: unknown, scope: unknown) => boolean;
88
- };
89
- //# sourceMappingURL=auth.contract.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.contract.d.ts","sourceRoot":"","sources":["../src/auth.contract.ts"],"names":[],"mappings":"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"}
@@ -1,58 +0,0 @@
1
- /**
2
- * @lucern/contracts — auth (canonical support contract)
3
- *
4
- * Consolidated flat support surface for Lucern authentication:
5
- * - Session primitives (auth modes, principal types, lifecycle)
6
- * - AuthContext shape + McpTransportKind + LucernSdkClient alias
7
- *
8
- * Consolidated from src/auth-session.contract.ts and src/auth-context.contract.ts
9
- * in EK-16 T1 PR 3a. Compat shims remain at both old paths until Lucern 1.0.0 (D12).
10
- */
11
- // =============================================================================
12
- // SESSION PRIMITIVES
13
- // (Formerly src/auth-session.contract.ts)
14
- // =============================================================================
15
- export const SESSION_AUTH_MODES = [
16
- "interactive_user",
17
- "service_principal",
18
- "tenant_api_key",
19
- "session_token",
20
- ];
21
- export const SESSION_PRINCIPAL_TYPES = ["human", "service", "agent"];
22
- export const SESSION_LIFECYCLE_STATUSES = [
23
- "active",
24
- "expired",
25
- "revoked",
26
- ];
27
- export function inferSessionPrincipalType(principalId) {
28
- if (principalId.startsWith("user:")) {
29
- return "human";
30
- }
31
- if (principalId.startsWith("agent:")) {
32
- return "agent";
33
- }
34
- return "service";
35
- }
36
- export function normalizeDelegationChain(args) {
37
- if (args.delegationChain && args.delegationChain.length > 0) {
38
- return [...args.delegationChain];
39
- }
40
- if (!args.delegatedBy) {
41
- return;
42
- }
43
- return [
44
- {
45
- principalId: args.delegatedBy,
46
- principalType: args.delegatedByType ?? inferSessionPrincipalType(args.delegatedBy),
47
- delegatedAt: args.delegatedAt,
48
- reason: args.reason,
49
- },
50
- ];
51
- }
52
- export function lastDelegator(delegationChain) {
53
- if (!delegationChain || delegationChain.length === 0) {
54
- return;
55
- }
56
- return delegationChain[delegationChain.length - 1]?.principalId;
57
- }
58
- //# sourceMappingURL=auth.contract.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.contract.js","sourceRoot":"","sources":["../src/auth.contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,gFAAgF;AAChF,qBAAqB;AACrB,0CAA0C;AAC1C,gFAAgF;AAEhF,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,kBAAkB;IAClB,mBAAmB;IACnB,gBAAgB;IAChB,eAAe;CACP,CAAC;AAGX,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAG9E,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,QAAQ;IACR,SAAS;IACT,SAAS;CACD,CAAC;AA2CX,MAAM,UAAU,yBAAyB,CACvC,WAAmB;IAEnB,IAAI,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAMxC;IACC,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5D,OAAO,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IACD,OAAO;QACL;YACE,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EACX,IAAI,CAAC,eAAe,IAAI,yBAAyB,CAAC,IAAI,CAAC,WAAW,CAAC;YACrE,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,eAAiD;IAEjD,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO;IACT,CAAC;IACD,OAAO,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC;AAClE,CAAC"}
@@ -1,6 +0,0 @@
1
- export interface ConvexAdminClient {
2
- query<T = unknown>(functionReference: unknown, args: Record<string, unknown>): Promise<T>;
3
- mutation<T = unknown>(functionReference: unknown, args: Record<string, unknown>): Promise<T>;
4
- action<T = unknown>(functionReference: unknown, args: Record<string, unknown>): Promise<T>;
5
- }
6
- //# sourceMappingURL=convex-admin.contract.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"convex-admin.contract.d.ts","sourceRoot":"","sources":["../src/convex-admin.contract.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,CAAC,GAAG,OAAO,EACf,iBAAiB,EAAE,OAAO,EAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC,CAAC;IACd,QAAQ,CAAC,CAAC,GAAG,OAAO,EAClB,iBAAiB,EAAE,OAAO,EAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC,CAAC;IACd,MAAM,CAAC,CAAC,GAAG,OAAO,EAChB,iBAAiB,EAAE,OAAO,EAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC,CAAC;CACf"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=convex-admin.contract.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"convex-admin.contract.js","sourceRoot":"","sources":["../src/convex-admin.contract.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- /**
2
- * @lucern/contracts — events-types compat shim
3
- *
4
- * This file consolidated into ./events.contract.ts during EK-16 T1 PR 3b.
5
- * Retained here until the Lucern 1.0.0 barrel-sunset cut (D12).
6
- * New code should import from "@lucern/contracts" (barrel) or "./events.contract".
7
- */
8
- export * from "./events.contract";
9
- //# sourceMappingURL=events-types.contract.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events-types.contract.d.ts","sourceRoot":"","sources":["../src/events-types.contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,mBAAmB,CAAC"}
@@ -1,9 +0,0 @@
1
- /**
2
- * @lucern/contracts — events-types compat shim
3
- *
4
- * This file consolidated into ./events.contract.ts during EK-16 T1 PR 3b.
5
- * Retained here until the Lucern 1.0.0 barrel-sunset cut (D12).
6
- * New code should import from "@lucern/contracts" (barrel) or "./events.contract".
7
- */
8
- export * from "./events.contract";
9
- //# sourceMappingURL=events-types.contract.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events-types.contract.js","sourceRoot":"","sources":["../src/events-types.contract.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,mBAAmB,CAAC"}