@tpsdev-ai/flair 0.45.0 → 0.47.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/config.yaml +35 -2
- package/dist/build-info.json +6 -0
- package/dist/cli.js +847 -168
- package/dist/doctor-client.js +358 -11
- package/dist/federation/scheduler.js +114 -9
- package/dist/hook-install.js +150 -1
- package/dist/install/global-bin-path.js +234 -0
- package/dist/lib/entity-vocab-cli.js +113 -0
- package/dist/lib/mcp-enable.js +71 -21
- package/dist/lib/scheduler-platform.js +363 -1
- package/dist/postinstall.cjs +88 -0
- package/dist/rem/runner.js +177 -10
- package/dist/rem/scheduler.js +126 -20
- package/dist/resources/AttentionQuery.js +5 -3
- package/dist/resources/AutoPromoteCandidates.js +18 -12
- package/dist/resources/Federation.js +49 -5
- package/dist/resources/Memory.js +36 -2
- package/dist/resources/MemoryBootstrap.js +118 -7
- package/dist/resources/MemoryMaintenance.js +8 -2
- package/dist/resources/MemoryReflect.js +70 -5
- package/dist/resources/auto-promote-lib.js +46 -0
- package/dist/resources/build-info.js +50 -0
- package/dist/resources/entity-vocab.js +25 -1
- package/dist/resources/health.js +25 -5
- package/dist/resources/mcp-oauth-flag.js +20 -0
- package/dist/resources/mcp-oauth.js +6 -1
- package/dist/resources/mcp-tools.js +53 -3
- package/dist/resources/memory-reflect-lib.js +201 -4
- package/dist/src/lib/scheduler-platform.js +363 -1
- package/dist/src/rem/scheduler.js +126 -20
- package/docs/deepseek-harness.md +110 -0
- package/docs/entity-vocabulary.md +15 -0
- package/docs/integrations.md +1 -0
- package/docs/mcp-clients.md +4 -0
- package/docs/notes/mcp-oauth-model2.md +52 -3
- package/package.json +5 -4
- package/schemas/memory.graphql +12 -0
- package/templates/bin/flair-federation-sync.sh.tmpl +8 -1
- package/templates/bin/flair-rem-nightly.sh.tmpl +8 -1
package/config.yaml
CHANGED
|
@@ -16,9 +16,42 @@ authentication:
|
|
|
16
16
|
clientId: ${OAUTH_GITHUB_CLIENT_ID}
|
|
17
17
|
clientSecret: ${OAUTH_GITHUB_CLIENT_SECRET}
|
|
18
18
|
mcp:
|
|
19
|
-
|
|
19
|
+
# WHOLE-TOKEN env reference — the same FLAIR_MCP_OAUTH flag flair's
|
|
20
|
+
# in-process /mcp route gates on (resources/mcp-oauth-flag.ts). The on/off
|
|
21
|
+
# choice lives in the instance ENVIRONMENT, not in this packed file, so a
|
|
22
|
+
# re-packed deploy can no longer revert an operator's enablement
|
|
23
|
+
# (flair#1152). Requires @harperfast/oauth >= 2.5.0 (resolved-version
|
|
24
|
+
# assertion + behavioral gate: test/integration/mcp-oauth-boot-safety.test.ts).
|
|
25
|
+
#
|
|
26
|
+
# ASYMMETRY (load-bearing, measured on oauth 2.5.0): the two readers of
|
|
27
|
+
# this flag accept DIFFERENT vocabularies. The component's
|
|
28
|
+
# coerceConfigBoolean accepts ONLY "true"/"false" and DELETES any other
|
|
29
|
+
# string (unresolved placeholder, "1", "yes", garbage) so its disabled
|
|
30
|
+
# default applies. flair's mcpOAuthEnabled() accepts 1/true/yes/on.
|
|
31
|
+
#
|
|
32
|
+
# Failure modes (oauth 2.5.0):
|
|
33
|
+
# unset -> placeholder deleted -> both sides OFF, clean boot
|
|
34
|
+
# true -> BOTH sides ON — the one working enable value
|
|
35
|
+
# (`flair mcp enable` stages exactly this)
|
|
36
|
+
# false -> both sides OFF
|
|
37
|
+
# 1 / yes / on -> flair /mcp handler ON, component AS OFF ->
|
|
38
|
+
# fail-closed broken-on: every /mcp request 401s,
|
|
39
|
+
# no AS is advertised. Use "true" instead.
|
|
40
|
+
# garbage (maybe) -> deleted -> component OFF; flair strict -> OFF.
|
|
41
|
+
# Inert: no /mcp handler, no data path (flair's own
|
|
42
|
+
# discovery documents still serve, by design).
|
|
43
|
+
# On oauth <2.5.0 there is NO normalization: an unresolved placeholder is
|
|
44
|
+
# a truthy string (fail-open) — the version assertion exists for that.
|
|
45
|
+
# If the component's `enabled` vocabulary changes, or it ever drives
|
|
46
|
+
# flair's handler registration directly, re-derive this table first.
|
|
47
|
+
enabled: ${FLAIR_MCP_OAUTH}
|
|
20
48
|
issuer: ${FLAIR_MCP_ISSUER}
|
|
21
|
-
resource:
|
|
49
|
+
# No `resource:` key ON PURPOSE (flair#1180): when absent, the component
|
|
50
|
+
# derives `<issuer>/mcp` at request time (resolveResource) — identical to
|
|
51
|
+
# flair's in-process derivation. A composite like ${FLAIR_MCP_ISSUER}/mcp
|
|
52
|
+
# NEVER interpolates (env expansion is whole-token-only) and fails every
|
|
53
|
+
# connect with invalid_target. Escape hatch: an operator needing a
|
|
54
|
+
# non-standard resource sets an explicit LITERAL absolute URL here.
|
|
22
55
|
accessTokenTtl: 900
|
|
23
56
|
dynamicClientRegistration:
|
|
24
57
|
enabled: false
|