@quantiya/codevibe-codex-plugin 2.0.6 → 2.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -23
- package/dist/server.js +21 -21
- package/hooks/common.sh +506 -19
- package/{bin/codevibe-codex → libexec/companion-launcher} +37 -76
- package/node_modules/@quantiya/codevibe-core/README.md +7 -5
- package/node_modules/@quantiya/codevibe-core/dist/agy-cli-contract.d.ts +14 -0
- package/node_modules/@quantiya/codevibe-core/dist/appsync/appsync-client.d.ts +229 -61
- package/node_modules/@quantiya/codevibe-core/dist/appsync/event-throttle.d.ts +33 -0
- package/node_modules/@quantiya/codevibe-core/dist/appsync/index.d.ts +3 -2
- package/node_modules/@quantiya/codevibe-core/dist/appsync/queries.d.ts +6 -2
- package/node_modules/@quantiya/codevibe-core/dist/auth/auth-telemetry.d.ts +26 -0
- package/node_modules/@quantiya/codevibe-core/dist/auth/keychain-cli.d.ts +6 -0
- package/node_modules/@quantiya/codevibe-core/dist/auth/vendor-key-cli.d.ts +49 -0
- package/node_modules/@quantiya/codevibe-core/dist/companion-mode/index.d.ts +50 -22
- package/node_modules/@quantiya/codevibe-core/dist/companion-mode/persist-preference.d.ts +1 -5
- package/node_modules/@quantiya/codevibe-core/dist/companion-mode/resolve-agent.d.ts +5 -4
- package/node_modules/@quantiya/codevibe-core/dist/config/config.d.ts +0 -5
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/__tests__/oauth-refresh.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/__tests__/upstream-result-helpers.d.ts +21 -0
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/broker.d.ts +196 -12
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/chatgpt-config.d.ts +40 -0
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/index.d.ts +4 -1
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/oauth-account-lock.d.ts +150 -0
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/oauth-refresh.d.ts +72 -0
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/types.d.ts +165 -17
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/upstream-client.d.ts +3 -2
- package/node_modules/@quantiya/codevibe-core/dist/credential-broker/vendor-key-store.d.ts +32 -1
- package/node_modules/@quantiya/codevibe-core/dist/crypto/__tests__/encrypt-for-emit.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/crypto/__tests__/open-prompt-id.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/crypto/encrypt-for-emit.d.ts +39 -0
- package/node_modules/@quantiya/codevibe-core/dist/crypto/index.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/dist/crypto/open-prompt-id.d.ts +36 -0
- package/node_modules/@quantiya/codevibe-core/dist/daemon/__tests__/process-guards.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/daemon/index.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/daemon/process-guards.d.ts +38 -0
- package/node_modules/@quantiya/codevibe-core/dist/e1/__tests__/prompt-raise.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/e1/index.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/e1/prompt-raise.d.ts +65 -0
- package/node_modules/@quantiya/codevibe-core/dist/index.d.ts +20 -2
- package/node_modules/@quantiya/codevibe-core/dist/index.js +4543 -288
- package/node_modules/@quantiya/codevibe-core/dist/keychain/__tests__/keychain-manager.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/keychain/__tests__/keychain-migrate.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/keychain/keychain-backend.d.ts +105 -0
- package/node_modules/@quantiya/codevibe-core/dist/keychain/keychain-manager.d.ts +40 -5
- package/node_modules/@quantiya/codevibe-core/dist/keychain/keychain-migrate.d.ts +46 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/anchored-fs.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/bounded-directory.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/bounded-output.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/durable-directory.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/hosted-class-a-sink.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/process-identity.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/process-tree.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/publication-authority-capability.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/reviewer-rationale-flag.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/snapshot-merge.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/workspace-authority-fixture.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/workspace-authority.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/__tests__/workspace-materializer.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/agentic-disposable-repo.d.ts +23 -6
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/agentic-resolve.d.ts +16 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/anchored-fs.d.ts +243 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/bounded-directory.d.ts +64 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/bounded-helper.d.ts +22 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/bounded-output.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/class-a-emit.d.ts +13 -1
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/class-a-sign.d.ts +15 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/durable-directory.d.ts +25 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/durable-store.d.ts +217 -25
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/group-decision-outcome.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/hosted-class-a-sink.d.ts +27 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/implementor-argv.d.ts +89 -7
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/index.d.ts +3 -2
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/local-executor-impl.d.ts +177 -76
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/merge-conflict-resolve.d.ts +19 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/process-identity.d.ts +16 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/process-tree.d.ts +123 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/revert-reconcile.d.ts +16 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/revert-runner.d.ts +14 -1
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/reviewer-rationale-flag.d.ts +10 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/snapshot-merge.d.ts +124 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/task-group-types.d.ts +7 -6
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/team-execution-flag.d.ts +2 -2
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/track-registry.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/types.d.ts +34 -2
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/build.d.ts +5 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/deploy-preflight.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/diff-sanity.d.ts +12 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/hostile-grep.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/lint.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/shell-runner.d.ts +5 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/source-traceability.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/tests.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-gates/typecheck.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/verification-runner.d.ts +6 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/workspace-authority.d.ts +45 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/workspace-materializer.d.ts +27 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/workspace-shadow.d.ts +378 -85
- package/node_modules/@quantiya/codevibe-core/dist/local-model/manager.d.ts +1 -1
- package/node_modules/@quantiya/codevibe-core/dist/local-model/ollama.d.ts +40 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/__tests__/detect-agents.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/detect-agents.d.ts +10 -30
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/index.d.ts +1 -2
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/a1a-planner-offers.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/a6-cli-surface.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/advisory-attachment-journal.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/advisory-attachments-dir-race.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/advisory-multi-mention-panel.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/advisory-panel-attachments.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/advisory-quota-stdout-result.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/agent-turn-context-batch.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/bounded-shutdown.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/brainstorm-quorum-wiring.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/brainstorm-quorum.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/cli-team-session-key.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/command-intent.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/context-compaction.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/context-items-hosted-sync.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/context-items-wiring.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/context-items.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/cp8-full-team-events.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/cp8-team-decomposed-zk.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/explicit-tty-exit.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/mention-suggest.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/planner-offer-e1.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/route-browse-summarize-recovery.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/__tests__/workspace-shutdown.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/advisory-attachment-journal.d.ts +165 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/attachments.d.ts +53 -8
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/bounded-shutdown.d.ts +22 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/brainstorm-quorum.d.ts +118 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cli.d.ts +97 -70
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cli.js +51847 -33465
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/command-intent.d.ts +56 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/components/InputBar.d.ts +6 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/components/OrchestrationApp.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/context-compaction.d.ts +264 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/context-items-hosted-sync.d.ts +19 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/context-items.d.ts +408 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/context-store.d.ts +162 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/declared-test-runner.d.ts +21 -2
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/emit-shell-event.d.ts +41 -13
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/explicit-tty-exit.d.ts +17 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/gate-decision-submit.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/gate-prompts.d.ts +78 -3
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/index.d.ts +309 -37
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/mention-suggest.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/mode-selection.d.ts +4 -22
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/planner-offer-e1.d.ts +97 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/quorum-loop.d.ts +603 -77
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/reducer.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/task-progress.d.ts +17 -4
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/team-decompose.d.ts +47 -29
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/types.d.ts +103 -6
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/workspace-shutdown.d.ts +27 -0
- package/node_modules/@quantiya/codevibe-core/dist/planner/index.d.ts +1 -1
- package/node_modules/@quantiya/codevibe-core/dist/planner/local-advisory.d.ts +12 -0
- package/node_modules/@quantiya/codevibe-core/dist/planner/local-gemma.d.ts +27 -0
- package/node_modules/@quantiya/codevibe-core/dist/planner/types.d.ts +7 -0
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/index.d.ts +0 -2
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/output-parser.d.ts +19 -0
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/provider.d.ts +9 -6
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/providers/antigravity.d.ts +2 -3
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/registry.d.ts +9 -4
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/token-usage.d.ts +10 -0
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/types.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/verdict-classifier.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/session/__tests__/device-registration-lease.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/session/__tests__/pending-session-create.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/session/__tests__/session-rekey-fingerprint.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/session/__tests__/session-resume-key-reconciliation.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/session/__tests__/session-resume-pending-first.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/session/device-key-watcher.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/session/index.d.ts +4 -2
- package/node_modules/@quantiya/codevibe-core/dist/session/pending-session-create.d.ts +61 -0
- package/node_modules/@quantiya/codevibe-core/dist/session/register-device-key.d.ts +11 -1
- package/node_modules/@quantiya/codevibe-core/dist/session/session-rekey.d.ts +8 -8
- package/node_modules/@quantiya/codevibe-core/dist/session/session-resume.d.ts +21 -1
- package/node_modules/@quantiya/codevibe-core/dist/substrate/command-runner.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/substrate/docker.d.ts +14 -32
- package/node_modules/@quantiya/codevibe-core/dist/substrate/index.d.ts +0 -1
- package/node_modules/@quantiya/codevibe-core/dist/substrate/sandbox-exec.d.ts +17 -16
- package/node_modules/@quantiya/codevibe-core/dist/substrate/types.d.ts +39 -5
- package/node_modules/@quantiya/codevibe-core/dist/substrate-launch/__tests__/reviewer-credential-preflight.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/substrate-launch/apikey-bootstrap.d.ts +24 -1
- package/node_modules/@quantiya/codevibe-core/dist/substrate-launch/engage-substrate.d.ts +20 -0
- package/node_modules/@quantiya/codevibe-core/dist/substrate-launch/index.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/dist/substrate-launch/reviewer-credential-preflight.d.ts +50 -0
- package/node_modules/@quantiya/codevibe-core/dist/substrate-launch/sanitized-env.d.ts +5 -5
- package/node_modules/@quantiya/codevibe-core/dist/test-publication-authority-setup.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/__tests__/consolidator.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/__tests__/digest.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/__tests__/flock-rollout-lock.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/__tests__/ledger.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/__tests__/outbox.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/__tests__/replay-cursor.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/__tests__/session-map.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/__tests__/socket-rollout-lock.test.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/atomic-file.d.ts +27 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/consolidator.d.ts +253 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/digest.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/flock-rollout-lock.d.ts +68 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/index.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/ledger.d.ts +274 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/outbox.d.ts +60 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/replay-cursor.d.ts +190 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/session-map.d.ts +133 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/socket-rollout-lock.d.ts +57 -0
- package/node_modules/@quantiya/codevibe-core/dist/tool-activity/types.d.ts +368 -0
- package/node_modules/@quantiya/codevibe-core/dist/types/encryption.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/dist/types/events.d.ts +29 -4
- package/node_modules/@quantiya/codevibe-core/dist/types/session.d.ts +32 -2
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/README.md +207 -163
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/index.d.ts +15 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/index.js +31 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/max.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/max.js +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/md5.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/md5.js +13 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/native.d.ts +6 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/native.js +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/nil.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/nil.js +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/package.json +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/parse.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/parse.js +11 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/regex.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/regex.js +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/rng.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/rng.js +13 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/sha1.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/sha1.js +13 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/stringify.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/stringify.js +39 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/types.d.ts +21 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/types.js +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/uuid-bin.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/uuid-bin.js +72 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v1.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v1.js +87 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v1ToV6.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v1ToV6.js +13 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v3.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v3.js +14 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v35.d.ts +7 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v35.js +44 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v4.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v4.js +29 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v5.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v5.js +14 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v6.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v6.js +22 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v6ToV1.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v6ToV1.js +13 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v7.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/v7.js +69 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/validate.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/validate.js +7 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/version.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs/version.js +10 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/index.d.ts +15 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/index.js +31 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/max.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/max.js +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/md5.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/md5.js +137 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/native.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/native.js +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/nil.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/nil.js +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/package.json +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/parse.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/parse.js +11 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/regex.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/regex.js +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/rng.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/rng.js +14 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/sha1.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/sha1.js +72 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/stringify.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/stringify.js +39 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/types.d.ts +21 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/types.js +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/uuid-bin.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/uuid-bin.js +72 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v1.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v1.js +87 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v1ToV6.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v1ToV6.js +13 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v3.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v3.js +14 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v35.d.ts +7 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v35.js +44 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v4.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v4.js +29 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v5.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v5.js +14 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v6.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v6.js +22 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v6ToV1.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v6ToV1.js +13 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v7.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/v7.js +69 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/validate.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/validate.js +7 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/version.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/cjs-browser/version.js +10 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/bin/uuid +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/index.d.ts +15 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/{esm-node → esm}/index.js +9 -4
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/max.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/max.js +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/md5.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/md5.js +11 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/native.d.ts +6 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/native.js +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/nil.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/nil.js +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/parse.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/parse.js +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/regex.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/regex.js +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/rng.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/rng.js +10 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/sha1.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/sha1.js +11 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/stringify.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/stringify.js +35 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/types.d.ts +21 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/types.js +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/uuid-bin.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/uuid-bin.js +70 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v1.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v1.js +83 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v1ToV6.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v1ToV6.js +10 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v3.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v3.js +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v35.d.ts +7 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v35.js +39 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v4.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v4.js +27 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v5.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v5.js +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v6.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v6.js +20 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v6ToV1.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v6ToV1.js +10 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v7.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/v7.js +65 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/validate.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/validate.js +5 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/version.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm/version.js +8 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/index.d.ts +15 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/index.js +9 -4
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/max.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/max.js +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/md5.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/md5.js +113 -193
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/native.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/native.js +1 -3
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/nil.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/nil.js +1 -1
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/parse.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/parse.js +6 -32
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/regex.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/regex.js +1 -1
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/rng.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/rng.js +6 -13
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/sha1.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/sha1.js +62 -88
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/stringify.d.ts +3 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/stringify.js +27 -25
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/types.d.ts +21 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/types.js +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/uuid-bin.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/uuid-bin.js +70 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v1.d.ts +11 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v1.js +78 -90
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v1ToV6.js +10 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v3.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v3.js +8 -3
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v35.d.ts +7 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v35.js +30 -57
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v4.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v4.js +21 -23
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v5.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v5.js +8 -3
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v6.d.ts +4 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v6.js +20 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v6ToV1.js +10 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v7.d.ts +9 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/v7.js +65 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/validate.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/validate.js +2 -4
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/version.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-browser/version.js +5 -8
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/package.json +73 -76
- package/node_modules/@quantiya/codevibe-core/package.json +7 -6
- package/node_modules/fs-ext/.eslintrc +53 -0
- package/node_modules/fs-ext/.github/workflows/node.js.yml +31 -0
- package/node_modules/fs-ext/.travis.yml +25 -0
- package/node_modules/fs-ext/LICENSE.txt +18 -0
- package/node_modules/fs-ext/README.md +130 -0
- package/node_modules/fs-ext/appveyor.yml +20 -0
- package/node_modules/fs-ext/binding.gyp +11 -0
- package/node_modules/fs-ext/build/Makefile +347 -0
- package/node_modules/fs-ext/build/Release/.deps/Release/fs_ext.node.d +1 -0
- package/node_modules/fs-ext/build/Release/.deps/Release/obj.target/fs_ext/fs-ext.o.d +165 -0
- package/node_modules/fs-ext/build/Release/fs_ext.node +0 -0
- package/node_modules/fs-ext/build/Release/obj.target/fs_ext/fs-ext.o +0 -0
- package/node_modules/fs-ext/build/binding.Makefile +6 -0
- package/node_modules/fs-ext/build/config.gypi +504 -0
- package/node_modules/fs-ext/build/fs_ext.target.mk +183 -0
- package/node_modules/fs-ext/build/gyp-mac-tool +768 -0
- package/node_modules/fs-ext/example.js +57 -0
- package/node_modules/fs-ext/fs-ext.cc +622 -0
- package/node_modules/fs-ext/fs-ext.js +131 -0
- package/node_modules/fs-ext/package.json +42 -0
- package/node_modules/fs-ext/run_tests.js +17 -0
- package/node_modules/fs-ext/tests/test-fs-fcntl.js +350 -0
- package/node_modules/fs-ext/tests/test-fs-flock.js +452 -0
- package/node_modules/fs-ext/tests/test-fs-flock_stress.js +239 -0
- package/node_modules/fs-ext/tests/test-fs-seek.js +607 -0
- package/node_modules/fs-ext/tests/test-fs-seek_stress.js +313 -0
- package/node_modules/fs-ext/tests/test-fs-statvfs.js +15 -0
- package/node_modules/fs-ext/tests/worker-test.js +56 -0
- package/node_modules/fs-ext/wscript +15 -0
- package/node_modules/nan/.github/workflows/ci.yml +46 -0
- package/node_modules/nan/.pre-commit-config.yaml +8 -0
- package/node_modules/nan/CHANGELOG.md +605 -0
- package/node_modules/nan/CMakeLists.txt +138 -0
- package/node_modules/nan/LICENSE.md +9 -0
- package/node_modules/nan/README.md +457 -0
- package/node_modules/nan/doc/asyncworker.md +146 -0
- package/node_modules/nan/doc/buffers.md +54 -0
- package/node_modules/nan/doc/callback.md +76 -0
- package/node_modules/nan/doc/converters.md +41 -0
- package/node_modules/nan/doc/errors.md +226 -0
- package/node_modules/nan/doc/json.md +62 -0
- package/node_modules/nan/doc/maybe_types.md +583 -0
- package/node_modules/nan/doc/methods.md +689 -0
- package/node_modules/nan/doc/new.md +147 -0
- package/node_modules/nan/doc/node_misc.md +123 -0
- package/node_modules/nan/doc/object_wrappers.md +263 -0
- package/node_modules/nan/doc/persistent.md +296 -0
- package/node_modules/nan/doc/scopes.md +73 -0
- package/node_modules/nan/doc/script.md +58 -0
- package/node_modules/nan/doc/string_bytes.md +81 -0
- package/node_modules/nan/doc/v8_internals.md +211 -0
- package/node_modules/nan/doc/v8_misc.md +85 -0
- package/node_modules/nan/include_dirs.js +1 -0
- package/node_modules/nan/nan.h +3202 -0
- package/node_modules/nan/nan_callbacks.h +141 -0
- package/node_modules/nan/nan_callbacks_12_inl.h +730 -0
- package/node_modules/nan/nan_callbacks_pre_12_inl.h +528 -0
- package/node_modules/nan/nan_converters.h +72 -0
- package/node_modules/nan/nan_converters_43_inl.h +68 -0
- package/node_modules/nan/nan_converters_pre_43_inl.h +42 -0
- package/node_modules/nan/nan_define_own_property_helper.h +29 -0
- package/node_modules/nan/nan_implementation_12_inl.h +446 -0
- package/node_modules/nan/nan_implementation_pre_12_inl.h +263 -0
- package/node_modules/nan/nan_json.h +166 -0
- package/node_modules/nan/nan_maybe_43_inl.h +360 -0
- package/node_modules/nan/nan_maybe_pre_43_inl.h +268 -0
- package/node_modules/nan/nan_new.h +340 -0
- package/node_modules/nan/nan_object_wrap.h +156 -0
- package/node_modules/nan/nan_persistent_12_inl.h +132 -0
- package/node_modules/nan/nan_persistent_pre_12_inl.h +242 -0
- package/node_modules/nan/nan_private.h +73 -0
- package/node_modules/nan/nan_scriptorigin.h +97 -0
- package/node_modules/nan/nan_string_bytes.h +305 -0
- package/node_modules/nan/nan_typedarray_contents.h +96 -0
- package/node_modules/nan/nan_weak.h +453 -0
- package/node_modules/nan/package.json +38 -0
- package/node_modules/nan/tools/1to2.js +412 -0
- package/node_modules/nan/tools/README.md +14 -0
- package/node_modules/nan/tools/package.json +19 -0
- package/package.json +5 -5
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/orchestration-cli.d.ts +0 -12
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/setup-bootstrap.d.ts +0 -146
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/setup-failure-recourse.d.ts +0 -23
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/setup-save.d.ts +0 -47
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/setup-seat-picker.d.ts +0 -72
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/setup-telemetry.d.ts +0 -54
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/setup-test-agents.d.ts +0 -108
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/setup-types.d.ts +0 -146
- package/node_modules/@quantiya/codevibe-core/dist/orchestration/setup-wizard.d.ts +0 -57
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cohort-flag.d.ts +0 -16
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/providers/gemini.d.ts +0 -109
- package/node_modules/@quantiya/codevibe-core/dist/substrate/git-proxy.d.ts +0 -35
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/CHANGELOG.md +0 -274
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/CONTRIBUTING.md +0 -18
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/bin/uuid +0 -2
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/index.js +0 -79
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/md5.js +0 -223
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/native.js +0 -11
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/nil.js +0 -8
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/parse.js +0 -45
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/regex.js +0 -8
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/rng.js +0 -25
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/sha1.js +0 -104
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/stringify.js +0 -44
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/v1.js +0 -107
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/v3.js +0 -16
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/v35.js +0 -80
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/v4.js +0 -43
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/v5.js +0 -16
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/validate.js +0 -17
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/commonjs-browser/version.js +0 -21
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/md5.js +0 -13
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/native.js +0 -4
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/nil.js +0 -1
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/parse.js +0 -35
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/regex.js +0 -1
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/rng.js +0 -12
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/sha1.js +0 -13
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/stringify.js +0 -33
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/v1.js +0 -95
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/v3.js +0 -4
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/v35.js +0 -66
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/v4.js +0 -29
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/v5.js +0 -4
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/validate.js +0 -7
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/esm-node/version.js +0 -11
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/index.js +0 -79
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/md5-browser.js +0 -223
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/md5.js +0 -23
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/native-browser.js +0 -11
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/native.js +0 -15
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/nil.js +0 -8
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/parse.js +0 -45
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/regex.js +0 -8
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/rng-browser.js +0 -25
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/rng.js +0 -24
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/sha1-browser.js +0 -104
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/sha1.js +0 -23
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/stringify.js +0 -44
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/uuid-bin.js +0 -85
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/v1.js +0 -107
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/v3.js +0 -16
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/v35.js +0 -80
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/v4.js +0 -43
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/v5.js +0 -16
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/validate.js +0 -17
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/dist/version.js +0 -21
- package/node_modules/@quantiya/codevibe-core/node_modules/uuid/wrapper.mjs +0 -10
- /package/node_modules/@quantiya/codevibe-core/dist/{companion-mode/__tests__/detect-parallel.test.d.ts → appsync/__tests__/appsync-client-context-items.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration-shell/__tests__/cli-stub-session-adapter.test.d.ts → appsync/__tests__/heartbeat-active.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration/__tests__/setup-bootstrap.test.d.ts → appsync/__tests__/orphan-sweep-null-heartbeat.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration/__tests__/setup-failure-recourse.test.d.ts → appsync/__tests__/refresh-open-prompt-ttl-chunk.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration/__tests__/setup-save.test.d.ts → auth/__tests__/keychain-cli.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration/__tests__/setup-seat-picker.test.d.ts → auth/__tests__/vendor-key-cli.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration/__tests__/setup-telemetry.test.d.ts → companion-mode/__tests__/mode-selected-emit.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration/__tests__/setup-test-agents.test.d.ts → companion-mode/__tests__/private-launcher-detection.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration/__tests__/setup-types.test.d.ts → companion-mode/__tests__/private-launcher-path.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{orchestration/__tests__/setup-wizard.test.d.ts → credential-broker/__tests__/broker-c4.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{reviewer/providers/__tests__/gemini-live-smoke.test.d.ts → credential-broker/__tests__/broker-streaming.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{reviewer/providers/__tests__/gemini.test.d.ts → credential-broker/__tests__/chatgpt-config.test.d.ts} +0 -0
- /package/node_modules/@quantiya/codevibe-core/dist/{substrate/__tests__/git-proxy.test.d.ts → credential-broker/__tests__/oauth-account-lock.test.d.ts} +0 -0
|
@@ -0,0 +1,408 @@
|
|
|
1
|
+
import { loadContextStore, resolveContextRef, probeWorkspaceGitHead } from './context-store';
|
|
2
|
+
import type { StructuralSummaryGenerator, RepoSummary } from '../structural-summary/types';
|
|
3
|
+
import type { Tier } from './types';
|
|
4
|
+
/** AppSync's pinned blind-hold ciphertext ceiling (ASCII base64 characters). */
|
|
5
|
+
export declare const CONTEXT_ITEM_WIRE_CIPHERTEXT_MAX_CHARS = 350000;
|
|
6
|
+
/**
|
|
7
|
+
* The PINNED UUIDv5 namespace mapping a `session_id` to its session-root
|
|
8
|
+
* pseudo-task ID on the task-partitioned `AuditTable` (design §4.1 Finding 1).
|
|
9
|
+
*
|
|
10
|
+
* ⚠️ WIRE CONTRACT — DO NOT CHANGE. This literal is pinned in the design
|
|
11
|
+
* (SHARED-CONTEXT-ARCHITECTURE-DESIGN.md §4.1) and MUST stay byte-identical
|
|
12
|
+
* to the Rust side (`codevibe-audit::CONTEXT_SESSION_PSEUDO_TASK_NAMESPACE`,
|
|
13
|
+
* lib.rs) — the Rust audit writer and the TS deletion worker (tracker [D2])
|
|
14
|
+
* derive pseudo-task partition keys from it, and a divergence would make D2
|
|
15
|
+
* delete the WRONG partition and silently retain session-scoped audit rows.
|
|
16
|
+
* The Rust↔TS parity test (context-items.test.ts + codevibe-audit lib.rs
|
|
17
|
+
* tests) pins shared `session_id → pseudo_task_id` vectors on both sides.
|
|
18
|
+
*
|
|
19
|
+
* Importable by D2's deletion worker as the single TS source of truth.
|
|
20
|
+
*/
|
|
21
|
+
export declare const CONTEXT_SESSION_PSEUDO_TASK_NAMESPACE = "cefd405a-b1ac-4e63-8e9e-d328f3d95182";
|
|
22
|
+
/**
|
|
23
|
+
* §4.1 Finding 1 — the deterministic UUIDv5 session-root pseudo-task ID for
|
|
24
|
+
* session-scoped ContextItems (`Uuid::new_v5(&NAMESPACE, session_id.as_bytes())`
|
|
25
|
+
* on the Rust side). NEVER a `session_<id>` string — the Rust audit crate
|
|
26
|
+
* types `task_id` as a plain `Uuid` (`codevibe-audit/src/lib.rs`) and a
|
|
27
|
+
* non-UUID string would fail serde deserialization on any engine read.
|
|
28
|
+
*/
|
|
29
|
+
export declare function deriveSessionPseudoTaskId(sessionId: string): string;
|
|
30
|
+
/**
|
|
31
|
+
* The AuditTable partition a ContextItem's blind-held row lands in (the
|
|
32
|
+
* "strict superset of ROWS + KINDS" co-location, design §4.1/§4.2): a task-
|
|
33
|
+
* scoped item partitions under its real `task_id`; a session-scoped item
|
|
34
|
+
* partitions under the deterministic session pseudo-task ID.
|
|
35
|
+
*/
|
|
36
|
+
export declare function auditPartitionTaskIdFor(item: Pick<ContextItem, 'session_id' | 'task_id'>): string;
|
|
37
|
+
/** The full §4 kind set (the one-time corpus-ready vocabulary, §4.1). */
|
|
38
|
+
export type ContextItemKind = 'turn' | 'decision' | 'task_spec' | 'verdict' | 'artifact_ref' | 'open_question' | 'rationale' | 'repo_state';
|
|
39
|
+
export type ContextItemAuthorRole = 'human' | 'agent' | 'conductor' | 'engine';
|
|
40
|
+
/** §4 `author` — emitter-assigned attribution (drives the group-conversation UX). */
|
|
41
|
+
export interface ContextItemAuthor {
|
|
42
|
+
role: ContextItemAuthorRole;
|
|
43
|
+
/** e.g. 'claude' | 'codex' | 'gemini' | 'agy' — set when role='agent'. */
|
|
44
|
+
agent_id?: string;
|
|
45
|
+
}
|
|
46
|
+
/** §4 — an ORDERED floor (public < user < secret). Emitter-assigned. */
|
|
47
|
+
export type ContextItemSensitivity = 'public' | 'user' | 'secret';
|
|
48
|
+
/**
|
|
49
|
+
* §4 `visible_to` — the distinct projection-consumer roles. 'planner' = the
|
|
50
|
+
* local 12B conductor; 'brainstorm' = the frontier brainstorm panel (§8.2).
|
|
51
|
+
* The hosted 'engine' is NOT a role (it owns the authoritative log).
|
|
52
|
+
*/
|
|
53
|
+
export type ContextItemProjectionRole = 'implementor' | 'reviewer' | 'resolver' | 'planner' | 'brainstorm';
|
|
54
|
+
/** §4.3 — validity/staleness dimensions. */
|
|
55
|
+
export interface ContextItemValidity {
|
|
56
|
+
supersededBy?: string;
|
|
57
|
+
invalidatedByMerge?: string;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* §4 — one typed, addressable fact in the canonical store. `session_id`/`seq`
|
|
61
|
+
* are the (hosted) storage keys; everything else is content that rides INSIDE
|
|
62
|
+
* the encrypted envelope on the wire (§4.2 plaintext boundary).
|
|
63
|
+
*/
|
|
64
|
+
export interface ContextItem {
|
|
65
|
+
session_id: string;
|
|
66
|
+
/** Monotonic per-session ULID — append order + the prev_hash chain (§4.1a). */
|
|
67
|
+
seq: string;
|
|
68
|
+
/** Content-addressed hash — dedup + the target of refs[] (NOT the sort key). */
|
|
69
|
+
id: string;
|
|
70
|
+
/** Set on task- AND track-scoped items (§4 hierarchy). */
|
|
71
|
+
task_id?: string;
|
|
72
|
+
/** Set ONLY on track-scoped items (⟹ task_id is also set). */
|
|
73
|
+
track_id?: string;
|
|
74
|
+
kind: ContextItemKind;
|
|
75
|
+
author: ContextItemAuthor;
|
|
76
|
+
sensitivity: ContextItemSensitivity;
|
|
77
|
+
visible_to: ContextItemProjectionRole[];
|
|
78
|
+
validity: ContextItemValidity;
|
|
79
|
+
refs: string[];
|
|
80
|
+
/** Hex SHA-256 of the serialized previous item. `null` for the first item. */
|
|
81
|
+
prev_hash: string | null;
|
|
82
|
+
/** Typed payload per kind. */
|
|
83
|
+
body: unknown;
|
|
84
|
+
/** ISO timestamp the item was authored (corpus-ready, §4.1). */
|
|
85
|
+
authored_at: string;
|
|
86
|
+
}
|
|
87
|
+
/** What a deterministic emitter passes to `appendContextItem`. */
|
|
88
|
+
export interface ContextItemDraft {
|
|
89
|
+
kind: ContextItemKind;
|
|
90
|
+
author: ContextItemAuthor;
|
|
91
|
+
sensitivity: ContextItemSensitivity;
|
|
92
|
+
visible_to: ContextItemProjectionRole[];
|
|
93
|
+
body: unknown;
|
|
94
|
+
task_id?: string;
|
|
95
|
+
track_id?: string;
|
|
96
|
+
refs?: string[];
|
|
97
|
+
validity?: ContextItemValidity;
|
|
98
|
+
}
|
|
99
|
+
export interface ContextItemOccurrence {
|
|
100
|
+
seq: string;
|
|
101
|
+
itemId: string;
|
|
102
|
+
serializedItemSha256: string;
|
|
103
|
+
}
|
|
104
|
+
export type ContextDurabilityReceipt = {
|
|
105
|
+
durable: true;
|
|
106
|
+
coveredOccurrences: ContextItemOccurrence[];
|
|
107
|
+
durableTailHash: string;
|
|
108
|
+
} | {
|
|
109
|
+
durable: false;
|
|
110
|
+
reason: 'wedged' | 'stage_failed' | 'commit_failed' | 'rollback_failed' | 'readback_failed' | 'item_missing' | 'content_mismatch';
|
|
111
|
+
};
|
|
112
|
+
export type CanonicalAgentTurnDraft = ContextItemDraft & {
|
|
113
|
+
kind: 'turn';
|
|
114
|
+
author: ContextItemAuthor & {
|
|
115
|
+
role: 'agent';
|
|
116
|
+
agent_id: string;
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
export declare function contextItemOccurrence(item: ContextItem): ContextItemOccurrence;
|
|
120
|
+
/**
|
|
121
|
+
* §4.1a / tracker [A1e] — the writer-populated, session-synced TTL for the
|
|
122
|
+
* hosted `ContextItemsTable` rows (the SAME 7-day epoch the events table
|
|
123
|
+
* already exposes; the bounded non-semantic `expiresAt` exception, §4.2).
|
|
124
|
+
*/
|
|
125
|
+
export declare const CONTEXT_ITEM_TTL_SECONDS: number;
|
|
126
|
+
/**
|
|
127
|
+
* Create one ContextItems session directory durably. `mkdir -p` alone can
|
|
128
|
+
* leave a visible-but-not-crash-durable directory chain; fsync each parent
|
|
129
|
+
* entry from `~/.codevibe` through the per-session directory. Repeating this
|
|
130
|
+
* after a failed parent sync repairs the visible chain before hosted upload.
|
|
131
|
+
*/
|
|
132
|
+
export declare function ensureContextItemsSessionDirectoryDurable(sessionId: string, beforeParentFsync?: (parent: string, child: string) => Promise<void>): Promise<void>;
|
|
133
|
+
/** Exported for the A1f retention sweep (`gcContextItemLogs`). */
|
|
134
|
+
export declare function contextItemsRootDir(): string;
|
|
135
|
+
/** Exported for tests + diagnostics. */
|
|
136
|
+
export declare function contextItemsLogPath(sessionId: string): string;
|
|
137
|
+
/**
|
|
138
|
+
* §4.1 Finding 2 — transient = high-frequency intermediate `turn`/`rationale`
|
|
139
|
+
* items authored by an agent/conductor/engine. Human turns (user prompts),
|
|
140
|
+
* decisions, task_specs, verdicts, artifact_refs, open_questions, and
|
|
141
|
+
* repo_state are DURABLE (synchronous fsync-per-write).
|
|
142
|
+
*/
|
|
143
|
+
export declare function isTransientContextItem(kind: ContextItemKind, author: ContextItemAuthor): boolean;
|
|
144
|
+
/**
|
|
145
|
+
* Post-fsync notification used by the hosted upload coordinator. The hook is
|
|
146
|
+
* deliberately synchronous + best-effort: the local authenticated log remains
|
|
147
|
+
* the write authority, while the hook only wakes a separate durable-outbox
|
|
148
|
+
* drain after bytes are safely on disk.
|
|
149
|
+
*/
|
|
150
|
+
type ContextItemsPersistedHook = (items: readonly ContextItem[]) => void;
|
|
151
|
+
export declare function setContextItemsPersistedHook(sessionId: string, hook: ContextItemsPersistedHook | null): void;
|
|
152
|
+
/** Vitest-gated setter for {@link testFaultInjection}; `null` disarms. */
|
|
153
|
+
export declare function setContextItemsFaultInjectionForTests(faults: {
|
|
154
|
+
failWrite?: boolean;
|
|
155
|
+
failTruncate?: boolean;
|
|
156
|
+
beforeFsync?: () => Promise<void>;
|
|
157
|
+
failRollbackSync?: boolean;
|
|
158
|
+
corruptAgentTurnReadback?: boolean;
|
|
159
|
+
crashAfterAgentTurnAppend?: boolean;
|
|
160
|
+
crashAfterAgentTurnCommit?: boolean;
|
|
161
|
+
failAgentTurnJournalCleanup?: boolean;
|
|
162
|
+
failAgentTurnCleanupDirectoryOpen?: boolean;
|
|
163
|
+
failAgentTurnCleanupDirectorySync?: boolean;
|
|
164
|
+
failAgentTurnCleanupDirectorySyncAtCall?: number;
|
|
165
|
+
failCanonicalLogDirectorySync?: boolean;
|
|
166
|
+
} | null): void;
|
|
167
|
+
export declare function getContextItemLog(sessionId: string): {
|
|
168
|
+
append: (draft: ContextItemDraft) => Promise<ContextItem | null>;
|
|
169
|
+
flush: () => Promise<void>;
|
|
170
|
+
readDurableSnapshot: () => Promise<string | null>;
|
|
171
|
+
commitAndVerifyAgentTurnBatch: (humanOccurrence: ContextItemOccurrence, drafts: CanonicalAgentTurnDraft[]) => Promise<ContextDurabilityReceipt>;
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* Append one typed item to the session's canonical log (the deterministic-
|
|
175
|
+
* emitter write path). Convenience over `getContextItemLog`.
|
|
176
|
+
*/
|
|
177
|
+
export declare function appendContextItem(sessionId: string, draft: ContextItemDraft): Promise<ContextItem | null>;
|
|
178
|
+
/** Finding 2 — flush a session's transient buffer at a natural boundary. */
|
|
179
|
+
export declare function flushContextItems(sessionId: string): Promise<void>;
|
|
180
|
+
export declare function commitAndVerifyAgentTurnBatch(sessionId: string, humanOccurrence: ContextItemOccurrence, successfulDrafts: CanonicalAgentTurnDraft[]): Promise<ContextDurabilityReceipt>;
|
|
181
|
+
/**
|
|
182
|
+
* Test seam — clear the per-process writer registry (vitest-gated, the
|
|
183
|
+
* CODEVIBE_HOME_OVERRIDE pattern).
|
|
184
|
+
*/
|
|
185
|
+
export declare function resetContextItemsProcessStateForTests(): void;
|
|
186
|
+
export interface ReadContextItemsResult {
|
|
187
|
+
items: ContextItem[];
|
|
188
|
+
/** True when every on-disk line unsealed + parsed as a sealed envelope. */
|
|
189
|
+
complete: boolean;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Read a session's items (tolerant: an unreadable line is skipped and
|
|
193
|
+
* `complete:false` reported — reads never throw). Stage-2 R1 F3: ONLY sealed
|
|
194
|
+
* (`csEnc`) envelope lines are accepted — there is NO legacy plaintext
|
|
195
|
+
* ContextItem format, so a plaintext line (which any local process WITHOUT
|
|
196
|
+
* the device key could craft) is an integrity failure, never parsed into
|
|
197
|
+
* items. For strict integrity use `verifyContextItemChain` /
|
|
198
|
+
* `readVerifiedContextItems`.
|
|
199
|
+
*/
|
|
200
|
+
export declare function readContextItems(sessionId: string): Promise<ReadContextItemsResult>;
|
|
201
|
+
export interface ChainVerificationResult {
|
|
202
|
+
ok: boolean;
|
|
203
|
+
length: number;
|
|
204
|
+
/** 0-based index of the first broken line (when !ok). */
|
|
205
|
+
brokenAt?: number;
|
|
206
|
+
reason?: 'read-error' | 'unreadable-line' | 'plaintext-line' | 'malformed-item' | 'prev-hash-mismatch' | 'seq-not-monotonic' | 'session-id-mismatch' | 'content-address-mismatch';
|
|
207
|
+
}
|
|
208
|
+
/** `ChainVerificationResult` + the parsed items when (and only when) `ok`. */
|
|
209
|
+
export interface VerifiedContextItemsResult extends ChainVerificationResult {
|
|
210
|
+
/** The full parsed chain — EMPTY unless `ok === true` (fail-closed). */
|
|
211
|
+
items: ContextItem[];
|
|
212
|
+
}
|
|
213
|
+
export declare function readVerifiedContextItems(sessionId: string): Promise<VerifiedContextItemsResult>;
|
|
214
|
+
/**
|
|
215
|
+
* §4.2 chain authority (a) — the ON-DEVICE `verify_chain` over decrypted
|
|
216
|
+
* content. Thin wrapper over `readVerifiedContextItems` (one verification
|
|
217
|
+
* source of truth); see it for the enforced contract.
|
|
218
|
+
*/
|
|
219
|
+
export declare function verifyContextItemChain(sessionId: string): Promise<ChainVerificationResult>;
|
|
220
|
+
/**
|
|
221
|
+
* The EXACT hosted `ContextItemsTable` row shape (design §4.1a/§4.2 + tracker
|
|
222
|
+
* [A1e]): plaintext = the opaque routing keys (`session_id` PK, `seq` SK,
|
|
223
|
+
* `task_id?`/`track_id?`) + the bounded non-semantic `expiresAt` TTL —
|
|
224
|
+
* NOTHING else. The full item (incl. `id`/`prev_hash`/`refs`/`kind`/labels/
|
|
225
|
+
* `body`) rides inside `ciphertext`, E2E-encrypted with the SESSION key
|
|
226
|
+
* (engine-opaque, exactly as briefs are today). Do NOT add attributes here:
|
|
227
|
+
* any new plaintext attribute fails the §4.2 boundary by default.
|
|
228
|
+
*/
|
|
229
|
+
export interface ContextItemWireRow {
|
|
230
|
+
session_id: string;
|
|
231
|
+
seq: string;
|
|
232
|
+
task_id?: string;
|
|
233
|
+
track_id?: string;
|
|
234
|
+
/**
|
|
235
|
+
* Epoch seconds copied from the authoritative Session row by AppSync. It is
|
|
236
|
+
* absent while the session has no retention deadline (normally ACTIVE) and
|
|
237
|
+
* set/updated when the session becomes INACTIVE. The desktop never chooses
|
|
238
|
+
* this value.
|
|
239
|
+
*/
|
|
240
|
+
expiresAt?: number;
|
|
241
|
+
/** Base64 AES-256-GCM (nonce+ct+tag) over the full serialized item. */
|
|
242
|
+
ciphertext: string;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Build the client-authored portion of one blind-held hosted row. AppSync adds
|
|
246
|
+
* the session-synchronized `expiresAt` from its strongly-read Session row;
|
|
247
|
+
* accepting a desktop-provided deadline would let a stale/offline client
|
|
248
|
+
* extend retention. The upload mutation consumes the remaining fields
|
|
249
|
+
* verbatim and stores no additional semantic plaintext.
|
|
250
|
+
*/
|
|
251
|
+
export declare function buildContextItemWireRow(item: ContextItem, sessionKeyBase64: string): ContextItemWireRow;
|
|
252
|
+
/** Decrypt a blind-held row back to the typed item (desktop-side only). */
|
|
253
|
+
export declare function decryptContextItemWireRow(row: Pick<ContextItemWireRow, 'ciphertext'>, sessionKeyBase64: string): ContextItem;
|
|
254
|
+
/**
|
|
255
|
+
* A1f Stage-1 R1 HIGH — the SINGLE floor predicate over emitter-assigned
|
|
256
|
+
* labels, shared by the hot-item filter (`projectItemsForRole`) AND the
|
|
257
|
+
* distilled-fact filter (context-compaction.ts) so the two halves of a
|
|
258
|
+
* rehydrated view can NEVER drift: a role R at clearance C may see a label
|
|
259
|
+
* iff `R ∈ visible_to` AND `sensitivity ≤ C`. FAIL-CLOSED on an unknown
|
|
260
|
+
* sensitivity value (the exhaustive-allowlist discipline).
|
|
261
|
+
*/
|
|
262
|
+
export declare function labelPermitsRole(label: {
|
|
263
|
+
sensitivity: ContextItemSensitivity;
|
|
264
|
+
visible_to: readonly ContextItemProjectionRole[];
|
|
265
|
+
}, role: ContextItemProjectionRole, clearance: ContextItemSensitivity): boolean;
|
|
266
|
+
/**
|
|
267
|
+
* §5 stage-1 static classification — the FLOOR. A projection for role R may
|
|
268
|
+
* only include items where `R ∈ visible_to` AND `sensitivity ≤ clearance`,
|
|
269
|
+
* excluding superseded/merge-invalidated items (§4.3). FAIL-CLOSED: an item
|
|
270
|
+
* with an unknown sensitivity value (a future schema widening this build
|
|
271
|
+
* does not know) is EXCLUDED — the exhaustive-allowlist discipline.
|
|
272
|
+
*
|
|
273
|
+
* This helper only SELECTS among already-labeled items; labels are assigned
|
|
274
|
+
* by the deterministic emitter at write time (§4.2) — never here, never by
|
|
275
|
+
* the conductor.
|
|
276
|
+
*/
|
|
277
|
+
export declare function projectItemsForRole(items: readonly ContextItem[], role: ContextItemProjectionRole, clearance: ContextItemSensitivity): ContextItem[];
|
|
278
|
+
/** The typed body of a `repo_state` ContextItem (one canonical schema, §4.3). */
|
|
279
|
+
export interface RepoStateBody {
|
|
280
|
+
workspaceId: string;
|
|
281
|
+
/** The frontier agent's codebase overview (sanitized upstream). */
|
|
282
|
+
summary: string;
|
|
283
|
+
/** The workspace git HEAD recorded AT READ TIME (§8.3 freshness). */
|
|
284
|
+
gitHead?: string;
|
|
285
|
+
producedAt: string;
|
|
286
|
+
}
|
|
287
|
+
export type RepoStateProjection = {
|
|
288
|
+
status: 'fresh';
|
|
289
|
+
summary: string;
|
|
290
|
+
author: ContextItemAuthor | {
|
|
291
|
+
role: 'agent';
|
|
292
|
+
agent_id: string;
|
|
293
|
+
};
|
|
294
|
+
producedAt: string;
|
|
295
|
+
} | {
|
|
296
|
+
status: 'stale' | 'missing';
|
|
297
|
+
};
|
|
298
|
+
/**
|
|
299
|
+
* Stage-2 R1 F5 — for a NON-git workspace (`probeWorkspaceGitHead` →
|
|
300
|
+
* `{kind:'non-git'}`, a DETERMINISTIC classification per Stage-2 R2 G3) a
|
|
301
|
+
* head-less record can never be head-proven fresh; without this bound the
|
|
302
|
+
* overview would never project AND every dispatch would fire a pointless
|
|
303
|
+
* re-delegation forever. Instead: fresh while the record is younger than
|
|
304
|
+
* this generous bound (24h); beyond it → stale (project nothing) — but
|
|
305
|
+
* re-delegation is NEVER fired for a non-git workspace (there is no HEAD
|
|
306
|
+
* signal a re-read could improve on). G3: this allowance applies ONLY to
|
|
307
|
+
* the deterministic `non-git` bucket — a `probe-failed` (transient git
|
|
308
|
+
* error, unborn HEAD) never borrows it.
|
|
309
|
+
*/
|
|
310
|
+
export declare const NON_GIT_REPO_STATE_MAX_AGE_MS: number;
|
|
311
|
+
/**
|
|
312
|
+
* §8.3 / A1e Finding 5 — project the workspace's `repo_state` for a dispatch.
|
|
313
|
+
*
|
|
314
|
+
* - Stage-2 R1 F4 — the typed log is consumed through the VERIFIED read
|
|
315
|
+
* path: on ANY chain-integrity failure this projects NOTHING (`missing`,
|
|
316
|
+
* once-warn, NO legacy fallback and NO re-delegation) — a forked /
|
|
317
|
+
* tampered / wrong-session log never supplies prompt content.
|
|
318
|
+
* - Latest live (non-superseded) `repo_state` item for this workspace from
|
|
319
|
+
* the verified log; falls back to the legacy A1a `repo-state.json`
|
|
320
|
+
* record only when the (verified) typed log has none (migration path).
|
|
321
|
+
* - The workspace git HEAD is probed NOW (Stage-2 R2 G3 — a DISCRIMINATED
|
|
322
|
+
* probe): with a resolvable HEAD (`kind:'head'`), a record whose
|
|
323
|
+
* `gitHead` is missing OR differs is STALE: `onStaleRedelegate` is fired
|
|
324
|
+
* (background re-delegation — fire-and-forget) and the stale summary is
|
|
325
|
+
* NEVER returned.
|
|
326
|
+
* - Stage-2 R1 F5 — in a DETERMINISTICALLY non-git workspace
|
|
327
|
+
* (`kind:'non-git'`) a head-less record is FRESH within
|
|
328
|
+
* `NON_GIT_REPO_STATE_MAX_AGE_MS` (there is no HEAD to prove staleness
|
|
329
|
+
* against), stale beyond it, and re-delegation NEVER fires. Stage-1 R3
|
|
330
|
+
* LOW-2 — the age gate fails CLOSED: an unparseable or future-dated
|
|
331
|
+
* `producedAt` is STALE, never fresh-forever. A git repo whose record
|
|
332
|
+
* lacks `gitHead` (legacy) stays STALE as before.
|
|
333
|
+
* - Stage-2 R2 G3 — a PROBE FAILURE (`kind:'probe-failed'`: transient git
|
|
334
|
+
* error, git missing, unborn HEAD) proves nothing and borrows NOTHING:
|
|
335
|
+
* never fresh (no F5 allowance) and NO re-delegation (a re-read under a
|
|
336
|
+
* failing probe records no head → a permanent loop) — stale, no-fire.
|
|
337
|
+
*/
|
|
338
|
+
export declare function projectRepoStateForDispatch(deps: {
|
|
339
|
+
sessionId: string;
|
|
340
|
+
workspaceId: string;
|
|
341
|
+
workspaceRoot: string;
|
|
342
|
+
/** Fired (once) when a stale/unproven record is found — the background re-delegation hook. */
|
|
343
|
+
onStaleRedelegate?: () => void;
|
|
344
|
+
/** Test seam — defaults to the real git probe. */
|
|
345
|
+
probeGitHeadFn?: typeof probeWorkspaceGitHead;
|
|
346
|
+
}): Promise<RepoStateProjection>;
|
|
347
|
+
/**
|
|
348
|
+
* The deterministic-emitter write path for a freshly-delegated codebase
|
|
349
|
+
* overview: appends a DURABLE `repo_state` item (attributed per §4 `author`,
|
|
350
|
+
* broadly visible per the §5 projection table, `user` sensitivity).
|
|
351
|
+
*/
|
|
352
|
+
export declare function appendRepoStateItem(deps: {
|
|
353
|
+
sessionId: string;
|
|
354
|
+
workspaceId: string;
|
|
355
|
+
summary: string;
|
|
356
|
+
/** The LE AgentKind that authored the read (e.g. 'CLAUDE'). */
|
|
357
|
+
agentId: string;
|
|
358
|
+
gitHead?: string;
|
|
359
|
+
producedAt?: string;
|
|
360
|
+
}): Promise<ContextItem | null>;
|
|
361
|
+
/**
|
|
362
|
+
* Byte budget for the composed dispatch-context block (fail-closed
|
|
363
|
+
* truncation) — matches the workflow-handoff total budget so one dispatch
|
|
364
|
+
* never carries an unbounded repo dump (§5 stage-2 bounded relevance).
|
|
365
|
+
* Stage-2 R1 F6 — this is a HARD cap on the TOTAL returned string, wrapper
|
|
366
|
+
* and truncation marker INCLUDED (both are reserved inside the budget).
|
|
367
|
+
*/
|
|
368
|
+
export declare const DISPATCH_CONTEXT_MAX_CHARS = 4800;
|
|
369
|
+
/**
|
|
370
|
+
* Compose the bounded repository-context block appended to an implementor /
|
|
371
|
+
* decomposer prompt at dispatch (the A1e REMAP: `mintContextRef` →
|
|
372
|
+
* `resolveContextRef` → `sliceSummary` finally have a production caller, and
|
|
373
|
+
* the `repo_state` overview is projected FRESH-ONLY per §8.3).
|
|
374
|
+
*
|
|
375
|
+
* Returns `''` when nothing is projectable (missing store, stale repo_state,
|
|
376
|
+
* resolve failure) — callers append verbatim, so empty = no block. Never
|
|
377
|
+
* throws: a projection failure degrades to the un-augmented prompt (the
|
|
378
|
+
* pre-A1e behavior), never a blocked dispatch.
|
|
379
|
+
*/
|
|
380
|
+
export declare function composeDispatchContextBlock(deps: {
|
|
381
|
+
sessionId: string;
|
|
382
|
+
workspaceRoot: string;
|
|
383
|
+
tier: Tier;
|
|
384
|
+
userId: string;
|
|
385
|
+
generator: StructuralSummaryGenerator;
|
|
386
|
+
/** §8.3 — background re-delegation hook for a stale repo_state. */
|
|
387
|
+
onStaleRepoState?: () => void;
|
|
388
|
+
/**
|
|
389
|
+
* A1f (design §6 rehydration) — the OPTIONAL session-context section
|
|
390
|
+
* provider: the compacted-prefix distillations + the role-filtered hot
|
|
391
|
+
* tail, rendered bounded (`renderRehydratedSessionContext` in
|
|
392
|
+
* context-compaction.ts — injected by the shell to avoid an import cycle;
|
|
393
|
+
* compaction imports THIS module). `''`/absent/throw ⇒ no section — the
|
|
394
|
+
* dispatch never blocks on rehydration. The section is counted inside the
|
|
395
|
+
* F6 total budget like every other section.
|
|
396
|
+
*/
|
|
397
|
+
renderSessionContextFn?: () => Promise<string>;
|
|
398
|
+
/** Test seams. */
|
|
399
|
+
loadContextStoreFn?: typeof loadContextStore;
|
|
400
|
+
resolveContextRefFn?: typeof resolveContextRef;
|
|
401
|
+
projectRepoStateFn?: typeof projectRepoStateForDispatch;
|
|
402
|
+
}): Promise<string>;
|
|
403
|
+
/**
|
|
404
|
+
* Compact, bounded rendering of the resolved slice: per repo one header line
|
|
405
|
+
* + a depth-≤2 directory listing, stopping at the char budget (fail-closed).
|
|
406
|
+
*/
|
|
407
|
+
export declare function renderRepoSliceCompact(repos: RepoSummary[], maxChars: number): string;
|
|
408
|
+
export {};
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import type { StructuralSummary, StructuralSummaryGenerator, RepoSummary } from '../structural-summary/types';
|
|
2
2
|
import type { Tier } from './types';
|
|
3
|
+
export declare function setStrictDirectorySyncFaultForTests(fault: {
|
|
4
|
+
phase: 'open' | 'sync';
|
|
5
|
+
pathSuffix?: string;
|
|
6
|
+
} | null): void;
|
|
7
|
+
/**
|
|
8
|
+
* Create a directory tree without leaving newly-created child entries only in
|
|
9
|
+
* the page cache. Each missing component is created individually and its
|
|
10
|
+
* parent is fsync'd before the next component is used as durability authority.
|
|
11
|
+
*/
|
|
12
|
+
export declare function ensureDirectoryDurable(directory: string, options?: {
|
|
13
|
+
requireParentSync?: boolean;
|
|
14
|
+
faultPath?: string;
|
|
15
|
+
}): Promise<void>;
|
|
3
16
|
/**
|
|
4
17
|
* Legacy §4.2 staleness fingerprint of the last scan — persisted in
|
|
5
18
|
* `metadata.json` by schema v1 builds. v2 keeps the same input-hash/content
|
|
@@ -59,6 +72,22 @@ export interface ContextStoreEntry {
|
|
|
59
72
|
digest: string;
|
|
60
73
|
metadata: ContextStoreMetadata;
|
|
61
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* A1a #5 — the frontier-authored `repo_state` record. A read-only frontier agent
|
|
77
|
+
* (never the 12B) produces the codebase overview during `familiarize`; this
|
|
78
|
+
* persists it so it is available for a later projection into implementor /
|
|
79
|
+
* decomposer briefs (that projection is [DEFERRED → P3/A1e] — A1a only persists).
|
|
80
|
+
*/
|
|
81
|
+
export interface RepoStateRecord {
|
|
82
|
+
/** The frontier agent's prose codebase overview. */
|
|
83
|
+
summary: string;
|
|
84
|
+
/** Which agent authored it (LE `AgentKind`, e.g. `CLAUDE`). */
|
|
85
|
+
author: string;
|
|
86
|
+
/** ISO timestamp the overview was produced. */
|
|
87
|
+
producedAt: string;
|
|
88
|
+
/** The git HEAD the overview was produced at, when captured cheaply. */
|
|
89
|
+
gitHead?: string;
|
|
90
|
+
}
|
|
62
91
|
/**
|
|
63
92
|
* §5.4 — `slice_selector` is FORMALLY TYPED so the writer and the
|
|
64
93
|
* prompt-composer reader never serialize/expect different shapes. One entry
|
|
@@ -149,6 +178,68 @@ export declare function deriveRepoId(relativePathFromWorkspaceRoot: string): str
|
|
|
149
178
|
export declare function normalizeRepoRelativePath(relativePath: string): string;
|
|
150
179
|
/** `~/.codevibe/context/<workspaceId>/` — entirely under the user's home. */
|
|
151
180
|
export declare function contextStoreDir(workspaceId: string): string;
|
|
181
|
+
/**
|
|
182
|
+
* Test seam — reset the module-level A1c process state (the cached at-rest
|
|
183
|
+
* key and the once-per-process GC flag). Honored ONLY under Vitest /
|
|
184
|
+
* NODE_ENV=test (the CODEVIBE_HOME_OVERRIDE gating pattern); a production
|
|
185
|
+
* caller cannot flip at-rest state mid-process.
|
|
186
|
+
*/
|
|
187
|
+
export declare function resetContextStoreProcessStateForTests(): void;
|
|
188
|
+
/**
|
|
189
|
+
* A1e Stage-2 R1 F2 — is the A1c at-rest key resolvable RIGHT NOW? The typed
|
|
190
|
+
* ContextItem log's tail recovery must DISTINGUISH "key unavailable
|
|
191
|
+
* (transient keychain outage — leave the log byte-untouched, fail-soft)"
|
|
192
|
+
* from "key available but the tail does not decrypt (genuine corruption —
|
|
193
|
+
* rotate)". `unsealStoreFile` returns `null` for both, so this narrow probe
|
|
194
|
+
* disambiguates. Shares the per-process cached derivation (no extra
|
|
195
|
+
* keychain traffic).
|
|
196
|
+
*/
|
|
197
|
+
export declare function atRestKeyAvailable(): Promise<boolean>;
|
|
198
|
+
/**
|
|
199
|
+
* Seal one store file: plaintext JSON → the `csEnc` envelope. Returns `null`
|
|
200
|
+
* when there is no at-rest key (keychain unavailable) — the caller must SKIP
|
|
201
|
+
* persistence rather than write plaintext (the at-rest invariant) or throw
|
|
202
|
+
* (the reconstructable-cache invariant).
|
|
203
|
+
*
|
|
204
|
+
* EXPORTED for the P3/A1e typed ContextItem log (`context-items.ts`), which
|
|
205
|
+
* builds ON the A1c at-rest discipline (same device-key HKDF, same envelope
|
|
206
|
+
* version) instead of duplicating it — the shared-context design §4.2
|
|
207
|
+
* at-rest requirement is A1c's, reused.
|
|
208
|
+
*/
|
|
209
|
+
export declare function sealStoreFile(plaintextJson: string): Promise<string | null>;
|
|
210
|
+
export interface UnsealedStoreFile {
|
|
211
|
+
/** The plaintext JSON (decrypted, or the raw bytes for a legacy file). */
|
|
212
|
+
json: string;
|
|
213
|
+
/** True when the on-disk bytes were a `csEnc` envelope (vs legacy plaintext). */
|
|
214
|
+
wasEnvelope: boolean;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Unseal one store file. Three outcomes, all non-throwing:
|
|
218
|
+
* - a `csEnc:1` envelope that decrypts → the inner plaintext JSON;
|
|
219
|
+
* - anything that is NOT a `csEnc` envelope (legacy plaintext, or non-JSON
|
|
220
|
+
* corruption) → the raw bytes unchanged, so the caller's own parse/shape
|
|
221
|
+
* validation behaves EXACTLY as pre-A1c;
|
|
222
|
+
* - `null` = CACHE MISS: an envelope we cannot decrypt (keychain unavailable,
|
|
223
|
+
* regenerated device key, unknown version, corrupt payload). The caller
|
|
224
|
+
* treats it as missing → recompute; a cache must never throw here.
|
|
225
|
+
*
|
|
226
|
+
* EXPORTED for the P3/A1e typed ContextItem log (see `sealStoreFile`).
|
|
227
|
+
*/
|
|
228
|
+
export declare function unsealStoreFile(raw: string, workspaceId: string, file: string): Promise<UnsealedStoreFile | null>;
|
|
229
|
+
/**
|
|
230
|
+
* Atomic write of one store file: write to `<name>.tmp.<pid>.<rand>` → fsync →
|
|
231
|
+
* chmod 0600 → `fs.rename` over the live file (the #589 at-rest pattern,
|
|
232
|
+
* mirroring `continuation/packet-writer.ts:atomicWritePacket`). A crash
|
|
233
|
+
* mid-write never leaves a truncated `summary.json`/`metadata.json` that the
|
|
234
|
+
* resolver would fail to parse (agy r5 L1). NOT imported from local-executor
|
|
235
|
+
* (forbidden); the pattern is inlined here.
|
|
236
|
+
*
|
|
237
|
+
* EXPORTED for the A1f compaction cache (`context-compaction.ts`) — the same
|
|
238
|
+
* 0700/0600 + tmp→fsync→rename discipline, reused rather than duplicated.
|
|
239
|
+
*/
|
|
240
|
+
export declare function atomicWriteFile(finalPath: string, bytes: string, options?: {
|
|
241
|
+
requireDirectorySync?: boolean;
|
|
242
|
+
}): Promise<void>;
|
|
152
243
|
/**
|
|
153
244
|
* Persist a fresh summary + digest + metadata to the store.
|
|
154
245
|
*
|
|
@@ -177,6 +268,13 @@ export declare function contextStoreDir(workspaceId: string): string;
|
|
|
177
268
|
* On any `summary_input_hash` change the caller passes `purgeFirst: true` so a
|
|
178
269
|
* stale body-including summary cannot linger on disk (§4.2 conjunct (d) — the
|
|
179
270
|
* PRIVACY fail-safe, Codex r7 H).
|
|
271
|
+
*
|
|
272
|
+
* A1c — both JSON files are SEALED (csEnc envelope) before the commit-marker
|
|
273
|
+
* unlink; `digest.txt` stays PLAINTEXT (non-sensitive bare sha256 hex, and the
|
|
274
|
+
* commit marker must stay readable without a key). No at-rest key (keychain
|
|
275
|
+
* unavailable) ⇒ persistence is SKIPPED entirely — the previously-committed
|
|
276
|
+
* set (if any) stays intact and the next run recomputes; a cache write never
|
|
277
|
+
* downgrades to plaintext and never crashes the shell.
|
|
180
278
|
*/
|
|
181
279
|
export declare function writeContextStore(deps: {
|
|
182
280
|
workspaceId: string;
|
|
@@ -190,6 +288,35 @@ export declare function writeContextStore(deps: {
|
|
|
190
288
|
* recompute). Defensive: a partially-written / corrupt file never throws.
|
|
191
289
|
*/
|
|
192
290
|
export declare function loadContextStore(workspaceId: string): Promise<ContextStoreEntry | null>;
|
|
291
|
+
/**
|
|
292
|
+
* A1a #5 — persist the frontier-authored codebase overview as `repo-state.json`
|
|
293
|
+
* alongside the structural summary. Mirrors the atomic-write discipline of
|
|
294
|
+
* `writeContextStore` (tmp → fsync → chmod → rename via `atomicWriteFile`), but as
|
|
295
|
+
* a SINGLE additive file: it is NOT part of the §4.2 content-addressed commit set,
|
|
296
|
+
* so no digest commit-marker ordering is needed. A crash mid-write leaves either
|
|
297
|
+
* the old file or the new one — never a torn read (the reader JSON-parses; a
|
|
298
|
+
* partial file fails the parse and is treated as missing).
|
|
299
|
+
*/
|
|
300
|
+
export declare function writeRepoState(workspaceId: string, record: RepoStateRecord): Promise<void>;
|
|
301
|
+
/**
|
|
302
|
+
* A1a #5 — load the frontier-authored `repo_state` for a workspace. Returns `null`
|
|
303
|
+
* when the file is missing / unparseable / shape-invalid (best-effort, never
|
|
304
|
+
* throws), mirroring `loadContextStore`'s tolerant read.
|
|
305
|
+
*/
|
|
306
|
+
export declare function loadRepoState(workspaceId: string): Promise<RepoStateRecord | null>;
|
|
307
|
+
/**
|
|
308
|
+
* A1c — sweep the context-store ROOT (the parent of the per-workspace dirs):
|
|
309
|
+
* 1. TTL — delete workspace dirs whose newest file mtime is older than
|
|
310
|
+
* `CONTEXT_STORE_TTL_MS`;
|
|
311
|
+
* 2. LRU cap — if more than `CONTEXT_STORE_MAX_DIRS` dirs remain (the
|
|
312
|
+
* current workspace's dir counts toward the cap), delete oldest-by-mtime
|
|
313
|
+
* beyond the cap.
|
|
314
|
+
* `currentWorkspaceId` is NEVER deleted — it is the store being written.
|
|
315
|
+
* Everything under the root is a reconstructable cache, so deletion is always
|
|
316
|
+
* safe and every per-dir failure is non-fatal (skip + continue). Only DIRECTORY
|
|
317
|
+
* entries are swept: the store owns nothing else at the root.
|
|
318
|
+
*/
|
|
319
|
+
export declare function gcContextStore(currentWorkspaceId?: string): Promise<void>;
|
|
193
320
|
interface GitProbe {
|
|
194
321
|
isGitRepo: boolean;
|
|
195
322
|
gitTopLevel: string | null;
|
|
@@ -197,6 +324,41 @@ interface GitProbe {
|
|
|
197
324
|
/** True only when `git status --porcelain --untracked-files=all` is EMPTY. */
|
|
198
325
|
clean: boolean;
|
|
199
326
|
}
|
|
327
|
+
/**
|
|
328
|
+
* Stage-2 R2 G3 — the discriminated result of the `repo_state` freshness
|
|
329
|
+
* HEAD probe. Collapsing "non-git" and "the probe FAILED" into one null was
|
|
330
|
+
* the G3 hole: a transient git failure borrowed the non-git 24h freshness
|
|
331
|
+
* allowance. The three outcomes drive DIFFERENT projection policies
|
|
332
|
+
* (context-items.ts `projectRepoStateForDispatch`).
|
|
333
|
+
*/
|
|
334
|
+
export type WorkspaceGitHeadProbe = {
|
|
335
|
+
kind: 'head';
|
|
336
|
+
head: string;
|
|
337
|
+
} | {
|
|
338
|
+
kind: 'non-git';
|
|
339
|
+
} | {
|
|
340
|
+
kind: 'probe-failed';
|
|
341
|
+
};
|
|
342
|
+
/**
|
|
343
|
+
* A1e Finding 5 (design §8.3 freshness) — the narrow git-HEAD probe the
|
|
344
|
+
* `repo_state` freshness projection uses.
|
|
345
|
+
*
|
|
346
|
+
* Stage-2 R2 G3 — discriminated outcomes:
|
|
347
|
+
* - `head` — a real git repo with a resolvable HEAD commit (the only
|
|
348
|
+
* outcome a `repo_state` record may PIN a `gitHead` from);
|
|
349
|
+
* - `non-git` — DETERMINISTICALLY not a repo (`git rev-parse
|
|
350
|
+
* --is-inside-work-tree` fails with "not a git repository" — exit
|
|
351
|
+
* semantics, not a guess): the only bucket eligible for the F5
|
|
352
|
+
* age-bounded freshness allowance;
|
|
353
|
+
* - `probe-failed` — everything else: git missing/broken, permission or
|
|
354
|
+
* transient errors, AND the UNBORN-HEAD case (a `git init` repo with no
|
|
355
|
+
* initial commit). Unborn-HEAD is bucketed here deliberately: it IS a
|
|
356
|
+
* repo, but there is no commit to pin freshness to and a re-delegated
|
|
357
|
+
* read could not produce a head-proven record either — so the
|
|
358
|
+
* conservative probe-failed policy (stale, NO re-delegation loop) is
|
|
359
|
+
* the sound handling, pinned by test.
|
|
360
|
+
*/
|
|
361
|
+
export declare function probeWorkspaceGitHead(workspaceRoot: string): Promise<WorkspaceGitHeadProbe>;
|
|
200
362
|
/**
|
|
201
363
|
* Hash the generation inputs (§4.2 conjunct (d)). A `StructuralSummary` is a
|
|
202
364
|
* pure function of `tree content × generation inputs`; this hashes the
|
package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/declared-test-runner.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { Dirent, Stats } from 'node:fs';
|
|
2
2
|
import type { runShellCommand } from '../local-executor/verification-gates/shell-runner';
|
|
3
3
|
import type { ShadowDiffFile } from '../local-executor/workspace-shadow';
|
|
4
|
+
import type { ProcessCleanupOwner } from '../local-executor/process-tree';
|
|
5
|
+
import { type WorkspaceRootAuthority } from '../local-executor/workspace-authority';
|
|
4
6
|
/** Default per-file wall-clock budget for a declared-test `node` run. */
|
|
5
7
|
export declare const DECLARED_TEST_TIMEOUT_MS = 300000;
|
|
6
8
|
/**
|
|
@@ -20,6 +22,9 @@ export interface DeclaredTestResult {
|
|
|
20
22
|
ranCount: number;
|
|
21
23
|
/** Never-written declared file / empty-or-JS-less declared dir (§3.D, VISIBLE). */
|
|
22
24
|
skipped: string[];
|
|
25
|
+
/** False means the caller must retain the test cwd. */
|
|
26
|
+
workspaceCleanupSafe?: false;
|
|
27
|
+
workspaceCleanupOwner?: ProcessCleanupOwner;
|
|
23
28
|
}
|
|
24
29
|
export interface RunDeclaredTestSurfacesArgs {
|
|
25
30
|
/** cwd holding the agent's changes (the shadow root). */
|
|
@@ -37,8 +42,8 @@ export interface RunDeclaredTestSurfacesArgs {
|
|
|
37
42
|
realpath: (p: string) => Promise<string>;
|
|
38
43
|
/** Injected — file/dir discriminate on the resolved target. */
|
|
39
44
|
stat: (p: string) => Promise<Stats>;
|
|
40
|
-
/**
|
|
41
|
-
readdir
|
|
45
|
+
/** @internal test-only directory expansion seam; production streams via opendir. */
|
|
46
|
+
readdir?: (p: string) => Promise<Dirent[]>;
|
|
42
47
|
/**
|
|
43
48
|
* Injected (#609) — read a file's UTF-8 contents (nearest-`package.json` framework detection).
|
|
44
49
|
* A throw (ENOENT / EISDIR / unreadable) is TOTAL-handled by `detectFramework` (→ keep walking up,
|
|
@@ -47,6 +52,20 @@ export interface RunDeclaredTestSurfacesArgs {
|
|
|
47
52
|
readFile: (p: string) => Promise<string>;
|
|
48
53
|
/** Default `DECLARED_TEST_TIMEOUT_MS`. */
|
|
49
54
|
timeoutMs?: number;
|
|
55
|
+
/** Cooperative session-shutdown cancellation for spawned test processes. */
|
|
56
|
+
signal?: AbortSignal;
|
|
57
|
+
/** Exact snapshot incarnation selected before declared-test discovery. */
|
|
58
|
+
shadowRootAuthority?: WorkspaceRootAuthority;
|
|
59
|
+
/** @internal deterministic root-replacement seam after initial validation. */
|
|
60
|
+
afterAuthorityCheck?: () => Promise<void> | void;
|
|
61
|
+
/** @internal deterministic A→B→A restoration before the final check. */
|
|
62
|
+
beforeAuthorityCompletion?: () => Promise<void> | void;
|
|
63
|
+
/** @internal deterministic root replacement immediately before framework discovery. */
|
|
64
|
+
beforeFrameworkDiscovery?: () => Promise<void> | void;
|
|
65
|
+
/** @internal helper-held missing-intermediate authority seam. */
|
|
66
|
+
beforeClassificationMissing?: () => Promise<void> | void;
|
|
67
|
+
/** @internal helper-held missing-leaf completion seam. */
|
|
68
|
+
beforeClassificationCompletion?: () => Promise<void> | void;
|
|
50
69
|
}
|
|
51
70
|
/**
|
|
52
71
|
* Canonicalize a declared scope / diff path for comparison: collapse backslashes to
|