Skip to content
Merged
Show file tree
Hide file tree
Changes from 44 commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
b2f2c98
Discover hooks bundled with plugins
abhinav-oai Apr 26, 2026
d2097f9
Remove plugin hook load warnings from discovery
abhinav-oai Apr 26, 2026
6655134
Refactor plugin hook file loading
abhinav-oai Apr 26, 2026
5aed78a
Fix plugin hook test argument comment
abhinav-oai Apr 26, 2026
803c16f
Move plugin loader tests out of implementation
abhinav-oai Apr 26, 2026
108dc35
Inline plugin hook relative path
abhinav-oai Apr 27, 2026
d5539f4
Add hook listing and config APIs
abhinav-oai Apr 27, 2026
38c5e3a
Document hook config APIs
abhinav-oai Apr 27, 2026
6d03af7
Refactor plugin hook loader test assertions
abhinav-oai Apr 27, 2026
06d95b2
Reduce hooks list PR to inventory only
abhinav-oai Apr 27, 2026
b1307c2
Add hook config write support
abhinav-oai Apr 27, 2026
a6df152
Simplify shared cwd config loading
abhinav-oai Apr 27, 2026
50ed9a4
Merge branch 'main' into dev/abhinav/plugin-hooks-discovery
abhinav-oai Apr 27, 2026
2c7a78c
Merge remote-tracking branch 'origin/dev/abhinav/plugin-hooks-discove…
abhinav-oai Apr 27, 2026
fbe0bf9
Merge branch 'main' into dev/abhinav/plugin-hooks-discovery
abhinav-oai Apr 27, 2026
1c82afb
Merge branch 'dev/abhinav/plugin-hooks-discovery' into dev/abhinav/ho…
abhinav-oai Apr 27, 2026
98efa54
Trim hooks list metadata
abhinav-oai Apr 28, 2026
85be136
Gate plugin hook loading
abhinav-oai Apr 28, 2026
e0ff2ad
Simplify hooks list plumbing
abhinav-oai Apr 28, 2026
2c4c2c1
Support plugin hook path substitution and data dirs
abhinav-oai Apr 28, 2026
ef0f68b
Merge remote-tracking branch 'origin/dev/abhinav/plugin-hooks-discove…
abhinav-oai Apr 28, 2026
0474550
Merge remote-tracking branch 'origin/dev/abhinav/hooks-list-config' i…
abhinav-oai Apr 28, 2026
6eb99d3
Expose managed hooks and reject user toggles
abhinav-oai Apr 28, 2026
5a23946
Refresh live hooks after config writes
abhinav-oai Apr 28, 2026
2f62157
Namespace hook keys by source
abhinav-oai Apr 28, 2026
bb897c1
Inline managed hook config validation
abhinav-oai Apr 28, 2026
c51a4dc
Clean up hook config model
abhinav-oai Apr 28, 2026
b9cd674
Fix plugin hook listing regressions
abhinav-oai Apr 28, 2026
32ad9b1
Store plugin hook mode on load outcome
abhinav-oai Apr 28, 2026
b1b7450
Pass plugin hook flag through helper
abhinav-oai Apr 28, 2026
d46139e
Fix argument comment lint
abhinav-oai Apr 28, 2026
2b48f64
Simplify hooks list plumbing
abhinav-oai Apr 28, 2026
425cd2d
Add hooks list plugin coverage
abhinav-oai Apr 28, 2026
ef403b2
update comment
abhinav-oai Apr 28, 2026
e92f08b
Merge remote-tracking branch 'origin/dev/abhinav/hooks-list-config' i…
abhinav-oai Apr 28, 2026
225940f
Simplify per-layer plugin loading
abhinav-oai Apr 28, 2026
95f931b
Clarify plugin hook cache key
abhinav-oai Apr 28, 2026
02faa3b
Merge remote-tracking branch 'origin/main' into dev/abhinav/hooks-lis…
abhinav-oai Apr 28, 2026
2bb1247
Keep hook dispatches on one snapshot
abhinav-oai Apr 28, 2026
2efc49e
Merge base branch updates
abhinav-oai Apr 28, 2026
bfc222a
Merge branch 'main' into dev/abhinav/hooks-list-config
abhinav-oai Apr 28, 2026
ce6097a
Use config batch write for hook state
abhinav-oai Apr 28, 2026
e0124f8
Keep managed hook sources non-configurable
abhinav-oai Apr 29, 2026
1e0b0bd
Merge branch 'main' into dev/abhinav/hooks-list-config
abhinav-oai Apr 29, 2026
5744c8b
Fix hook source CI failures
abhinav-oai Apr 29, 2026
e191851
Merge remote-tracking branch 'origin/main' into dev/abhinav/hooks-lis…
abhinav-oai Apr 29, 2026
b272bb1
Merge remote-tracking branch 'origin/dev/abhinav/hooks-list-config' i…
abhinav-oai Apr 29, 2026
e0e4f62
Omit managed hook config key paths
abhinav-oai Apr 29, 2026
dbe6192
Handle hook reload review feedback
abhinav-oai Apr 29, 2026
bec8ad2
Simplify hook configurability metadata
abhinav-oai Apr 29, 2026
afbfff2
Parse hook state entries independently
abhinav-oai Apr 29, 2026
19d0a93
Document hook builder helper
abhinav-oai Apr 29, 2026
9dd8214
Simplify hook discovery state
abhinav-oai Apr 29, 2026
e94e6a1
Simplify hook test fixtures
abhinav-oai Apr 29, 2026
ca8e5d6
Merge branch 'main' into dev/abhinav/hooks-list-config
abhinav-oai Apr 29, 2026
0b46a7b
Merge branch 'dev/abhinav/hooks-list-config' into dev/abhinav/hooks-c…
abhinav-oai Apr 29, 2026
e9dd1ff
Merge origin/main into dev/abhinav/hooks-config-write
abhinav-oai Apr 30, 2026
510fbaf
Align hooks/list config semantics with main
abhinav-oai Apr 30, 2026
1cfc065
Expose managed hooks in hooks list
abhinav-oai Apr 30, 2026
28475f0
Add e2e test for disabling loaded-session hooks
abhinav-oai Apr 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions codex-rs/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions codex-rs/analytics/src/analytics_client_tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1499,6 +1499,15 @@ fn hook_run_metadata_maps_sources_and_statuses() {
},
))
.expect("serialize project hook");
let cloud_requirements = serde_json::to_value(codex_hook_run_metadata(
&tracking,
HookRunFact {
event_name: HookEventName::Stop,
hook_source: HookSource::CloudRequirements,
status: HookRunStatus::Blocked,
},
))
.expect("serialize cloud requirements hook");
let unknown = serde_json::to_value(codex_hook_run_metadata(
&tracking,
HookRunFact {
Expand All @@ -1513,6 +1522,8 @@ fn hook_run_metadata_maps_sources_and_statuses() {
assert_eq!(system["status"], "completed");
assert_eq!(project["hook_source"], "project");
assert_eq!(project["status"], "blocked");
assert_eq!(cloud_requirements["hook_source"], "cloud_requirements");
assert_eq!(cloud_requirements["status"], "blocked");
assert_eq!(unknown["hook_source"], "unknown");
assert_eq!(unknown["status"], "failed");
}
Expand Down
1 change: 1 addition & 0 deletions codex-rs/analytics/src/events.rs
Original file line number Diff line number Diff line change
Expand Up @@ -685,6 +685,7 @@ fn analytics_hook_source(source: HookSource) -> &'static str {
HookSource::Mdm => "mdm",
HookSource::SessionFlags => "session_flags",
HookSource::Plugin => "plugin",
HookSource::CloudRequirements => "cloud_requirements",
HookSource::LegacyManagedConfigFile => "legacy_managed_config_file",
HookSource::LegacyManagedConfigMdm => "legacy_managed_config_mdm",
HookSource::Unknown => "unknown",
Expand Down
36 changes: 36 additions & 0 deletions codex-rs/app-server-protocol/schema/json/ClientRequest.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading