mirror of
https://github.com/J3vb/OwnCord.git
synced 2026-09-03 03:50:00 +03:00
chore: remove graphify knowledge graph tooling (#1413)
The committed knowledge graph and its PreToolUse hooks were steering every codebase question through `graphify query` before any other tool could run. Serena (gopls + rust-analyzer + tsserver over MCP) answers the same questions from real language servers rather than a generated snapshot that goes stale between rebuilds, so the graph no longer earns the ~20 MB it costs the tree. Removed: - `graphify-out/` untracked (7 files, ~20 MB) and now gitignored - both `graphify hook-guard` PreToolUse hooks from `.claude/settings.json` - the "Knowledge graph (graphify)" section of `CLAUDE.md` - the `graphify-out/**` block from `.gitattributes` and `.gitignore` - the graph-rebuild step from the `bughunt-run` skill, and the graph-edge guidance from the bughunt workflow prompt - the graphify-specific `core.hooksPath` example in `ci-check` and `docs/contributing.md`, keeping the underlying warning in generic form Also deletes the locally installed `post-commit` / `post-checkout` rebuild hooks (untracked, not part of this diff). This does not shrink clone size: the graph blobs stay in published history, which `docs/plans/b1-repository-foundation-2026-08-25.md` explicitly rules out rewriting. It does stop future refreshes from adding more. Dated audit and plan documents keep their graphify references as a historical record of the state they described. Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,8 +1 @@
|
||||
{
|
||||
"hooks": {
|
||||
"PreToolUse": [
|
||||
{ "matcher": "Bash|Grep", "hooks": [{ "type": "command", "command": "graphify hook-guard search || exit 0" }] },
|
||||
{ "matcher": "Read|Glob", "hooks": [{ "type": "command", "command": "graphify hook-guard read || exit 0" }] }
|
||||
]
|
||||
}
|
||||
}
|
||||
{}
|
||||
|
||||
@@ -24,9 +24,7 @@ directive.
|
||||
|
||||
Before launching, in order:
|
||||
|
||||
1. **Rebuild the graph** (stale coordinates aim the explore lens at moved code):
|
||||
`graphify update . --no-cluster` — local tree-sitter, zero LLM cost, ~10.7k nodes.
|
||||
2. **Build the inventory**: `node .superpowers/rank-explore.mjs` — writes
|
||||
1. **Build the inventory**: `node .superpowers/rank-explore.mjs` — writes
|
||||
`.superpowers/explore-ranking.json`: EVERY non-test source file (~419 rows), each with
|
||||
`examined` (already carries a ledger finding or a LIVE explored-clean record → the hunt
|
||||
pre-seeds its covered set), `risky` (top coupling ∪ past-bug clusters ∪ top churn,
|
||||
@@ -39,7 +37,7 @@ Before launching, in order:
|
||||
must be `examined` in the inventory — a `known` file the inventory does not mark
|
||||
examined can never be drawn (the seen-filter blocks it) nor covered, which would
|
||||
strand `uncoveredCount()` above zero and block convergence.
|
||||
3. Read the ledger and pass every record in as `known`, so the hunt does not
|
||||
2. Read the ledger and pass every record in as `known`, so the hunt does not
|
||||
re-derive anything already found, fixed, declined, or refuted.
|
||||
|
||||
```
|
||||
|
||||
@@ -85,8 +85,7 @@ enforces everything.
|
||||
**`core.hooksPath` is exclusive, not additive.** Once set, Git resolves every
|
||||
hook against `.githooks/` and stops consulting `.git/hooks/` entirely.
|
||||
`.githooks/` holds only `pre-commit` and `pre-push`, so running
|
||||
`hooks:install` **silently disables any locally installed `post-commit`** —
|
||||
including the one `graphify hook install` writes (`CLAUDE.md`). Nothing warns
|
||||
you. If you want both, either re-install graphify's hook as
|
||||
`.githooks/post-commit` (untracked, and it stays yours), or skip
|
||||
`hooks:install` **silently disables any locally installed hook** of any other
|
||||
name (`post-commit`, `post-checkout`, ...). Nothing warns you. If you need one,
|
||||
re-install it under `.githooks/` (untracked, and it stays yours), or skip
|
||||
`hooks:install` and run the checks through `npm run check` instead.
|
||||
|
||||
@@ -102,15 +102,15 @@ Out of scope, do not report: naming, formatting, missing tests, "consider adding
|
||||
performance that is not a hang, anything you cannot point at specific lines for.
|
||||
|
||||
Method:
|
||||
1. Read the actual files. Never report from a filename, a grep hit, or a graph edge alone - a
|
||||
graphify edge is structural evidence of coupling, not of a bug; open the cited file and confirm.
|
||||
1. Read the actual files. Never report from a filename or a grep hit alone - a
|
||||
structural reference is evidence of coupling, not of a bug; open the cited file and confirm.
|
||||
2. For every candidate, grep for ALL callers before judging - a guard may already live upstream.
|
||||
3. Check whether an existing test already locks the behavior you think is wrong. If a test asserts it,
|
||||
it is intended behavior, not a bug. Test files are *_test.go and tests/unit/*.test.ts.
|
||||
4. Report EVERY finding you can prove - there is no cap. The quality bar stays: zero findings is a
|
||||
valid, respectable answer, and each finding needs file, line, and a concrete repro.
|
||||
|
||||
You may run read-only shell commands (grep, git log, go doc, graphify path, graphify explain).
|
||||
You may run read-only shell commands (grep, git log, go doc).
|
||||
Do not modify any file. Do not run the test suite.
|
||||
`
|
||||
|
||||
|
||||
@@ -8,14 +8,5 @@
|
||||
*.wasm binary
|
||||
*.exe binary
|
||||
|
||||
# Knowledge graph (graphify) — generated, committed so a fresh clone can query
|
||||
# it without rebuilding. `* text=auto eol=lf` above would rewrite line endings
|
||||
# inside these on checkout, and .graphify_labels.json.sig signs the labels
|
||||
# byte-for-byte, so normalization would invalidate the signature. -text opts the
|
||||
# whole tree out; -diff keeps a 17 MB graph out of textual diffs.
|
||||
graphify-out/** -text linguist-generated=true
|
||||
graphify-out/graph.json -diff
|
||||
graphify-out/graph.html -diff
|
||||
|
||||
# Rendered from findings-ledger.json by render-ledger.mjs — never hand-edit.
|
||||
.superpowers/FINDINGS.md linguist-generated=true
|
||||
|
||||
+2
-9
@@ -114,12 +114,5 @@ Client/.env
|
||||
# local server run logs
|
||||
server.log
|
||||
|
||||
# Knowledge graph (graphify). The top-level built graph is tracked so a fresh
|
||||
# clone can query it without a rebuild. Every subdirectory stays local: cache/
|
||||
# is a per-machine AST build cache, and graphify parks the PREVIOUS graph in a
|
||||
# dated YYYY-MM-DD/ backup on each rebuild — 18 MB of stale duplicate that is a
|
||||
# local rollback aid, not shared state.
|
||||
graphify-out/*/
|
||||
|
||||
# Transient graphify rebuild-state file.
|
||||
graphify-out/.pending_changes
|
||||
# Knowledge graph output (tool removed 2026-08-26; delete the dir when convenient).
|
||||
graphify-out/
|
||||
|
||||
@@ -17,25 +17,6 @@ CI fails on drift, and the next generator run silently discards your edit.
|
||||
| `Server/ws/message_types.go` **and** `Client/src/lib/protocolTypes.ts` | `docs/protocol-schema.json` | `protocol-change` skill |
|
||||
| `Client/src/generated/` | `tauri-typegen` | CI patches known typegen bugs — see `.github/workflows/ci.yml` |
|
||||
|
||||
## Knowledge graph (graphify)
|
||||
|
||||
`graphify-out/` holds a committed knowledge graph of this repo — god nodes,
|
||||
communities, cross-file edges. It is checked in so a fresh clone can query it
|
||||
without a rebuild.
|
||||
|
||||
- For codebase questions, run `graphify query "<question>"` before grepping.
|
||||
`graphify path "<A>" "<B>"` for relationships, `graphify explain "<concept>"`
|
||||
for one concept. These return a scoped subgraph — far smaller than
|
||||
`GRAPH_REPORT.md` or raw grep output.
|
||||
- Read `graphify-out/GRAPH_REPORT.md` only for broad architecture review.
|
||||
- After changing code, `graphify update .` refreshes it (AST-only, no API cost).
|
||||
`graphify hook install` wires that to a post-commit hook — `.git/hooks/` is not
|
||||
tracked, so each clone installs it once.
|
||||
- `graphify-out/cache/` is a per-machine AST cache and stays ignored.
|
||||
|
||||
The graph is generated: never hand-edit it, and refresh it in its own commit
|
||||
rather than folding an 18 MB blob into an unrelated diff.
|
||||
|
||||
## Bug-hunt ledger
|
||||
|
||||
`.superpowers/findings-ledger.json` is the shared ledger of hunt findings —
|
||||
|
||||
@@ -134,10 +134,10 @@ Neither hook needs `make`, and neither needs Node for the Go checks.
|
||||
|
||||
**`core.hooksPath` is exclusive.** Once set, Git resolves every hook against
|
||||
`.githooks/` and never looks in `.git/hooks/` again. `.githooks/` holds only
|
||||
`pre-commit` and `pre-push`, so `hooks:install` silently disables any
|
||||
`post-commit` you installed there — `graphify hook install` writes one. Nothing
|
||||
warns you. Put it at `.githooks/post-commit` instead (untracked, so it stays
|
||||
yours), or skip `hooks:install` and use `npm run check` before pushing.
|
||||
`pre-commit` and `pre-push`, so `hooks:install` silently disables any other
|
||||
hook you installed there (`post-commit`, `post-checkout`, ...). Nothing warns
|
||||
you. Put it under `.githooks/` instead (untracked, so it stays yours), or skip
|
||||
`hooks:install` and use `npm run check` before pushing.
|
||||
|
||||
## Plugin Development
|
||||
|
||||
|
||||
@@ -1,595 +0,0 @@
|
||||
{
|
||||
"0": "markdown.ts",
|
||||
"1": "createElement",
|
||||
"2": "testing.T",
|
||||
"3": "LiveKitSession",
|
||||
"4": "channels.store.ts",
|
||||
"5": "openMigratedMemory",
|
||||
"6": "context.Context",
|
||||
"7": "buildChannelRouter",
|
||||
"8": "seedMemberUser",
|
||||
"9": "MessageInput.ts",
|
||||
"10": "members.store.ts",
|
||||
"11": "waitRegistered",
|
||||
"12": "types.ts",
|
||||
"13": "NewAdminAPI",
|
||||
"14": "Fixed",
|
||||
"15": "messages.go",
|
||||
"16": "telemetry.go",
|
||||
"17": "DB",
|
||||
"18": "NewTestClient",
|
||||
"19": "newHandlerHub",
|
||||
"20": "livekitE2EE.ts",
|
||||
"21": "drainChanTimeout",
|
||||
"22": "newDMTestDB",
|
||||
"23": "tofu.rs",
|
||||
"24": "newAuthTestDB",
|
||||
"25": "newMigratedTestDB",
|
||||
"26": "time.Time",
|
||||
"27": "test-utils.ts",
|
||||
"28": "secret_store.rs",
|
||||
"29": "Hub",
|
||||
"30": "database/sql.Result",
|
||||
"31": "newUploadTestDB",
|
||||
"32": "VideoGrid.ts",
|
||||
"33": "net/http.HandlerFunc",
|
||||
"34": "newAdminTestDB",
|
||||
"35": "HashToken",
|
||||
"36": "attachments.ts",
|
||||
"37": "DMService",
|
||||
"38": "newRegistryWithDir",
|
||||
"39": "dispatcher.ts",
|
||||
"40": "Instance",
|
||||
"41": "screenShare.ts",
|
||||
"42": "NewChecker",
|
||||
"43": "middleware_test.go",
|
||||
"44": "UserBar.ts",
|
||||
"45": "DB",
|
||||
"46": "testing.F",
|
||||
"47": "Result",
|
||||
"48": "livekit_proxy.rs",
|
||||
"49": "native/helpers.ts",
|
||||
"50": "NewRouter",
|
||||
"51": "profileCreateToken",
|
||||
"52": "buildErrorMsg",
|
||||
"53": "newTestDB",
|
||||
"54": "MainPage.ts",
|
||||
"55": "newServeHub",
|
||||
"56": "3. Security",
|
||||
"57": "permissions_test.go",
|
||||
"58": "newOverrideFixture",
|
||||
"59": "postJSONWithToken",
|
||||
"60": "http_proxy.rs",
|
||||
"61": "newVoiceTestDB",
|
||||
"62": "livekit_test.go",
|
||||
"63": "dbgen/models.go",
|
||||
"64": "ProfileManager",
|
||||
"65": "README.md",
|
||||
"66": "devDependencies",
|
||||
"67": "LoadOrGenerate",
|
||||
"68": "helpers_test.go",
|
||||
"69": "main.ts",
|
||||
"70": "Security Policy",
|
||||
"71": "WriteAudit",
|
||||
"72": "channels.sql.go",
|
||||
"73": "Deployment Guide",
|
||||
"74": "livekit_proxy_test.go",
|
||||
"75": "newEmojiService",
|
||||
"76": "ws_proxy.rs",
|
||||
"77": "bughunt.js",
|
||||
"78": "NewHandler",
|
||||
"79": "db/db.go",
|
||||
"80": "Tables",
|
||||
"81": "newMentionFixture",
|
||||
"82": "messages_test.go",
|
||||
"83": "newWAFMiddleware",
|
||||
"84": "Config",
|
||||
"85": "storage_test.go",
|
||||
"86": "Migrate",
|
||||
"87": "Hub",
|
||||
"88": "admin/export_test.go",
|
||||
"89": "dispatcher.test.ts",
|
||||
"90": "updater_test.go",
|
||||
"91": "newTestMessageService",
|
||||
"92": "newTestUpdater",
|
||||
"93": "Hub",
|
||||
"94": "compilerOptions",
|
||||
"95": "OwnCord — Repo Health Audit",
|
||||
"96": "handleCreateEmoji",
|
||||
"97": "emoji_handler_test.go",
|
||||
"98": "buildVoiceLeave",
|
||||
"99": "media.ts",
|
||||
"100": "doRequest",
|
||||
"101": "handleRestoreBackup",
|
||||
"102": "Auth Endpoints",
|
||||
"103": "MigrateFS",
|
||||
"104": "Queries",
|
||||
"105": "Save",
|
||||
"106": "REST API Reference",
|
||||
"107": "RateLimiter",
|
||||
"108": "joinVoice",
|
||||
"109": "ptt.rs",
|
||||
"110": "OwnCord Audit — Documentation Accuracy & UI/UX Test Coverage (2026-08-04)",
|
||||
"111": "scripts",
|
||||
"112": "checkSourceWith",
|
||||
"113": "Load",
|
||||
"114": "Registry",
|
||||
"115": "AdminActions.ts",
|
||||
"116": "newEmitTestHub",
|
||||
"117": "Plan: Remediate security-hardening review regressions",
|
||||
"118": "verify.go",
|
||||
"119": "chdirTemp",
|
||||
"120": "NewEventPersister",
|
||||
"121": "EnsureLiveKitBinary",
|
||||
"122": "clientip_test.go",
|
||||
"123": "Queries",
|
||||
"124": "newRoleCRUDService",
|
||||
"125": "net/http.Handler",
|
||||
"126": "navigateToMainPage",
|
||||
"127": "messages.sql.go",
|
||||
"128": "Channel Endpoints",
|
||||
"129": "newSignedTestUpdater",
|
||||
"130": "host_http_test.go",
|
||||
"131": "VoiceTopic",
|
||||
"132": "DB",
|
||||
"133": "users",
|
||||
"134": "Client",
|
||||
"135": "ConnectPageCallbacks",
|
||||
"136": "newWazeroTestRegistry",
|
||||
"137": "OwnCord beta requirement traceability",
|
||||
"138": "wizardHandler",
|
||||
"139": "middleware_and_spawn_test.go",
|
||||
"140": "password_test.go",
|
||||
"141": "newPurgeService",
|
||||
"142": "handleVoiceTokenRefreshV2",
|
||||
"143": "pubsub_test.go",
|
||||
"144": "newChannelTestAPI",
|
||||
"145": "TestHandleLogStream_EntryWrittenDuringBackfillIsDelivered",
|
||||
"146": "net/http.Request",
|
||||
"147": "log/slog.Value",
|
||||
"148": "Updater",
|
||||
"149": "Queries",
|
||||
"150": "dependencies",
|
||||
"151": "newHarvestVoiceDB",
|
||||
"152": "Config Key Reference",
|
||||
"153": "connectionStats.ts",
|
||||
"154": "FenwickTree",
|
||||
"155": "totp_test.go",
|
||||
"156": "github.com/owncord/server/syncutil.Mutex",
|
||||
"157": "NewRegistry",
|
||||
"158": "ChannelSidebar.ts",
|
||||
"159": "deep-link.ts",
|
||||
"160": "testing.M",
|
||||
"161": "newMockDB",
|
||||
"162": "OwnCord",
|
||||
"163": "bughunt-fix.js",
|
||||
"164": "buildTauriMockScript",
|
||||
"165": "OwnCord Introspection MCP Server",
|
||||
"166": "Bug-detection improvements — design",
|
||||
"167": "ux/README.md",
|
||||
"168": "eslint-rules.js",
|
||||
"169": "DB",
|
||||
"170": "OwnCord — Security Review",
|
||||
"171": "Plan: Slash command dispatcher in WS",
|
||||
"172": "vad-worklet-timing.test.ts",
|
||||
"173": "ChannelTopic",
|
||||
"174": "rate-limiter.ts",
|
||||
"175": "Open",
|
||||
"176": "MountAuthRoutes",
|
||||
"177": "e2e/helpers.ts",
|
||||
"178": "fallback_crypto.rs",
|
||||
"179": "Direct Messages",
|
||||
"180": "WebSocket Protocol Reference",
|
||||
"181": "command.go",
|
||||
"182": "NewRingBuffer",
|
||||
"183": "ws-load.js",
|
||||
"184": "NewMessageService",
|
||||
"185": "handler",
|
||||
"186": "tauri-client/package.json",
|
||||
"187": "screen-share-tracks.test.ts",
|
||||
"188": "LoginFormApi",
|
||||
"189": "social.parity.spec.ts",
|
||||
"190": "fakeDirInfo",
|
||||
"191": "Role Management",
|
||||
"192": "User Profile & Sessions",
|
||||
"193": "F3 — Voice E2EE identity keys + TOFU (the remaining work)",
|
||||
"194": "Server/main.go",
|
||||
"195": "totp_encrypt_test.go",
|
||||
"196": "logstream.go",
|
||||
"197": "plugins_handler_test.go",
|
||||
"198": "badDirFile",
|
||||
"199": "Contributing",
|
||||
"200": "github.com/coder/websocket.Conn",
|
||||
"201": "mcp-introspect/package.json",
|
||||
"202": "v1.2.0-alpha.1 — Discord feature parity",
|
||||
"203": "Task Observer — Continuous Skill Discovery & Improvement",
|
||||
"204": "handleVoiceE2EEOfferV2",
|
||||
"205": "AudioPipeline",
|
||||
"206": "Messaging — target UX",
|
||||
"207": "B0 baseline and audit reconciliation",
|
||||
"208": "message.go",
|
||||
"209": "LiveKitClient",
|
||||
"210": "migrate.go",
|
||||
"211": "voice-audio-tab.test.ts",
|
||||
"212": "OwnCord beta product requirements",
|
||||
"213": "OwnCord repository-health issue register",
|
||||
"214": "Queries",
|
||||
"215": "newTestRoleService",
|
||||
"216": "knip.json",
|
||||
"217": "RNNoiseProcessor",
|
||||
"218": "Store",
|
||||
"219": "finish",
|
||||
"220": "TestHarness",
|
||||
"221": "Connection & Authentication — target UX",
|
||||
"222": "Settings & Admin — target UX",
|
||||
"223": "buildClientUpdateRouter",
|
||||
"224": "DeviceManager",
|
||||
"225": "newTestRoleService",
|
||||
"226": "event.go",
|
||||
"227": "NewTopicRateLimiter",
|
||||
"228": "Skill Authoring — taxonomy, licensing, confidentiality, editing rules",
|
||||
"229": ".oxlintrc.json",
|
||||
"230": "setupDiagnosticsRouter",
|
||||
"231": "e2e/dm-system.spec.ts",
|
||||
"232": "Queries",
|
||||
"233": "emoji.sql.go",
|
||||
"234": "OwnCord — Architectural Audit & Spec-Conformance Review",
|
||||
"235": "LiveKit Setup Guide",
|
||||
"236": "Voice Signaling",
|
||||
"237": "Quick Start Guide",
|
||||
"238": "OwnCord — Test Audit",
|
||||
"239": "OwnCord public-beta execution roadmap",
|
||||
"240": "index.mjs",
|
||||
"241": "Channel",
|
||||
"242": "bughunt.harness.mjs",
|
||||
"243": "video-grid.test.ts",
|
||||
"244": "context.CancelFunc",
|
||||
"245": "Channel Permission Overrides",
|
||||
"246": "Server Stats & User Administration",
|
||||
"247": ".DeleteAccount",
|
||||
"248": "loadPref",
|
||||
"249": "syntax-highlight.ts",
|
||||
"250": "slashFS",
|
||||
"251": "Running the bughunt pipeline",
|
||||
"252": "EventSink",
|
||||
"253": "reconnectAfterCertAccept",
|
||||
"254": "setupVoiceRoom",
|
||||
"255": "emoji-voicemod.parity.spec.ts",
|
||||
"256": "voice-e2ee-verify.spec.ts",
|
||||
"257": "include",
|
||||
"258": "VoiceWidgetOptions",
|
||||
"259": "Custom Emoji",
|
||||
"260": "LiveKitProcess",
|
||||
"261": "OriginAcceptOptions",
|
||||
"262": "EventRingBuffer",
|
||||
"263": "OwnCord full repository-health audit",
|
||||
"264": "newTokenTestDB",
|
||||
"265": "scripts",
|
||||
"266": "bughunt-fix.harness.mjs",
|
||||
"267": "router.ts",
|
||||
"268": "E2E Test Status — 2026-08-05",
|
||||
"269": "render-ledger.mjs",
|
||||
"270": "MountGIFRoutes",
|
||||
"271": "TestMigrate_UpgradeFromMigration019PreservesData",
|
||||
"272": "Queries",
|
||||
"273": "TestChannelVisibility_RESTWSAgreement",
|
||||
"274": "Hub",
|
||||
"275": "plans/README.md",
|
||||
"276": "Port Forwarding Guide",
|
||||
"277": "Chat Messages",
|
||||
"278": "hello/main.go",
|
||||
"279": "profile_fields_test.go",
|
||||
"280": "noise-suppression.ts",
|
||||
"281": "Client HTTP TOFU Proxy (D5) — Design",
|
||||
"282": "create_tray",
|
||||
"283": "API Tokens",
|
||||
"284": "Backups",
|
||||
"285": "Plugin Administration",
|
||||
"286": "Invite Endpoints",
|
||||
"287": "Manifest",
|
||||
"288": "Infrastructure roadmap — design",
|
||||
"289": "Member Updates",
|
||||
"290": "genprotocol/main.go",
|
||||
"291": "RingBuffer",
|
||||
"292": "AuditWriter",
|
||||
"293": "ChatSendCmd",
|
||||
"294": "Environments, Activation Setup, and Handoff-Doc Mode",
|
||||
"295": "scanPluginDirectory",
|
||||
"296": "capabilities-scope.test.ts",
|
||||
"297": "window-state.ts",
|
||||
"298": "GET /admin/api/updates",
|
||||
"299": ".deliverBroadcast",
|
||||
"300": "sqlc Adoption (D2) — Progress & Plan",
|
||||
"301": "Authentication Flow",
|
||||
"302": "Voice Moderation",
|
||||
"303": "bug_report.md",
|
||||
"304": "Pull Request",
|
||||
"305": "prettier",
|
||||
"306": "openFileDB",
|
||||
"307": "hello plugin",
|
||||
"308": "handleVoiceE2EEAnnounceV2",
|
||||
"309": "IsUniqueConstraintError",
|
||||
"310": "Tauri HTTP Capability Narrowing — Design",
|
||||
"311": "protocol_contract_test.go",
|
||||
"312": "ChatCommandCmd",
|
||||
"313": "ci-check",
|
||||
"314": "Comprehensive Review (scheduled or fallback)",
|
||||
"315": "Credential storage",
|
||||
"316": "buildChannelUpdate",
|
||||
"317": "cert-tofu.spec.ts",
|
||||
"318": "updater.spec.ts",
|
||||
"319": "OwnCord repository-layout and contributor-experience audit",
|
||||
"320": "tsconfig.build.json",
|
||||
"321": "User Blocks",
|
||||
"322": "PATCH /admin/api/settings",
|
||||
"323": "GET /api/v1/gif/search",
|
||||
"324": "First-Run Setup",
|
||||
"325": "LiveKit Endpoints",
|
||||
"326": "reactions.sql.go",
|
||||
"327": "Tailscale Guide (Zero-Config Remote Access)",
|
||||
"328": "LiveKitProcess",
|
||||
"329": "Voice, Video & E2EE — target UX",
|
||||
"330": "ChatEditCmd",
|
||||
"331": "VoiceE2EEOfferCmd",
|
||||
"332": "VoiceModDeafenCmd",
|
||||
"333": "VoiceModMuteCmd",
|
||||
"334": "admin-static-channel-perms.test.ts",
|
||||
"335": "Capture",
|
||||
"336": "GET /api/v1/client-update/{target}/{current_version}",
|
||||
"337": "OwnCord Architecture Blueprints",
|
||||
"338": "Voice End-to-End Encryption",
|
||||
"339": "feature_request.md",
|
||||
"340": "ResolveTokenHash",
|
||||
"341": "VerifyTOTPCodeOnce",
|
||||
"342": "Hub",
|
||||
"343": "ChatDeleteCmd",
|
||||
"344": "OwnCord — Test-Coverage Audit",
|
||||
"345": "MessageDeletedDMEvent",
|
||||
"346": "MessageEditedDMEvent",
|
||||
"347": "MessageSentDMEvent",
|
||||
"348": "PresenceUpdateCmd",
|
||||
"349": "ReactionAddCmd",
|
||||
"350": "PresenceOthersEvent",
|
||||
"351": "ReactionRemoveCmd",
|
||||
"352": "stubExcludeSenderEvent",
|
||||
"353": "stubSequencedDMEvent",
|
||||
"354": "stubVoiceChannelEvent",
|
||||
"355": "stubVoiceChannelGuardedEvent",
|
||||
"356": "ReactionDMEvent",
|
||||
"357": "VoiceE2EEAnnounceCmd",
|
||||
"358": "TypingChannelEvent",
|
||||
"359": "VoiceE2EEAnnounceEvent",
|
||||
"360": "VoiceModMoveCmd",
|
||||
"361": "OwnCord",
|
||||
"362": "OwnCord Client (Tauri v2)",
|
||||
"363": "VadProcessor",
|
||||
"364": "log_level_from_env",
|
||||
"365": ".String",
|
||||
"366": "VoiceE2EEOfferGuardedEvent",
|
||||
"367": "File Upload and Serving",
|
||||
"368": "Server Logs (SSE)",
|
||||
"369": "B0 — Restore truth, freeze scope, and reconcile the audit",
|
||||
"370": "CallSignalEvent",
|
||||
"371": "DMChannelOpenEvent",
|
||||
"372": "MessageDeletedChannelEvent",
|
||||
"373": "DM Calls",
|
||||
"374": "Channel Updates",
|
||||
"375": "Heartbeat and Connection Liveness",
|
||||
"376": "Message Type Reference Table",
|
||||
"377": "Direct Messages",
|
||||
"378": "OwnCord Server (Go)",
|
||||
"379": "MessageEditedChannelEvent",
|
||||
"380": "CallDeclineCmd",
|
||||
"381": "CallRingCmd",
|
||||
"382": "MessageSentChannelEvent",
|
||||
"383": "ChannelFocusCmd",
|
||||
"384": "PluginBroadcastEvent",
|
||||
"385": "MarkReadCmd",
|
||||
"386": "PresenceSelfEvent",
|
||||
"387": "ReactionChannelEvent",
|
||||
"388": "TypingDMEvent",
|
||||
"389": "VoiceStateEvent",
|
||||
"390": "TestDeleteExpiredSessions_SargableFormat",
|
||||
"391": "jsdom.d.ts",
|
||||
"392": "stubChannelEvent",
|
||||
"393": "stubUserTargetedEvent",
|
||||
"394": "TestPresenceEvents_InvisibleBlanksCustomStatusForOthers",
|
||||
"395": "TypingStartCmd",
|
||||
"396": "VoiceCameraCmd",
|
||||
"397": "VoiceDeafenCmd",
|
||||
"398": "VoiceJoinCmd",
|
||||
"399": "VoiceMuteCmd",
|
||||
"400": "VoiceScreenshareCmd",
|
||||
"401": "PresenceEvent",
|
||||
"402": "errDMChannelIDsStore",
|
||||
"403": "db-change",
|
||||
"404": "enable_media_capture",
|
||||
"405": "admin-panel.spec.ts",
|
||||
"406": "start-server.sh",
|
||||
"407": "Channel Focus and Read State",
|
||||
"408": "Error Handling",
|
||||
"409": "Presence",
|
||||
"410": "Transport Layer",
|
||||
"411": "pre-commit",
|
||||
"412": "pre-push",
|
||||
"413": "scaledAuthLimit",
|
||||
"414": "seedUser",
|
||||
"415": "global-keybinds.test.ts",
|
||||
"416": "015_plugins.sql",
|
||||
"417": "tryLoadPluginTOML",
|
||||
"418": "tryLoadPluginTOML",
|
||||
"419": "Queries",
|
||||
"420": "mockTauriFullSessionWithVoice",
|
||||
"421": "syscall.SysProcAttr",
|
||||
"422": ".UpdateUserProfile",
|
||||
"423": "B10 — Qualify and publish the public beta",
|
||||
"424": "protocol-change/SKILL.md",
|
||||
"425": "strip-appimage-bundled-libs.sh",
|
||||
"426": "build.rs",
|
||||
"427": "main.rs",
|
||||
"428": "jitsi-rnnoise.d.ts",
|
||||
"429": "stryker.config.mjs",
|
||||
"430": "setup.ts",
|
||||
"431": "appearance-high-contrast.test.ts",
|
||||
"432": "base-font-size-css.test.ts",
|
||||
"433": "vite.config.ts",
|
||||
"434": "Querier",
|
||||
"435": ".serialize",
|
||||
"436": "lockfile_other.go",
|
||||
"437": "lockfile_unix.go",
|
||||
"438": "lockfile_windows.go",
|
||||
"439": "free_other.go",
|
||||
"440": "free_unix.go",
|
||||
"441": "free_windows.go",
|
||||
"442": "003_audit_log.sql",
|
||||
"443": "011_rate_lockouts.sql",
|
||||
"444": "014_events_table.sql",
|
||||
"445": "chaos-test.sh",
|
||||
"446": "voice-test.sh",
|
||||
"447": "proc_spawner_nix.go",
|
||||
"448": "proc_spawner_win.go",
|
||||
"449": "OwnCord — Comprehensive Project Audit",
|
||||
"450": "playwright.config.ts",
|
||||
"451": "playwright.config.admin.ts",
|
||||
"452": "playwright.config.native.ts",
|
||||
"453": "playwright.config.prod.ts",
|
||||
"454": "constants.rs",
|
||||
"455": "vite-env.d.ts",
|
||||
"456": "@vitest/browser-playwright",
|
||||
"457": ".addEventListener",
|
||||
"458": "tauri-conf-webview2-args.test.ts",
|
||||
"459": "video-grid-track-muted-css.test.ts",
|
||||
"460": "vitest.config.ts",
|
||||
"461": "vitest.config.browser.ts",
|
||||
"462": "github.com/owncord/server",
|
||||
"463": "owncord-client",
|
||||
"464": "auth.go",
|
||||
"465": "auth/constants.go",
|
||||
"466": "config/constants.go",
|
||||
"467": "apitoken_queries.go",
|
||||
"468": "block_queries.go",
|
||||
"469": "emoji_queries.go",
|
||||
"470": "invite_queries.go",
|
||||
"471": "lockout_queries.go",
|
||||
"472": "db/logvalue.go",
|
||||
"473": "profile_queries.go",
|
||||
"474": "admin.sql",
|
||||
"475": "apitokens.sql",
|
||||
"476": "attachments.sql",
|
||||
"477": "blocks.sql",
|
||||
"478": "channels.sql",
|
||||
"479": "dm.sql",
|
||||
"480": "emoji.sql",
|
||||
"481": "events.sql",
|
||||
"482": "invites.sql",
|
||||
"483": "lockouts.sql",
|
||||
"484": "messages.sql",
|
||||
"485": "plugins.sql",
|
||||
"486": "profile.sql",
|
||||
"487": "reactions.sql",
|
||||
"488": "roles.sql",
|
||||
"489": "sessions.sql",
|
||||
"490": "users.sql",
|
||||
"491": "voice.sql",
|
||||
"492": "diskutil.go",
|
||||
"493": "004_voice_optimization.sql",
|
||||
"494": "005_fix_member_permissions.sql",
|
||||
"495": "006_channel_overrides_index.sql",
|
||||
"496": "007_member_video_permissions.sql",
|
||||
"497": "008_attachment_dimensions.sql",
|
||||
"498": "attachments",
|
||||
"499": "010_attachment_uploader.sql",
|
||||
"500": "attachments",
|
||||
"501": "013_channel_type_constraint.sql",
|
||||
"502": "016_announcement_channel_type.sql",
|
||||
"503": "017_user_identity_key.sql",
|
||||
"504": "019_perf_indexes.sql",
|
||||
"505": "020_drop_redundant_indexes.sql",
|
||||
"506": "021_voice_server_moderation.sql",
|
||||
"507": "023_role_management.sql",
|
||||
"508": "025_channel_nsfw.sql",
|
||||
"509": "026_emoji_mime.sql",
|
||||
"510": "emoji",
|
||||
"511": "027_user_profile_fields.sql",
|
||||
"512": "028_group_dms.sql",
|
||||
"513": "029_drop_sounds_table.sql",
|
||||
"514": "031_sessions_expiry_index.sql",
|
||||
"515": "migrations.go",
|
||||
"516": "plugin/errors.go",
|
||||
"517": "host_storage.go",
|
||||
"518": "host_ui.go",
|
||||
"519": "message_crud.go",
|
||||
"520": "message_purge.go",
|
||||
"521": "mutex.go",
|
||||
"522": "mutex_deadlock.go",
|
||||
"523": "mutex_prod.go",
|
||||
"524": "emit.go",
|
||||
"525": "ws/errors.go",
|
||||
"526": "handlers.go",
|
||||
"527": "hub_livekit.go",
|
||||
"528": "hub_sweep.go",
|
||||
"529": "message_types.go",
|
||||
"530": "handleLogStream",
|
||||
"531": "docker-smoke.sh",
|
||||
"532": "B1 — Isolated repository and contributor foundation",
|
||||
"533": "prettier",
|
||||
"534": "buildUserUpdate",
|
||||
"535": "@vitest/coverage-v8",
|
||||
"536": "B2 — Freeze server protocol, trust, and compatibility contracts",
|
||||
"537": "2. Code Quality",
|
||||
"538": "B3 — Strengthen server architecture and permanent guardrails",
|
||||
"539": "B4 — Complete identity, recovery, privacy, and data lifecycle",
|
||||
"540": "B5 — Add community, content, and moderation services",
|
||||
"541": "buildChannelDelete",
|
||||
"542": "addrinuse_unix.go",
|
||||
"543": "addrinuse_windows.go",
|
||||
"544": "msg-actions-bar-focus-css.test.ts",
|
||||
"545": "navigation-guard.ts",
|
||||
"546": "hub_wiring_test.go",
|
||||
"547": "volume-menu.test.ts",
|
||||
"548": "New",
|
||||
"549": "B6 — Qualify server deployment, operations, and capacity",
|
||||
"550": "MetricsSources",
|
||||
"551": "B7 — Establish the shared client platform and desktop parity",
|
||||
"552": "updater.test.ts",
|
||||
"553": "B8 — Deliver browser, PWA, phone, and tablet support",
|
||||
"554": "B9 — Complete unified feature UX, accessibility, and polish",
|
||||
"555": "groupDMFixture",
|
||||
"556": ".finishVoiceLeave",
|
||||
"557": "protocolTypes.ts",
|
||||
"558": "TestNewRouter_DeleteAccount_BroadcastsMemberBanOverWS",
|
||||
"559": "4. Dependencies & Supply Chain",
|
||||
"560": "global-teardown.ts",
|
||||
"561": "newDeafenRaceDB",
|
||||
"562": "5. Test Coverage & Quality",
|
||||
"563": ".RoundTrip",
|
||||
"564": "perm_grid_test.go",
|
||||
"565": "NewRoleService",
|
||||
"566": "buildMetricsRouter",
|
||||
"567": "TestAdminAPI_PatchUser_RoleChangeBroadcastsEvenIfRoleReReadFails",
|
||||
"568": "isAddrInUse",
|
||||
"569": "TestRegisterNow_ReplacementNeverLosesAConcurrentGlobalBroadcast",
|
||||
"570": "b0-dev-branch-protection.sh",
|
||||
"571": "extractChatserverFromTarGz",
|
||||
"572": "1. Architecture",
|
||||
"573": "6. CI/CD & DevEx",
|
||||
"574": "7. Observability",
|
||||
"575": "TestHandleVoiceCameraV2_RefusedWhenScreenshareSlotFull",
|
||||
"576": "audio-pipeline-vad-worklet.test.ts",
|
||||
"577": ".applyMicMuteState",
|
||||
"578": "RunningUnderSupervisor",
|
||||
"579": "Non-negotiable execution rules",
|
||||
"580": "failNthInstallStore",
|
||||
"581": "TestAdminAuthMiddleware_DBErrorIsNotUnauthorized",
|
||||
"582": "Security Policy",
|
||||
"583": "TestEnableVideoSlot_SameUserDoubleStreamCountsTwoSlots",
|
||||
"584": "D7 — Module map",
|
||||
"585": "D5 — Entity-relationship overview",
|
||||
"586": "WebSocket / Real-time Engine",
|
||||
"587": "adminPanelSource",
|
||||
"588": "ParseLevel",
|
||||
"589": "roleDeletingInvalidator",
|
||||
"590": "identityKeyFailStore",
|
||||
"591": "BuildTOTPURI",
|
||||
"592": "errDMParticipantsStore"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -1 +0,0 @@
|
||||
.
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
-551322
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user