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:
J3vb
2026-08-26 17:45:10 +00:00
committed by GitHub
co-authored by Claude Opus 5
parent 70473e8e10
commit a5f7d954d2
15 changed files with 15 additions and 560420 deletions
+1 -8
View File
@@ -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" }] }
]
}
}
{}
+2 -4
View File
@@ -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.
```
+3 -4
View File
@@ -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.
+3 -3
View File
@@ -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.
`
-9
View File
@@ -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
View File
@@ -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/
-19
View File
@@ -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 —
+4 -4
View File
@@ -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
-595
View File
@@ -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
View File
@@ -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
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff