fivocell 1.0.0 → 1.0.2
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/LICENSE +202 -98
- package/README.md +418 -180
- package/dist/cli.js +698 -80
- package/dist/cli.js.map +1 -1
- package/dist/core/__tests__/ab-test-framework.test.d.ts +2 -0
- package/dist/core/__tests__/ab-test-framework.test.d.ts.map +1 -0
- package/dist/core/__tests__/ab-test-framework.test.js +43 -0
- package/dist/core/__tests__/ab-test-framework.test.js.map +1 -0
- package/dist/core/__tests__/ai-memory.test.d.ts +2 -0
- package/dist/core/__tests__/ai-memory.test.d.ts.map +1 -0
- package/dist/core/__tests__/ai-memory.test.js +143 -0
- package/dist/core/__tests__/ai-memory.test.js.map +1 -0
- package/dist/core/__tests__/ast-extractor.test.d.ts +2 -0
- package/dist/core/__tests__/ast-extractor.test.d.ts.map +1 -0
- package/dist/core/__tests__/ast-extractor.test.js +30 -0
- package/dist/core/__tests__/ast-extractor.test.js.map +1 -0
- package/dist/core/__tests__/build-failure-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/build-failure-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/build-failure-predictor.test.js +76 -0
- package/dist/core/__tests__/build-failure-predictor.test.js.map +1 -0
- package/dist/core/__tests__/chapter3-verify.test.d.ts +2 -0
- package/dist/core/__tests__/chapter3-verify.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter3-verify.test.js +315 -0
- package/dist/core/__tests__/chapter3-verify.test.js.map +1 -0
- package/dist/core/__tests__/chapter4-hostile.test.d.ts +11 -0
- package/dist/core/__tests__/chapter4-hostile.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter4-hostile.test.js +269 -0
- package/dist/core/__tests__/chapter4-hostile.test.js.map +1 -0
- package/dist/core/__tests__/chapter4-verify.test.d.ts +2 -0
- package/dist/core/__tests__/chapter4-verify.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter4-verify.test.js +349 -0
- package/dist/core/__tests__/chapter4-verify.test.js.map +1 -0
- package/dist/core/__tests__/chapter8-hostile.test.d.ts +2 -0
- package/dist/core/__tests__/chapter8-hostile.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter8-hostile.test.js +445 -0
- package/dist/core/__tests__/chapter8-hostile.test.js.map +1 -0
- package/dist/core/__tests__/chapter9-hostile.test.d.ts +2 -0
- package/dist/core/__tests__/chapter9-hostile.test.d.ts.map +1 -0
- package/dist/core/__tests__/chapter9-hostile.test.js +783 -0
- package/dist/core/__tests__/chapter9-hostile.test.js.map +1 -0
- package/dist/core/__tests__/circular-dependency-detector.test.d.ts +2 -0
- package/dist/core/__tests__/circular-dependency-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/circular-dependency-detector.test.js +55 -0
- package/dist/core/__tests__/circular-dependency-detector.test.js.map +1 -0
- package/dist/core/__tests__/community-full.test.d.ts +2 -0
- package/dist/core/__tests__/community-full.test.d.ts.map +1 -0
- package/dist/core/__tests__/community-full.test.js +70 -0
- package/dist/core/__tests__/community-full.test.js.map +1 -0
- package/dist/core/__tests__/community-live.test.d.ts +2 -0
- package/dist/core/__tests__/community-live.test.d.ts.map +1 -0
- package/dist/core/__tests__/community-live.test.js +67 -0
- package/dist/core/__tests__/community-live.test.js.map +1 -0
- package/dist/core/__tests__/complexity-analyzer.test.d.ts +2 -0
- package/dist/core/__tests__/complexity-analyzer.test.d.ts.map +1 -0
- package/dist/core/__tests__/complexity-analyzer.test.js +54 -0
- package/dist/core/__tests__/complexity-analyzer.test.js.map +1 -0
- package/dist/core/__tests__/config-attribution.test.d.ts +2 -0
- package/dist/core/__tests__/config-attribution.test.d.ts.map +1 -0
- package/dist/core/__tests__/config-attribution.test.js +45 -0
- package/dist/core/__tests__/config-attribution.test.js.map +1 -0
- package/dist/core/__tests__/conflict-detector.test.d.ts +2 -0
- package/dist/core/__tests__/conflict-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/conflict-detector.test.js +120 -0
- package/dist/core/__tests__/conflict-detector.test.js.map +1 -0
- package/dist/core/__tests__/context-restore.test.d.ts +2 -0
- package/dist/core/__tests__/context-restore.test.d.ts.map +1 -0
- package/dist/core/__tests__/context-restore.test.js +75 -0
- package/dist/core/__tests__/context-restore.test.js.map +1 -0
- package/dist/core/__tests__/convention-detector.test.d.ts +2 -0
- package/dist/core/__tests__/convention-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/convention-detector.test.js +97 -0
- package/dist/core/__tests__/convention-detector.test.js.map +1 -0
- package/dist/core/__tests__/cost-optimizer.test.d.ts +1 -0
- package/dist/core/__tests__/cost-optimizer.test.d.ts.map +1 -0
- package/dist/core/__tests__/cost-optimizer.test.js +92 -0
- package/dist/core/__tests__/cost-optimizer.test.js.map +1 -0
- package/dist/core/__tests__/cross-domain-projections.test.d.ts +2 -0
- package/dist/core/__tests__/cross-domain-projections.test.d.ts.map +1 -0
- package/dist/core/__tests__/cross-domain-projections.test.js +36 -0
- package/dist/core/__tests__/cross-domain-projections.test.js.map +1 -0
- package/dist/core/__tests__/cross-project-sync.test.d.ts +2 -0
- package/dist/core/__tests__/cross-project-sync.test.d.ts.map +1 -0
- package/dist/core/__tests__/cross-project-sync.test.js +67 -0
- package/dist/core/__tests__/cross-project-sync.test.js.map +1 -0
- package/dist/core/__tests__/dead-code-detector.test.d.ts +2 -0
- package/dist/core/__tests__/dead-code-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/dead-code-detector.test.js +41 -0
- package/dist/core/__tests__/dead-code-detector.test.js.map +1 -0
- package/dist/core/__tests__/dependency-health-checker.test.d.ts +2 -0
- package/dist/core/__tests__/dependency-health-checker.test.d.ts.map +1 -0
- package/dist/core/__tests__/dependency-health-checker.test.js +50 -0
- package/dist/core/__tests__/dependency-health-checker.test.js.map +1 -0
- package/dist/core/__tests__/duplication-detector.test.d.ts +2 -0
- package/dist/core/__tests__/duplication-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/duplication-detector.test.js +46 -0
- package/dist/core/__tests__/duplication-detector.test.js.map +1 -0
- package/dist/core/__tests__/error-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/error-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/error-predictor.test.js +65 -0
- package/dist/core/__tests__/error-predictor.test.js.map +1 -0
- package/dist/core/__tests__/explainability.test.d.ts +2 -0
- package/dist/core/__tests__/explainability.test.d.ts.map +1 -0
- package/dist/core/__tests__/explainability.test.js +112 -0
- package/dist/core/__tests__/explainability.test.js.map +1 -0
- package/dist/core/__tests__/failure-memory.test.d.ts +2 -0
- package/dist/core/__tests__/failure-memory.test.d.ts.map +1 -0
- package/dist/core/__tests__/failure-memory.test.js +124 -0
- package/dist/core/__tests__/failure-memory.test.js.map +1 -0
- package/dist/core/__tests__/git-branch-pregenerator.test.d.ts +2 -0
- package/dist/core/__tests__/git-branch-pregenerator.test.d.ts.map +1 -0
- package/dist/core/__tests__/git-branch-pregenerator.test.js +44 -0
- package/dist/core/__tests__/git-branch-pregenerator.test.js.map +1 -0
- package/dist/core/__tests__/handoff-detector.test.d.ts +2 -0
- package/dist/core/__tests__/handoff-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/handoff-detector.test.js +71 -0
- package/dist/core/__tests__/handoff-detector.test.js.map +1 -0
- package/dist/core/__tests__/interruption-recovery.test.d.ts +2 -0
- package/dist/core/__tests__/interruption-recovery.test.d.ts.map +1 -0
- package/dist/core/__tests__/interruption-recovery.test.js +66 -0
- package/dist/core/__tests__/interruption-recovery.test.js.map +1 -0
- package/dist/core/__tests__/knowledge-graph.test.d.ts +1 -0
- package/dist/core/__tests__/knowledge-graph.test.d.ts.map +1 -0
- package/dist/core/__tests__/knowledge-graph.test.js +124 -0
- package/dist/core/__tests__/knowledge-graph.test.js.map +1 -0
- package/dist/core/__tests__/knowledge-silo-detector.test.d.ts +2 -0
- package/dist/core/__tests__/knowledge-silo-detector.test.d.ts.map +1 -0
- package/dist/core/__tests__/knowledge-silo-detector.test.js +77 -0
- package/dist/core/__tests__/knowledge-silo-detector.test.js.map +1 -0
- package/dist/core/__tests__/language-switch-assistant.test.d.ts +2 -0
- package/dist/core/__tests__/language-switch-assistant.test.d.ts.map +1 -0
- package/dist/core/__tests__/language-switch-assistant.test.js +34 -0
- package/dist/core/__tests__/language-switch-assistant.test.js.map +1 -0
- package/dist/core/__tests__/marketplace.test.d.ts +2 -0
- package/dist/core/__tests__/marketplace.test.d.ts.map +1 -0
- package/dist/core/__tests__/marketplace.test.js +96 -0
- package/dist/core/__tests__/marketplace.test.js.map +1 -0
- package/dist/core/__tests__/merge-conflict-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/merge-conflict-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/merge-conflict-predictor.test.js +36 -0
- package/dist/core/__tests__/merge-conflict-predictor.test.js.map +1 -0
- package/dist/core/__tests__/next-action-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/next-action-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/next-action-predictor.test.js +57 -0
- package/dist/core/__tests__/next-action-predictor.test.js.map +1 -0
- package/dist/core/__tests__/offline-queue.test.d.ts +2 -0
- package/dist/core/__tests__/offline-queue.test.d.ts.map +1 -0
- package/dist/core/__tests__/offline-queue.test.js +84 -0
- package/dist/core/__tests__/offline-queue.test.js.map +1 -0
- package/dist/core/__tests__/organization-memory.test.d.ts +2 -0
- package/dist/core/__tests__/organization-memory.test.d.ts.map +1 -0
- package/dist/core/__tests__/organization-memory.test.js +89 -0
- package/dist/core/__tests__/organization-memory.test.js.map +1 -0
- package/dist/core/__tests__/pattern-utils.test.d.ts +2 -0
- package/dist/core/__tests__/pattern-utils.test.d.ts.map +1 -0
- package/dist/core/__tests__/pattern-utils.test.js +52 -0
- package/dist/core/__tests__/pattern-utils.test.js.map +1 -0
- package/dist/core/__tests__/performance-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/performance-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/performance-predictor.test.js +60 -0
- package/dist/core/__tests__/performance-predictor.test.js.map +1 -0
- package/dist/core/__tests__/playbook-generator.test.d.ts +2 -0
- package/dist/core/__tests__/playbook-generator.test.d.ts.map +1 -0
- package/dist/core/__tests__/playbook-generator.test.js +94 -0
- package/dist/core/__tests__/playbook-generator.test.js.map +1 -0
- package/dist/core/__tests__/pr-review-assistant.test.d.ts +2 -0
- package/dist/core/__tests__/pr-review-assistant.test.d.ts.map +1 -0
- package/dist/core/__tests__/pr-review-assistant.test.js +35 -0
- package/dist/core/__tests__/pr-review-assistant.test.js.map +1 -0
- package/dist/core/__tests__/privacy-manager.test.d.ts +2 -0
- package/dist/core/__tests__/privacy-manager.test.d.ts.map +1 -0
- package/dist/core/__tests__/privacy-manager.test.js +97 -0
- package/dist/core/__tests__/privacy-manager.test.js.map +1 -0
- package/dist/core/__tests__/project-dna.test.d.ts +2 -0
- package/dist/core/__tests__/project-dna.test.d.ts.map +1 -0
- package/dist/core/__tests__/project-dna.test.js +135 -0
- package/dist/core/__tests__/project-dna.test.js.map +1 -0
- package/dist/core/__tests__/regex-extractor.test.d.ts +2 -0
- package/dist/core/__tests__/regex-extractor.test.d.ts.map +1 -0
- package/dist/core/__tests__/regex-extractor.test.js +49 -0
- package/dist/core/__tests__/regex-extractor.test.js.map +1 -0
- package/dist/core/__tests__/reputation.test.d.ts +2 -0
- package/dist/core/__tests__/reputation.test.d.ts.map +1 -0
- package/dist/core/__tests__/reputation.test.js +100 -0
- package/dist/core/__tests__/reputation.test.js.map +1 -0
- package/dist/core/__tests__/security-predictor.test.d.ts +2 -0
- package/dist/core/__tests__/security-predictor.test.d.ts.map +1 -0
- package/dist/core/__tests__/security-predictor.test.js +60 -0
- package/dist/core/__tests__/security-predictor.test.js.map +1 -0
- package/dist/core/__tests__/signal-capture.test.d.ts +2 -0
- package/dist/core/__tests__/signal-capture.test.d.ts.map +1 -0
- package/dist/core/__tests__/signal-capture.test.js +98 -0
- package/dist/core/__tests__/signal-capture.test.js.map +1 -0
- package/dist/core/__tests__/solution-index.test.d.ts +2 -0
- package/dist/core/__tests__/solution-index.test.d.ts.map +1 -0
- package/dist/core/__tests__/solution-index.test.js +78 -0
- package/dist/core/__tests__/solution-index.test.js.map +1 -0
- package/dist/core/__tests__/standup-generator.test.d.ts +2 -0
- package/dist/core/__tests__/standup-generator.test.d.ts.map +1 -0
- package/dist/core/__tests__/standup-generator.test.js +46 -0
- package/dist/core/__tests__/standup-generator.test.js.map +1 -0
- package/dist/core/__tests__/team-composer.test.d.ts +2 -0
- package/dist/core/__tests__/team-composer.test.d.ts.map +1 -0
- package/dist/core/__tests__/team-composer.test.js +113 -0
- package/dist/core/__tests__/team-composer.test.js.map +1 -0
- package/dist/core/__tests__/test-anticipator.test.d.ts +2 -0
- package/dist/core/__tests__/test-anticipator.test.d.ts.map +1 -0
- package/dist/core/__tests__/test-anticipator.test.js +41 -0
- package/dist/core/__tests__/test-anticipator.test.js.map +1 -0
- package/dist/core/__tests__/time-saved.test.d.ts +1 -0
- package/dist/core/__tests__/time-saved.test.d.ts.map +1 -0
- package/dist/core/__tests__/time-saved.test.js +93 -0
- package/dist/core/__tests__/time-saved.test.js.map +1 -0
- package/dist/core/__tests__/validation-run.test.d.ts +7 -0
- package/dist/core/__tests__/validation-run.test.d.ts.map +1 -0
- package/dist/core/__tests__/validation-run.test.js +510 -0
- package/dist/core/__tests__/validation-run.test.js.map +1 -0
- package/dist/core/__tests__/workflow-outcome-graph.test.d.ts +2 -0
- package/dist/core/__tests__/workflow-outcome-graph.test.d.ts.map +1 -0
- package/dist/core/__tests__/workflow-outcome-graph.test.js +89 -0
- package/dist/core/__tests__/workflow-outcome-graph.test.js.map +1 -0
- package/dist/core/ai-memory.d.ts +84 -0
- package/dist/core/ai-memory.d.ts.map +1 -0
- package/dist/core/ai-memory.js +238 -0
- package/dist/core/ai-memory.js.map +1 -0
- package/dist/core/architecture-engine.d.ts +104 -0
- package/dist/core/architecture-engine.d.ts.map +1 -0
- package/dist/core/architecture-engine.js +216 -0
- package/dist/core/architecture-engine.js.map +1 -0
- package/dist/core/ast-differ.d.ts +15 -0
- package/dist/core/ast-differ.d.ts.map +1 -0
- package/dist/core/ast-differ.js +528 -0
- package/dist/core/ast-differ.js.map +1 -0
- package/dist/core/ast-extractor.d.ts +1 -1
- package/dist/core/ast-extractor.d.ts.map +1 -1
- package/dist/core/ast-extractor.js +7 -5
- package/dist/core/ast-extractor.js.map +1 -1
- package/dist/core/backend-engine.d.ts +40 -0
- package/dist/core/backend-engine.d.ts.map +1 -0
- package/dist/core/backend-engine.js +131 -0
- package/dist/core/backend-engine.js.map +1 -0
- package/dist/core/blind-spot-engine.d.ts +29 -0
- package/dist/core/blind-spot-engine.d.ts.map +1 -0
- package/dist/core/blind-spot-engine.js +579 -0
- package/dist/core/blind-spot-engine.js.map +1 -0
- package/dist/core/build-failure-predictor.d.ts +4 -0
- package/dist/core/build-failure-predictor.d.ts.map +1 -1
- package/dist/core/build-failure-predictor.js +111 -58
- package/dist/core/build-failure-predictor.js.map +1 -1
- package/dist/core/cell-store.d.ts +72 -0
- package/dist/core/cell-store.d.ts.map +1 -0
- package/dist/core/cell-store.js +171 -0
- package/dist/core/cell-store.js.map +1 -0
- package/dist/core/community-advanced-engine.d.ts +30 -0
- package/dist/core/community-advanced-engine.d.ts.map +1 -0
- package/dist/core/community-advanced-engine.js +103 -0
- package/dist/core/community-advanced-engine.js.map +1 -0
- package/dist/core/community-engine.d.ts +62 -0
- package/dist/core/community-engine.d.ts.map +1 -0
- package/dist/core/community-engine.js +194 -0
- package/dist/core/community-engine.js.map +1 -0
- package/dist/core/community-full.d.ts +2 -3
- package/dist/core/community-full.d.ts.map +1 -1
- package/dist/core/community-full.js +2 -5
- package/dist/core/community-full.js.map +1 -1
- package/dist/core/community-intelligence.d.ts +169 -0
- package/dist/core/community-intelligence.d.ts.map +1 -0
- package/dist/core/community-intelligence.js +527 -0
- package/dist/core/community-intelligence.js.map +1 -0
- package/dist/core/community-live.d.ts +1 -0
- package/dist/core/community-live.d.ts.map +1 -1
- package/dist/core/community-live.js +9 -6
- package/dist/core/community-live.js.map +1 -1
- package/dist/core/community-prior.d.ts +1 -0
- package/dist/core/community-prior.d.ts.map +1 -1
- package/dist/core/community-prior.js +18 -10
- package/dist/core/community-prior.js.map +1 -1
- package/dist/core/confidence-engine.d.ts +2 -3
- package/dist/core/confidence-engine.d.ts.map +1 -1
- package/dist/core/confidence-engine.js +29 -32
- package/dist/core/confidence-engine.js.map +1 -1
- package/dist/core/conflict-detector.js +1 -1
- package/dist/core/conflict-detector.js.map +1 -1
- package/dist/core/convention-detector.d.ts +37 -0
- package/dist/core/convention-detector.d.ts.map +1 -0
- package/dist/core/convention-detector.js +189 -0
- package/dist/core/convention-detector.js.map +1 -0
- package/dist/core/cost-optimizer.d.ts +78 -0
- package/dist/core/cost-optimizer.d.ts.map +1 -0
- package/dist/core/cost-optimizer.js +257 -0
- package/dist/core/cost-optimizer.js.map +1 -0
- package/dist/core/cross-domain-projections.js +2 -2
- package/dist/core/cross-layer-intelligence.d.ts +375 -0
- package/dist/core/cross-layer-intelligence.d.ts.map +1 -0
- package/dist/core/cross-layer-intelligence.js +690 -0
- package/dist/core/cross-layer-intelligence.js.map +1 -0
- package/dist/core/developer-profile.d.ts +6 -0
- package/dist/core/developer-profile.d.ts.map +1 -0
- package/dist/core/developer-profile.js +78 -0
- package/dist/core/developer-profile.js.map +1 -0
- package/dist/core/error-predictor.d.ts +5 -2
- package/dist/core/error-predictor.d.ts.map +1 -1
- package/dist/core/error-predictor.js +124 -40
- package/dist/core/error-predictor.js.map +1 -1
- package/dist/core/explainability.d.ts +33 -0
- package/dist/core/explainability.d.ts.map +1 -0
- package/dist/core/explainability.js +131 -0
- package/dist/core/explainability.js.map +1 -0
- package/dist/core/extraction-cascade.d.ts +19 -5
- package/dist/core/extraction-cascade.d.ts.map +1 -1
- package/dist/core/extraction-cascade.js +86 -15
- package/dist/core/extraction-cascade.js.map +1 -1
- package/dist/core/failure-memory.d.ts +38 -0
- package/dist/core/failure-memory.d.ts.map +1 -0
- package/dist/core/failure-memory.js +113 -0
- package/dist/core/failure-memory.js.map +1 -0
- package/dist/core/frontend-engine.d.ts +40 -0
- package/dist/core/frontend-engine.d.ts.map +1 -0
- package/dist/core/frontend-engine.js +129 -0
- package/dist/core/frontend-engine.js.map +1 -0
- package/dist/core/go-extractor.d.ts +5 -0
- package/dist/core/go-extractor.d.ts.map +1 -0
- package/dist/core/go-extractor.js +68 -0
- package/dist/core/go-extractor.js.map +1 -0
- package/dist/core/identity-resolver.d.ts.map +1 -1
- package/dist/core/identity-resolver.js +16 -31
- package/dist/core/identity-resolver.js.map +1 -1
- package/dist/core/knowledge-graph-engine.d.ts +62 -0
- package/dist/core/knowledge-graph-engine.d.ts.map +1 -0
- package/dist/core/knowledge-graph-engine.js +176 -0
- package/dist/core/knowledge-graph-engine.js.map +1 -0
- package/dist/core/knowledge-graph.d.ts +229 -0
- package/dist/core/knowledge-graph.d.ts.map +1 -0
- package/dist/core/knowledge-graph.js +713 -0
- package/dist/core/knowledge-graph.js.map +1 -0
- package/dist/core/language-switch-assistant.d.ts.map +1 -1
- package/dist/core/language-switch-assistant.js +4 -1
- package/dist/core/language-switch-assistant.js.map +1 -1
- package/dist/core/learning-layer.d.ts +11 -0
- package/dist/core/learning-layer.d.ts.map +1 -0
- package/dist/core/learning-layer.js +25 -0
- package/dist/core/learning-layer.js.map +1 -0
- package/dist/core/marketplace.d.ts +43 -0
- package/dist/core/marketplace.d.ts.map +1 -0
- package/dist/core/marketplace.js +133 -0
- package/dist/core/marketplace.js.map +1 -0
- package/dist/core/memory-store.d.ts +59 -0
- package/dist/core/memory-store.d.ts.map +1 -0
- package/dist/core/memory-store.js +151 -0
- package/dist/core/memory-store.js.map +1 -0
- package/dist/core/naming-engine.d.ts +43 -0
- package/dist/core/naming-engine.d.ts.map +1 -0
- package/dist/core/naming-engine.js +120 -0
- package/dist/core/naming-engine.js.map +1 -0
- package/dist/core/org-intelligence.d.ts +151 -0
- package/dist/core/org-intelligence.d.ts.map +1 -0
- package/dist/core/org-intelligence.js +490 -0
- package/dist/core/org-intelligence.js.map +1 -0
- package/dist/core/organization-memory.d.ts +34 -0
- package/dist/core/organization-memory.d.ts.map +1 -0
- package/dist/core/organization-memory.js +148 -0
- package/dist/core/organization-memory.js.map +1 -0
- package/dist/core/outcome-engine.d.ts +21 -0
- package/dist/core/outcome-engine.d.ts.map +1 -0
- package/dist/core/outcome-engine.js +220 -0
- package/dist/core/outcome-engine.js.map +1 -0
- package/dist/core/outcome-recorder.d.ts +34 -0
- package/dist/core/outcome-recorder.d.ts.map +1 -0
- package/dist/core/outcome-recorder.js +109 -0
- package/dist/core/outcome-recorder.js.map +1 -0
- package/dist/core/outcome-store.d.ts +21 -0
- package/dist/core/outcome-store.d.ts.map +1 -0
- package/dist/core/outcome-store.js +120 -0
- package/dist/core/outcome-store.js.map +1 -0
- package/dist/core/outcome-types.d.ts +64 -0
- package/dist/core/outcome-types.d.ts.map +1 -0
- package/dist/core/outcome-types.js +20 -0
- package/dist/core/outcome-types.js.map +1 -0
- package/dist/core/pattern-classifier.d.ts +11 -0
- package/dist/core/pattern-classifier.d.ts.map +1 -0
- package/dist/core/pattern-classifier.js +82 -0
- package/dist/core/pattern-classifier.js.map +1 -0
- package/dist/core/pattern-lifecycle.d.ts +8 -0
- package/dist/core/pattern-lifecycle.d.ts.map +1 -0
- package/dist/core/pattern-lifecycle.js +25 -0
- package/dist/core/pattern-lifecycle.js.map +1 -0
- package/dist/core/pattern-quality.d.ts +6 -0
- package/dist/core/pattern-quality.d.ts.map +1 -0
- package/dist/core/pattern-quality.js +45 -0
- package/dist/core/pattern-quality.js.map +1 -0
- package/dist/core/pattern-ranking.d.ts +8 -0
- package/dist/core/pattern-ranking.d.ts.map +1 -0
- package/dist/core/pattern-ranking.js +40 -0
- package/dist/core/pattern-ranking.js.map +1 -0
- package/dist/core/pattern-relationships.d.ts +16 -0
- package/dist/core/pattern-relationships.d.ts.map +1 -0
- package/dist/core/pattern-relationships.js +66 -0
- package/dist/core/pattern-relationships.js.map +1 -0
- package/dist/core/pattern-search.d.ts +25 -0
- package/dist/core/pattern-search.d.ts.map +1 -0
- package/dist/core/pattern-search.js +82 -0
- package/dist/core/pattern-search.js.map +1 -0
- package/dist/core/pattern-store.d.ts +18 -3
- package/dist/core/pattern-store.d.ts.map +1 -1
- package/dist/core/pattern-store.js +155 -54
- package/dist/core/pattern-store.js.map +1 -1
- package/dist/core/{enterprise-features.d.ts → pattern-utils.d.ts} +2 -4
- package/dist/core/pattern-utils.d.ts.map +1 -0
- package/dist/core/{enterprise-features.js → pattern-utils.js} +4 -24
- package/dist/core/pattern-utils.js.map +1 -0
- package/dist/core/pattern-validator.d.ts +14 -0
- package/dist/core/pattern-validator.d.ts.map +1 -0
- package/dist/core/pattern-validator.js +47 -0
- package/dist/core/pattern-validator.js.map +1 -0
- package/dist/core/performance-predictor.d.ts +4 -0
- package/dist/core/performance-predictor.d.ts.map +1 -1
- package/dist/core/performance-predictor.js +143 -38
- package/dist/core/performance-predictor.js.map +1 -1
- package/dist/core/platt-calibration.d.ts.map +1 -1
- package/dist/core/platt-calibration.js +5 -3
- package/dist/core/platt-calibration.js.map +1 -1
- package/dist/core/playbook-generator.d.ts +21 -0
- package/dist/core/playbook-generator.d.ts.map +1 -0
- package/dist/core/playbook-generator.js +161 -0
- package/dist/core/playbook-generator.js.map +1 -0
- package/dist/core/privacy-manager.d.ts +43 -0
- package/dist/core/privacy-manager.d.ts.map +1 -0
- package/dist/core/privacy-manager.js +131 -0
- package/dist/core/privacy-manager.js.map +1 -0
- package/dist/core/productivity-engine.d.ts +57 -0
- package/dist/core/productivity-engine.d.ts.map +1 -0
- package/dist/core/productivity-engine.js +138 -0
- package/dist/core/productivity-engine.js.map +1 -0
- package/dist/core/project-dna-types.d.ts +150 -0
- package/dist/core/project-dna-types.d.ts.map +1 -0
- package/dist/core/project-dna-types.js +3 -0
- package/dist/core/project-dna-types.js.map +1 -0
- package/dist/core/project-dna.d.ts +122 -0
- package/dist/core/project-dna.d.ts.map +1 -0
- package/dist/core/project-dna.js +922 -0
- package/dist/core/project-dna.js.map +1 -0
- package/dist/core/python-extractor.d.ts +5 -0
- package/dist/core/python-extractor.d.ts.map +1 -0
- package/dist/core/python-extractor.js +68 -0
- package/dist/core/python-extractor.js.map +1 -0
- package/dist/core/realtime-guardian.d.ts.map +1 -1
- package/dist/core/realtime-guardian.js +1 -3
- package/dist/core/realtime-guardian.js.map +1 -1
- package/dist/core/recommendation-engine.d.ts +9 -0
- package/dist/core/recommendation-engine.d.ts.map +1 -0
- package/dist/core/recommendation-engine.js +152 -0
- package/dist/core/recommendation-engine.js.map +1 -0
- package/dist/core/recommendation-store.d.ts +21 -0
- package/dist/core/recommendation-store.d.ts.map +1 -0
- package/dist/core/recommendation-store.js +125 -0
- package/dist/core/recommendation-store.js.map +1 -0
- package/dist/core/recommendation-types.d.ts +54 -0
- package/dist/core/recommendation-types.d.ts.map +1 -0
- package/dist/core/recommendation-types.js +3 -0
- package/dist/core/recommendation-types.js.map +1 -0
- package/dist/core/regex-extractor.js +1 -1
- package/dist/core/regex-extractor.js.map +1 -1
- package/dist/core/reputation.d.ts +42 -0
- package/dist/core/reputation.d.ts.map +1 -0
- package/dist/core/reputation.js +173 -0
- package/dist/core/reputation.js.map +1 -0
- package/dist/core/scale-tester.d.ts +2 -2
- package/dist/core/scale-tester.d.ts.map +1 -1
- package/dist/core/scale-tester.js +12 -1
- package/dist/core/scale-tester.js.map +1 -1
- package/dist/core/search-engine.d.ts +37 -0
- package/dist/core/search-engine.d.ts.map +1 -0
- package/dist/core/search-engine.js +223 -0
- package/dist/core/search-engine.js.map +1 -0
- package/dist/core/security-predictor.d.ts +2 -1
- package/dist/core/security-predictor.d.ts.map +1 -1
- package/dist/core/security-predictor.js +80 -30
- package/dist/core/security-predictor.js.map +1 -1
- package/dist/core/session-recovery.js +8 -8
- package/dist/core/session-recovery.js.map +1 -1
- package/dist/core/similarity-engine.d.ts +8 -0
- package/dist/core/similarity-engine.d.ts.map +1 -0
- package/dist/core/similarity-engine.js +74 -0
- package/dist/core/similarity-engine.js.map +1 -0
- package/dist/core/structure-engine.d.ts +34 -0
- package/dist/core/structure-engine.d.ts.map +1 -0
- package/dist/core/structure-engine.js +114 -0
- package/dist/core/structure-engine.js.map +1 -0
- package/dist/core/syntax-engine.d.ts +101 -0
- package/dist/core/syntax-engine.d.ts.map +1 -0
- package/dist/core/syntax-engine.js +342 -0
- package/dist/core/syntax-engine.js.map +1 -0
- package/dist/core/team-advanced-engine.d.ts +19 -0
- package/dist/core/team-advanced-engine.d.ts.map +1 -0
- package/dist/core/team-advanced-engine.js +91 -0
- package/dist/core/team-advanced-engine.js.map +1 -0
- package/dist/core/team-engine.d.ts +59 -0
- package/dist/core/team-engine.d.ts.map +1 -0
- package/dist/core/team-engine.js +141 -0
- package/dist/core/team-engine.js.map +1 -0
- package/dist/core/time-saved.d.ts +51 -0
- package/dist/core/time-saved.d.ts.map +1 -0
- package/dist/core/time-saved.js +97 -0
- package/dist/core/time-saved.js.map +1 -0
- package/dist/core/workflow-outcome-graph.d.ts +46 -0
- package/dist/core/workflow-outcome-graph.d.ts.map +1 -0
- package/dist/core/workflow-outcome-graph.js +168 -0
- package/dist/core/workflow-outcome-graph.js.map +1 -0
- package/dist/core/workflow-tracker.d.ts +36 -0
- package/dist/core/workflow-tracker.d.ts.map +1 -0
- package/dist/core/workflow-tracker.js +99 -0
- package/dist/core/workflow-tracker.js.map +1 -0
- package/dist/core/ws-client.d.ts +24 -0
- package/dist/core/ws-client.d.ts.map +1 -0
- package/dist/core/ws-client.js +203 -0
- package/dist/core/ws-client.js.map +1 -0
- package/dist/daemon/lifecycle.d.ts.map +1 -1
- package/dist/daemon/lifecycle.js +9 -10
- package/dist/daemon/lifecycle.js.map +1 -1
- package/dist/daemon/server.d.ts +4 -2
- package/dist/daemon/server.d.ts.map +1 -1
- package/dist/daemon/server.js +886 -73
- package/dist/daemon/server.js.map +1 -1
- package/dist/daemon/watchdog.js +2 -1
- package/dist/daemon/watchdog.js.map +1 -1
- package/dist/index.d.ts +21 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +37 -4
- package/dist/index.js.map +1 -1
- package/dist/store.d.ts +4 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/store.js +47 -0
- package/dist/store.js.map +1 -0
- package/dist/types.d.ts +60 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +13 -2
- package/dist/types.js.map +1 -1
- package/dist/validation/quick-run.d.ts +7 -0
- package/dist/validation/quick-run.d.ts.map +1 -0
- package/dist/validation/quick-run.js +404 -0
- package/dist/validation/quick-run.js.map +1 -0
- package/package.json +87 -53
- package/CHANGELOG.md +0 -32
- package/CONTRIBUTING.md +0 -60
- package/dist/core/cell-pro.d.ts +0 -28
- package/dist/core/cell-pro.d.ts.map +0 -1
- package/dist/core/cell-pro.js +0 -70
- package/dist/core/cell-pro.js.map +0 -1
- package/dist/core/enterprise-features.d.ts.map +0 -1
- package/dist/core/enterprise-features.js.map +0 -1
- package/dist/core/enterprise.d.ts +0 -27
- package/dist/core/enterprise.d.ts.map +0 -1
- package/dist/core/enterprise.js +0 -41
- package/dist/core/enterprise.js.map +0 -1
- package/extensions/jetbrains/plugin.json +0 -9
- package/extensions/shell/copilot-sync.js +0 -59
- package/extensions/shell/install.sh +0 -38
- package/extensions/shell/watcher.js +0 -113
- package/extensions/vscode/.vscodeignore +0 -5
- package/extensions/vscode/dist/daemon-client.js +0 -94
- package/extensions/vscode/dist/diff-tracker.js +0 -94
- package/extensions/vscode/dist/extension.js +0 -100
- package/extensions/vscode/dist/status-bar.js +0 -70
- package/extensions/vscode/package-lock.json +0 -40
- package/extensions/vscode/package.json +0 -27
- package/packages/mcp-server/dist/server.d.ts +0 -2
- package/packages/mcp-server/dist/server.js +0 -213
- package/packages/mcp-server/package-lock.json +0 -970
- package/packages/mcp-server/package.json +0 -19
package/CONTRIBUTING.md
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
# Contributing to FIVO Cell
|
|
2
|
-
|
|
3
|
-
Thanks for your interest! Cell is 70% open source (Apache 2.0).
|
|
4
|
-
|
|
5
|
-
## Development Setup
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
git clone https://github.com/thevinsoni/fivo-cell
|
|
9
|
-
cd fivo-cell
|
|
10
|
-
npm install
|
|
11
|
-
npm run build
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
## Project Structure
|
|
15
|
-
|
|
16
|
-
```
|
|
17
|
-
src/
|
|
18
|
-
├── daemon/ # Express HTTP API (localhost:9876)
|
|
19
|
-
├── core/ # 40 intelligence modules
|
|
20
|
-
├── cli.ts # CLI entry point
|
|
21
|
-
└── types.ts # TypeScript types
|
|
22
|
-
extensions/
|
|
23
|
-
├── vscode/ # VS Code extension
|
|
24
|
-
└── shell/ # Shell hook + Copilot sync
|
|
25
|
-
packages/
|
|
26
|
-
└── mcp-server/ # MCP server for Claude Code
|
|
27
|
-
cloud/ # Cloud API (separate repo)
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Running Tests
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
npm test
|
|
34
|
-
npm run test:watch
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
## Building
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
npm run build # Compile TypeScript
|
|
41
|
-
npm run dev # Watch mode
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
## Pull Requests
|
|
45
|
-
|
|
46
|
-
1. Fork the repo
|
|
47
|
-
2. Create a feature branch
|
|
48
|
-
3. Add tests for new functionality
|
|
49
|
-
4. Ensure all tests pass (`npm test`)
|
|
50
|
-
5. Submit PR with clear description
|
|
51
|
-
|
|
52
|
-
## Code Style
|
|
53
|
-
|
|
54
|
-
- TypeScript strict mode
|
|
55
|
-
- Prettier formatting (`npm run format`)
|
|
56
|
-
- ESLint (`npm run lint`)
|
|
57
|
-
|
|
58
|
-
## License
|
|
59
|
-
|
|
60
|
-
By contributing, you agree that your contributions will be licensed under Apache 2.0.
|
package/dist/core/cell-pro.d.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
interface ProLicense {
|
|
2
|
-
licenseKey: string;
|
|
3
|
-
deviceId: string;
|
|
4
|
-
plan: 'pro' | 'enterprise';
|
|
5
|
-
features: string[];
|
|
6
|
-
expiresAt: string;
|
|
7
|
-
seatsUsed: number;
|
|
8
|
-
seatsMax: number;
|
|
9
|
-
}
|
|
10
|
-
interface ProFeatures {
|
|
11
|
-
team: boolean;
|
|
12
|
-
crossProject: boolean;
|
|
13
|
-
advancedPredictions: boolean;
|
|
14
|
-
privatePrior: boolean;
|
|
15
|
-
sso: boolean;
|
|
16
|
-
audit: boolean;
|
|
17
|
-
sla: boolean;
|
|
18
|
-
}
|
|
19
|
-
export declare function validateLicense(licenseKey: string): ProLicense | null;
|
|
20
|
-
export declare function getFeatures(plan: string): ProFeatures;
|
|
21
|
-
export declare function activateLicense(licenseKey: string, deviceId: string): ProLicense | null;
|
|
22
|
-
export declare function getProStatus(deviceId: string): {
|
|
23
|
-
active: boolean;
|
|
24
|
-
plan: string;
|
|
25
|
-
features: ProFeatures;
|
|
26
|
-
} | null;
|
|
27
|
-
export {};
|
|
28
|
-
//# sourceMappingURL=cell-pro.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cell-pro.d.ts","sourceRoot":"","sources":["../../src/core/cell-pro.ts"],"names":[],"mappings":"AAEA,UAAU,UAAU;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,KAAK,GAAG,YAAY,CAAC;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,WAAW;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IACtB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,GAAG,EAAE,OAAO,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;CACd;AAyBD,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAKrE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAErD;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CASvF;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,WAAW,CAAA;CAAE,GAAG,IAAI,CAO9G"}
|
package/dist/core/cell-pro.js
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Cell Pro Backend — License management, feature gating, upgrade flow
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.validateLicense = validateLicense;
|
|
5
|
-
exports.getFeatures = getFeatures;
|
|
6
|
-
exports.activateLicense = activateLicense;
|
|
7
|
-
exports.getProStatus = getProStatus;
|
|
8
|
-
const PRO_FEATURE_MAP = {
|
|
9
|
-
pro: {
|
|
10
|
-
team: true,
|
|
11
|
-
crossProject: true,
|
|
12
|
-
advancedPredictions: true,
|
|
13
|
-
privatePrior: false,
|
|
14
|
-
sso: false,
|
|
15
|
-
audit: false,
|
|
16
|
-
sla: false,
|
|
17
|
-
},
|
|
18
|
-
enterprise: {
|
|
19
|
-
team: true,
|
|
20
|
-
crossProject: true,
|
|
21
|
-
advancedPredictions: true,
|
|
22
|
-
privatePrior: true,
|
|
23
|
-
sso: true,
|
|
24
|
-
audit: true,
|
|
25
|
-
sla: true,
|
|
26
|
-
},
|
|
27
|
-
};
|
|
28
|
-
const licenses = new Map();
|
|
29
|
-
function validateLicense(licenseKey) {
|
|
30
|
-
const license = licenses.get(licenseKey);
|
|
31
|
-
if (!license)
|
|
32
|
-
return null;
|
|
33
|
-
if (new Date(license.expiresAt) < new Date())
|
|
34
|
-
return null;
|
|
35
|
-
return license;
|
|
36
|
-
}
|
|
37
|
-
function getFeatures(plan) {
|
|
38
|
-
return PRO_FEATURE_MAP[plan] || PRO_FEATURE_MAP.pro;
|
|
39
|
-
}
|
|
40
|
-
function activateLicense(licenseKey, deviceId) {
|
|
41
|
-
const existing = licenses.get(licenseKey);
|
|
42
|
-
if (!existing)
|
|
43
|
-
return null;
|
|
44
|
-
if (new Date(existing.expiresAt) < new Date())
|
|
45
|
-
return null;
|
|
46
|
-
if (existing.seatsUsed >= existing.seatsMax)
|
|
47
|
-
return null;
|
|
48
|
-
const license = { ...existing, deviceId, seatsUsed: existing.seatsUsed + 1 };
|
|
49
|
-
licenses.set(licenseKey, license);
|
|
50
|
-
return license;
|
|
51
|
-
}
|
|
52
|
-
function getProStatus(deviceId) {
|
|
53
|
-
for (const license of licenses.values()) {
|
|
54
|
-
if (license.deviceId === deviceId && new Date(license.expiresAt) >= new Date()) {
|
|
55
|
-
return { active: true, plan: license.plan, features: getFeatures(license.plan) };
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return null;
|
|
59
|
-
}
|
|
60
|
-
// Seed a demo license for testing
|
|
61
|
-
licenses.set('fv_pro_demo_2026', {
|
|
62
|
-
licenseKey: 'fv_pro_demo_2026',
|
|
63
|
-
deviceId: '',
|
|
64
|
-
plan: 'pro',
|
|
65
|
-
features: Object.keys(PRO_FEATURE_MAP.pro),
|
|
66
|
-
expiresAt: '2027-01-01T00:00:00Z',
|
|
67
|
-
seatsUsed: 0,
|
|
68
|
-
seatsMax: 5,
|
|
69
|
-
});
|
|
70
|
-
//# sourceMappingURL=cell-pro.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cell-pro.js","sourceRoot":"","sources":["../../src/core/cell-pro.ts"],"names":[],"mappings":";AAAA,sEAAsE;;AA6CtE,0CAKC;AAED,kCAEC;AAED,0CASC;AAED,oCAOC;AApDD,MAAM,eAAe,GAAgC;IACnD,GAAG,EAAE;QACH,IAAI,EAAE,IAAI;QACV,YAAY,EAAE,IAAI;QAClB,mBAAmB,EAAE,IAAI;QACzB,YAAY,EAAE,KAAK;QACnB,GAAG,EAAE,KAAK;QACV,KAAK,EAAE,KAAK;QACZ,GAAG,EAAE,KAAK;KACX;IACD,UAAU,EAAE;QACV,IAAI,EAAE,IAAI;QACV,YAAY,EAAE,IAAI;QAClB,mBAAmB,EAAE,IAAI;QACzB,YAAY,EAAE,IAAI;QAClB,GAAG,EAAE,IAAI;QACT,KAAK,EAAE,IAAI;QACX,GAAG,EAAE,IAAI;KACV;CACF,CAAC;AAEF,MAAM,QAAQ,GAA4B,IAAI,GAAG,EAAE,CAAC;AAEpD,SAAgB,eAAe,CAAC,UAAkB;IAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1D,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC;AACtD,CAAC;AAED,SAAgB,eAAe,CAAC,UAAkB,EAAE,QAAgB;IAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IAC3D,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEzD,MAAM,OAAO,GAAe,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;IACzF,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAgB,YAAY,CAAC,QAAgB;IAC3C,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;QACxC,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;YAC/E,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACnF,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kCAAkC;AAClC,QAAQ,CAAC,GAAG,CAAC,kBAAkB,EAAE;IAC/B,UAAU,EAAE,kBAAkB;IAC9B,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;IAC1C,SAAS,EAAE,sBAAsB;IACjC,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;CACZ,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enterprise-features.d.ts","sourceRoot":"","sources":["../../src/core/enterprise-features.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAAqC;IAEvD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI1C,qBAAqB,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;KAAE,EAAE,GAAG,iBAAiB,EAAE;IAQ7F,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC;IAgB3E,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAYrC,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,EAAE;IAI5C,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,EAAE;IAYnD,aAAa,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE;IAW7D,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAYnE,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;CAS9D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enterprise-features.js","sourceRoot":"","sources":["../../src/core/enterprise-features.ts"],"names":[],"mappings":";;;AAAA,mCAAoC;AAiBpC,MAAa,kBAAkB;IACrB,UAAU,GAA2B,IAAI,GAAG,EAAE,CAAC;IAEvD,oBAAoB,CAAC,IAAY;QAC/B,OAAO,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,qBAAqB,CAAC,QAAiD;QACrE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC;YACvC,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM;YAC/B,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACrC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,QAAQ,CAAI,KAAU,EAAE,IAAY,EAAE,QAAgB;QACpD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;QACxC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC;QAEnD,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ;YACR,UAAU;SACX,CAAC;IACJ,CAAC;IAED,UAAU,CAAC,QAAmB;QAC5B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAExB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC/B,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,eAAe,CAAC,QAAgB;QAC9B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC7C,CAAC;IAED,iBAAiB,CAAC,aAAqB;QACrC,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;YAChD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,IAAI,aAAa,EAAE,CAAC;oBACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,aAAa;QACX,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;YAChD,YAAY,IAAI,QAAQ,CAAC,MAAM,CAAC;QAClC,CAAC;QACD,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;YAChC,YAAY;SACb,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,MAAc,EAAE,MAAc;QACxC,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,MAAM;YACN,MAAM;YACN,QAAQ,EAAE,WAAW,MAAM,OAAO,MAAM,gBAAgB;YACxD,QAAQ,EAAE,UAAU;YACpB,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,SAAS;SACtB,CAAC;IACJ,CAAC;IAED,mBAAmB,CAAC,QAAgB;QAClC,OAAO;YACL,QAAQ,EAAE,aAAa;YACvB,QAAQ;YACR,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE,QAAQ;YACpB,WAAW,EAAE,eAAe;SAC7B,CAAC;IACJ,CAAC;CACF;AA3FD,gDA2FC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
interface EnterpriseConfig {
|
|
2
|
-
ssoEnabled: boolean;
|
|
3
|
-
ssoProvider: 'saml' | 'oidc' | null;
|
|
4
|
-
ssoDomain: string;
|
|
5
|
-
auditLogRetentionDays: number;
|
|
6
|
-
privatePriorEnabled: boolean;
|
|
7
|
-
slaUptimeTarget: number;
|
|
8
|
-
allowedIpRanges: string[];
|
|
9
|
-
}
|
|
10
|
-
interface AuditEvent {
|
|
11
|
-
timestamp: string;
|
|
12
|
-
deviceId: string;
|
|
13
|
-
action: string;
|
|
14
|
-
details: string;
|
|
15
|
-
ip: string;
|
|
16
|
-
}
|
|
17
|
-
export declare function getEnterpriseConfig(orgId: string): EnterpriseConfig;
|
|
18
|
-
export declare function logAudit(deviceId: string, action: string, details: string, ip: string): void;
|
|
19
|
-
export declare function getAuditLogs(deviceId: string, limit?: number): AuditEvent[];
|
|
20
|
-
export declare function checkSlaUptime(orgId: string): {
|
|
21
|
-
target: number;
|
|
22
|
-
current: number;
|
|
23
|
-
met: boolean;
|
|
24
|
-
};
|
|
25
|
-
export declare function isIpAllowed(orgId: string, ip: string): boolean;
|
|
26
|
-
export {};
|
|
27
|
-
//# sourceMappingURL=enterprise.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enterprise.d.ts","sourceRoot":"","sources":["../../src/core/enterprise.ts"],"names":[],"mappings":"AAEA,UAAU,gBAAgB;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,UAAU,UAAU;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;CACZ;AAKD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,CAUnE;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAG5F;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,UAAU,EAAE,CAE/E;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,OAAO,CAAA;CAAE,CAI/F;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAI9D"}
|
package/dist/core/enterprise.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Enterprise Features — SSO, audit logs, private prior, SLA tracking
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.getEnterpriseConfig = getEnterpriseConfig;
|
|
5
|
-
exports.logAudit = logAudit;
|
|
6
|
-
exports.getAuditLogs = getAuditLogs;
|
|
7
|
-
exports.checkSlaUptime = checkSlaUptime;
|
|
8
|
-
exports.isIpAllowed = isIpAllowed;
|
|
9
|
-
const enterpriseConfigs = new Map();
|
|
10
|
-
const auditLogs = [];
|
|
11
|
-
function getEnterpriseConfig(orgId) {
|
|
12
|
-
return enterpriseConfigs.get(orgId) || {
|
|
13
|
-
ssoEnabled: false,
|
|
14
|
-
ssoProvider: null,
|
|
15
|
-
ssoDomain: '',
|
|
16
|
-
auditLogRetentionDays: 90,
|
|
17
|
-
privatePriorEnabled: false,
|
|
18
|
-
slaUptimeTarget: 99.5,
|
|
19
|
-
allowedIpRanges: [],
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
function logAudit(deviceId, action, details, ip) {
|
|
23
|
-
auditLogs.push({ timestamp: new Date().toISOString(), deviceId, action, details, ip });
|
|
24
|
-
if (auditLogs.length > 100000)
|
|
25
|
-
auditLogs.splice(0, auditLogs.length - 100000);
|
|
26
|
-
}
|
|
27
|
-
function getAuditLogs(deviceId, limit = 50) {
|
|
28
|
-
return auditLogs.filter((e) => e.deviceId === deviceId).slice(-limit);
|
|
29
|
-
}
|
|
30
|
-
function checkSlaUptime(orgId) {
|
|
31
|
-
const config = getEnterpriseConfig(orgId);
|
|
32
|
-
const current = 100; // Simplified — real implementation tracks actual uptime
|
|
33
|
-
return { target: config.slaUptimeTarget, current, met: current >= config.slaUptimeTarget };
|
|
34
|
-
}
|
|
35
|
-
function isIpAllowed(orgId, ip) {
|
|
36
|
-
const config = getEnterpriseConfig(orgId);
|
|
37
|
-
if (config.allowedIpRanges.length === 0)
|
|
38
|
-
return true;
|
|
39
|
-
return config.allowedIpRanges.some((range) => ip.startsWith(range));
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=enterprise.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enterprise.js","sourceRoot":"","sources":["../../src/core/enterprise.ts"],"names":[],"mappings":";AAAA,qEAAqE;;AAuBrE,kDAUC;AAED,4BAGC;AAED,oCAEC;AAED,wCAIC;AAED,kCAIC;AAlCD,MAAM,iBAAiB,GAAkC,IAAI,GAAG,EAAE,CAAC;AACnE,MAAM,SAAS,GAAiB,EAAE,CAAC;AAEnC,SAAgB,mBAAmB,CAAC,KAAa;IAC/C,OAAO,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI;QACrC,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,IAAI;QACjB,SAAS,EAAE,EAAE;QACb,qBAAqB,EAAE,EAAE;QACzB,mBAAmB,EAAE,KAAK;QAC1B,eAAe,EAAE,IAAI;QACrB,eAAe,EAAE,EAAE;KACpB,CAAC;AACJ,CAAC;AAED,SAAgB,QAAQ,CAAC,QAAgB,EAAE,MAAc,EAAE,OAAe,EAAE,EAAU;IACpF,SAAS,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IACvF,IAAI,SAAS,CAAC,MAAM,GAAG,MAAM;QAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AAChF,CAAC;AAED,SAAgB,YAAY,CAAC,QAAgB,EAAE,QAAgB,EAAE;IAC/D,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;AACxE,CAAC;AAED,SAAgB,cAAc,CAAC,KAAa;IAC1C,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,wDAAwD;IAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;AAC7F,CAAC;AAED,SAAgB,WAAW,CAAC,KAAa,EAAE,EAAU;IACnD,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrD,OAAO,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AACtE,CAAC"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// Cell Copilot Integration — auto-updates .github/copilot-instructions.md
|
|
3
|
-
|
|
4
|
-
const http = require('http');
|
|
5
|
-
const fs = require('fs');
|
|
6
|
-
const path = require('path');
|
|
7
|
-
|
|
8
|
-
const DAEMON = 'http://localhost:9876';
|
|
9
|
-
const OUTPUT_FILE = path.join(process.cwd(), '.github', 'copilot-instructions.md');
|
|
10
|
-
|
|
11
|
-
function fetchTaste() {
|
|
12
|
-
return new Promise((resolve, reject) => {
|
|
13
|
-
http.get(`${DAEMON}/taste/profile`, (res) => {
|
|
14
|
-
let data = '';
|
|
15
|
-
res.on('data', (chunk) => (data += chunk));
|
|
16
|
-
res.on('end', () => {
|
|
17
|
-
try { resolve(JSON.parse(data)); } catch (e) { reject(e); }
|
|
18
|
-
});
|
|
19
|
-
}).on('error', reject);
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
async function generate() {
|
|
24
|
-
try {
|
|
25
|
-
const profile = await fetchTaste();
|
|
26
|
-
const patterns = profile.patterns || [];
|
|
27
|
-
const strong = patterns.filter((p) => p.confidence?.mean > 0.8);
|
|
28
|
-
|
|
29
|
-
if (strong.length === 0) {
|
|
30
|
-
console.log('No strong patterns yet. Skipping Copilot instructions update.');
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
const dir = path.dirname(OUTPUT_FILE);
|
|
35
|
-
if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
|
|
36
|
-
|
|
37
|
-
const version = Date.now();
|
|
38
|
-
let md = `# Cell Taste | v${version} | ${new Date().toISOString()} | ${strong.length} patterns\n\n`;
|
|
39
|
-
md += '> Auto-generated by FIVO Cell. Updated when taste meaningfully shifts.\n\n';
|
|
40
|
-
md += '## Your Coding Preferences\n\n';
|
|
41
|
-
|
|
42
|
-
for (const p of strong) {
|
|
43
|
-
md += `- **${p.description}** (confidence: ${p.confidence?.mean})\n`;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
md += '\n## Instructions for Copilot\n\n';
|
|
47
|
-
md += 'Please follow these preferences when generating code:\n\n';
|
|
48
|
-
for (const p of strong) {
|
|
49
|
-
md += `- ${p.description}\n`;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
fs.writeFileSync(OUTPUT_FILE, md, 'utf-8');
|
|
53
|
-
console.log(`✅ Copilot instructions updated: ${OUTPUT_FILE} (${strong.length} patterns)`);
|
|
54
|
-
} catch (err) {
|
|
55
|
-
console.error('Copilot integration error:', err.message);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
generate();
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
# Cell Shell Hook Installer
|
|
3
|
-
# Adds watcher to shell rc file
|
|
4
|
-
|
|
5
|
-
HOOK_DIR="$HOME/.fivo/cell"
|
|
6
|
-
WATCHER="$HOOK_DIR/watcher.js"
|
|
7
|
-
RC_FILE=""
|
|
8
|
-
|
|
9
|
-
if [ -f "$HOME/.bashrc" ]; then RC_FILE="$HOME/.bashrc"; fi
|
|
10
|
-
if [ -f "$HOME/.zshrc" ]; then RC_FILE="$HOME/.zshrc"; fi
|
|
11
|
-
if [ -f "$HOME/.config/fish/config.fish" ]; then RC_FILE="$HOME/.config/fish/config.fish"; fi
|
|
12
|
-
|
|
13
|
-
if [ -z "$RC_FILE" ]; then
|
|
14
|
-
echo "No shell rc file found (.bashrc, .zshrc, config.fish)"
|
|
15
|
-
exit 1
|
|
16
|
-
fi
|
|
17
|
-
|
|
18
|
-
mkdir -p "$HOOK_DIR"
|
|
19
|
-
cp "$(dirname "$0")/watcher.js" "$WATCHER"
|
|
20
|
-
|
|
21
|
-
if grep -q "fivo-cell-daemon" "$RC_FILE" 2>/dev/null; then
|
|
22
|
-
echo "Cell daemon already in $RC_FILE"
|
|
23
|
-
else
|
|
24
|
-
echo "" >> "$RC_FILE"
|
|
25
|
-
echo "# FIVO Cell — auto-start daemon" >> "$RC_FILE"
|
|
26
|
-
echo "if command -v cell &> /dev/null; then cell daemon start --silent 2>/dev/null & fi" >> "$RC_FILE"
|
|
27
|
-
echo "✅ Cell daemon auto-start added to $RC_FILE"
|
|
28
|
-
fi
|
|
29
|
-
|
|
30
|
-
if grep -q "fivo-cell-watcher" "$RC_FILE" 2>/dev/null; then
|
|
31
|
-
echo "Cell watcher already installed in $RC_FILE"
|
|
32
|
-
else
|
|
33
|
-
echo "" >> "$RC_FILE"
|
|
34
|
-
echo "# FIVO Cell — taste learning watcher" >> "$RC_FILE"
|
|
35
|
-
echo "node $WATCHER &" >> "$RC_FILE"
|
|
36
|
-
echo "✅ Cell watcher installed in $RC_FILE"
|
|
37
|
-
echo " Restart your shell or run: source $RC_FILE"
|
|
38
|
-
fi
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// Cell Shell Hook — watches file changes and sends signals to daemon
|
|
3
|
-
|
|
4
|
-
const http = require('http');
|
|
5
|
-
const fs = require('fs');
|
|
6
|
-
const path = require('path');
|
|
7
|
-
|
|
8
|
-
const DAEMON = 'http://localhost:9876';
|
|
9
|
-
const WATCH_DIR = process.argv[2] || process.cwd();
|
|
10
|
-
const DEBOUNCE_MS = 3000;
|
|
11
|
-
|
|
12
|
-
// Auto-start daemon if not running
|
|
13
|
-
function ensureDaemon() {
|
|
14
|
-
http.get(DAEMON + '/health', (res) => {
|
|
15
|
-
if (res.statusCode !== 200) startDaemon();
|
|
16
|
-
}).on('error', startDaemon);
|
|
17
|
-
}
|
|
18
|
-
function startDaemon() {
|
|
19
|
-
const { spawn } = require('child_process');
|
|
20
|
-
const proc = spawn('cell', ['daemon', 'start', '--silent'], { detached: true, stdio: 'ignore' });
|
|
21
|
-
proc.unref();
|
|
22
|
-
}
|
|
23
|
-
ensureDaemon();
|
|
24
|
-
setInterval(ensureDaemon, 30000);
|
|
25
|
-
|
|
26
|
-
const fileSnapshots = new Map();
|
|
27
|
-
let debounceTimer = null;
|
|
28
|
-
let pendingChanges = [];
|
|
29
|
-
|
|
30
|
-
function snapshotFile(filePath) {
|
|
31
|
-
try {
|
|
32
|
-
const stat = fs.statSync(filePath);
|
|
33
|
-
fileSnapshots.set(filePath, { mtime: stat.mtimeMs, size: stat.size });
|
|
34
|
-
} catch {}
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
function watchDir(dir) {
|
|
38
|
-
try {
|
|
39
|
-
fs.watch(dir, { recursive: true }, (eventType, filename) => {
|
|
40
|
-
if (!filename) return;
|
|
41
|
-
const filePath = path.join(dir, filename);
|
|
42
|
-
if (filePath.includes('node_modules') || filePath.includes('.git')) return;
|
|
43
|
-
if (!filePath.match(/\.(ts|tsx|js|jsx|py|rs|go|rb|java|kt|swift)$/)) return;
|
|
44
|
-
|
|
45
|
-
const prev = fileSnapshots.get(filePath);
|
|
46
|
-
try {
|
|
47
|
-
const stat = fs.statSync(filePath);
|
|
48
|
-
if (prev && stat.mtimeMs > prev.mtime + 500) {
|
|
49
|
-
pendingChanges.push({ file: filePath, size: stat.size - prev.size });
|
|
50
|
-
scheduleSend();
|
|
51
|
-
}
|
|
52
|
-
fileSnapshots.set(filePath, { mtime: stat.mtimeMs, size: stat.size });
|
|
53
|
-
} catch {}
|
|
54
|
-
});
|
|
55
|
-
} catch (err) {
|
|
56
|
-
console.error('Cell hook: watch error —', err.message);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
function scheduleSend() {
|
|
61
|
-
if (debounceTimer) clearTimeout(debounceTimer);
|
|
62
|
-
debounceTimer = setTimeout(sendSignals, DEBOUNCE_MS);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
function sendSignals() {
|
|
66
|
-
if (pendingChanges.length === 0) return;
|
|
67
|
-
const changes = [...pendingChanges];
|
|
68
|
-
pendingChanges = [];
|
|
69
|
-
|
|
70
|
-
for (const change of changes) {
|
|
71
|
-
const ext = path.extname(change.file).slice(1);
|
|
72
|
-
const body = JSON.stringify({
|
|
73
|
-
type: 'edit_diff',
|
|
74
|
-
originalCode: `[file modified: ${change.size} bytes]`,
|
|
75
|
-
editedCode: `[${change.file}]`,
|
|
76
|
-
context: {
|
|
77
|
-
language: extToLang(ext),
|
|
78
|
-
framework: 'unknown',
|
|
79
|
-
fileType: ext,
|
|
80
|
-
strictness: 'standard',
|
|
81
|
-
projectId: path.basename(WATCH_DIR),
|
|
82
|
-
},
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
const req = http.request(
|
|
86
|
-
{ method: 'POST', hostname: 'localhost', port: 9876, path: '/signal', headers: { 'Content-Type': 'application/json', 'Content-Length': Buffer.byteLength(body) }, timeout: 3000 },
|
|
87
|
-
() => {},
|
|
88
|
-
);
|
|
89
|
-
req.on('error', () => {});
|
|
90
|
-
req.write(body);
|
|
91
|
-
req.end();
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
function extToLang(ext) {
|
|
96
|
-
const map = { ts: 'typescript', tsx: 'typescript', js: 'javascript', jsx: 'javascript', py: 'python', rs: 'rust', go: 'go', rb: 'ruby', java: 'java', kt: 'kotlin', swift: 'swift' };
|
|
97
|
-
return map[ext] || ext;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
// Initial snapshot
|
|
101
|
-
function walkDir(dir) {
|
|
102
|
-
try {
|
|
103
|
-
for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
|
|
104
|
-
const full = path.join(dir, entry.name);
|
|
105
|
-
if (entry.name.startsWith('.') || entry.name === 'node_modules') continue;
|
|
106
|
-
if (entry.isDirectory()) { walkDir(full); } else { snapshotFile(full); }
|
|
107
|
-
}
|
|
108
|
-
} catch {}
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
console.log(`Cell Shell Hook active — watching ${WATCH_DIR}`);
|
|
112
|
-
walkDir(WATCH_DIR);
|
|
113
|
-
watchDir(WATCH_DIR);
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.healthCheck = healthCheck;
|
|
37
|
-
exports.sendSignal = sendSignal;
|
|
38
|
-
exports.getTasteProfile = getTasteProfile;
|
|
39
|
-
exports.getTasteContext = getTasteContext;
|
|
40
|
-
const http = __importStar(require("http"));
|
|
41
|
-
const DAEMON_URL = 'http://localhost:9876';
|
|
42
|
-
function request(method, path, body) {
|
|
43
|
-
return new Promise((resolve, reject) => {
|
|
44
|
-
const url = new URL(path, DAEMON_URL);
|
|
45
|
-
const options = {
|
|
46
|
-
method,
|
|
47
|
-
hostname: url.hostname,
|
|
48
|
-
port: url.port,
|
|
49
|
-
path: url.pathname + url.search,
|
|
50
|
-
headers: { 'Content-Type': 'application/json' },
|
|
51
|
-
timeout: 5000,
|
|
52
|
-
};
|
|
53
|
-
const req = http.request(options, (res) => {
|
|
54
|
-
let data = '';
|
|
55
|
-
res.on('data', (chunk) => (data += chunk));
|
|
56
|
-
res.on('end', () => {
|
|
57
|
-
try {
|
|
58
|
-
resolve(JSON.parse(data));
|
|
59
|
-
}
|
|
60
|
-
catch {
|
|
61
|
-
reject(new Error(`Invalid JSON: ${data}`));
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
req.on('error', reject);
|
|
66
|
-
req.on('timeout', () => { req.destroy(); reject(new Error('Daemon timeout')); });
|
|
67
|
-
if (body)
|
|
68
|
-
req.write(JSON.stringify(body));
|
|
69
|
-
req.end();
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
async function healthCheck() {
|
|
73
|
-
try {
|
|
74
|
-
const res = await request('GET', '/health');
|
|
75
|
-
return res.status === 'ok';
|
|
76
|
-
}
|
|
77
|
-
catch {
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
async function sendSignal(signal) {
|
|
82
|
-
return request('POST', '/signal', signal);
|
|
83
|
-
}
|
|
84
|
-
async function getTasteProfile() {
|
|
85
|
-
return request('GET', '/taste/profile');
|
|
86
|
-
}
|
|
87
|
-
async function getTasteContext(language, framework) {
|
|
88
|
-
const params = new URLSearchParams();
|
|
89
|
-
if (language)
|
|
90
|
-
params.set('language', language);
|
|
91
|
-
if (framework)
|
|
92
|
-
params.set('framework', framework);
|
|
93
|
-
return request('GET', `/taste/context?${params}`);
|
|
94
|
-
}
|