Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3262 commits
Select commit Hold shift + click to select a range
2eee97c
Merge pull request #4248 from Gentleman-Programming/fix/sdd-attempt-o…
Alan-TheGentleman Sep 6, 2026
d36e0f6
Merge pull request #4253 from Gentleman-Programming/fix/rar-windows-c…
Alan-TheGentleman Sep 6, 2026
3bb526d
fix(reviewtransaction): tolerate git before 2.38 and bound staging ou…
Alan-TheGentleman Sep 6, 2026
d12be2e
fix(review): memoize candidate inspection across the lens-context probe
Alan-TheGentleman Sep 6, 2026
e44c28f
fix(sdd-attempt): accept every sdd-status change name and derive sett…
Alan-TheGentleman Sep 6, 2026
7228883
fix(review): keep the untracked binding through correction and name a…
Alan-TheGentleman Sep 6, 2026
92bec6a
Merge pull request #4257 from Gentleman-Programming/fix/sdd-attempt-c…
Alan-TheGentleman Sep 6, 2026
8b5a1e0
Merge pull request #4258 from Gentleman-Programming/fix/review-status…
Alan-TheGentleman Sep 6, 2026
e63ddd9
Merge pull request #4260 from Gentleman-Programming/fix/review-correc…
Alan-TheGentleman Sep 6, 2026
8b2e140
test(bench): move the stale managed-assets journey to the STATUS-time…
Alan-TheGentleman Sep 6, 2026
638076a
Merge pull request #4259 from Gentleman-Programming/fix/sdd-attempt-c…
Alan-TheGentleman Sep 6, 2026
4ae775c
Merge pull request #4242 from Gentleman-Programming/fix/managed-asset…
Alan-TheGentleman Sep 6, 2026
1820a0c
fix(review): downgrade unverified causal findings per finding and fai…
Alan-TheGentleman Sep 6, 2026
469c2df
chore: merge origin/main into fix/review-admission-per-finding-causality
Alan-TheGentleman Sep 6, 2026
a4a8dba
fix(reviewtransaction): refuse immutable snapshots while a local graf…
Alan-TheGentleman Sep 6, 2026
17038d2
Merge pull request #4261 from Gentleman-Programming/fix/review-admiss…
Alan-TheGentleman Sep 6, 2026
9bbeebb
fix(review): resume committed-range acknowledgement and bind correcti…
Alan-TheGentleman Sep 6, 2026
6cc42b7
Merge pull request #4264 from Gentleman-Programming/fix/review-snapsh…
Alan-TheGentleman Sep 6, 2026
016fa53
Merge pull request #4265 from Gentleman-Programming/fix/review-status…
Alan-TheGentleman Sep 6, 2026
fde7819
fix(providercontractbundle): verify accepts bundles published before …
Alan-TheGentleman Sep 6, 2026
6aaf06a
Merge pull request #4268 from Gentleman-Programming/fix/review-admiss…
Alan-TheGentleman Sep 6, 2026
ccfd0c8
fix(tui): persist OpenCode SDD profiles and isolate default model ass…
Alan-TheGentleman Sep 6, 2026
99cd0a3
fix(review): type the unavailable inspection and unbind materialize f…
Alan-TheGentleman Sep 6, 2026
509c4f1
chore: merge origin/main into fix/review-gate-stash-and-admission
Alan-TheGentleman Sep 6, 2026
4a2c495
Merge pull request #4269 from Gentleman-Programming/fix/tui-opencode-…
Alan-TheGentleman Sep 6, 2026
c13195a
Merge pull request #4270 from Gentleman-Programming/fix/review-gate-s…
Alan-TheGentleman Sep 6, 2026
eca76a2
fix(review): decide validator inconclusiveness from a typed inspectio…
Alan-TheGentleman Sep 6, 2026
80ed7e2
Merge pull request #4273 from Gentleman-Programming/fix/4266-typed-va…
Alan-TheGentleman Sep 6, 2026
8d3ca23
feat(review): let a host declare a lens slot unachievable instead of …
Alan-TheGentleman Sep 6, 2026
8424afb
chore: merge origin/main into fix/3442-lens-slot-unachievable
Alan-TheGentleman Sep 6, 2026
09c2595
test(app): include capture-unachievable in the review facade usage line
Alan-TheGentleman Sep 6, 2026
84d36d4
Merge pull request #4274 from Gentleman-Programming/fix/3442-lens-slo…
Alan-TheGentleman Sep 6, 2026
8d45521
fix(engram): skip direct Claude MCP when plugin is enabled (#4278)
Alan-TheGentleman Sep 6, 2026
1004bdc
fix(review): retry transient Darwin lock creation (#4277)
Alan-TheGentleman Sep 6, 2026
02902e8
test(review): stabilize refuter deadline fixture (#4279)
Alan-TheGentleman Sep 6, 2026
1d660cc
fix(sdd): canonicalize OpenCode session preflight (#3676)
decode2 Sep 6, 2026
0aa545a
fix(installer): make Engram rollback path-independent (#4281)
Alan-TheGentleman Sep 6, 2026
9e96a57
fix(sdd): migrate preserved OpenCode preflight (#4294)
Alan-TheGentleman Sep 7, 2026
74115fd
feat(review): expose the candidate risk assessment as a read-only com…
Alan-TheGentleman Sep 7, 2026
ec8610f
docs(review): document the assess continuation without a literal elli…
Alan-TheGentleman Sep 7, 2026
8ef692e
Merge pull request #4297 from Gentleman-Programming/feat/4295-review-…
Alan-TheGentleman Sep 7, 2026
0040b53
feat(orchestrator): project the RDD-aware, risk-gated verification ga…
Alan-TheGentleman Sep 7, 2026
1d568d9
chore: merge origin/main to pick up review assess
Alan-TheGentleman Sep 7, 2026
2f9e7e8
Merge pull request #4298 from Gentleman-Programming/feat/4296-risk-ga…
Alan-TheGentleman Sep 7, 2026
d543908
fix(sdd): project canonical preflight into Claude workflow (#4299)
Alan-TheGentleman Sep 7, 2026
ef6eef6
fix(sdd): project canonical fallback preflight for first runtime coho…
Alan-TheGentleman Sep 7, 2026
d0e357b
fix(sdd): complete canonical fallback runtime projections (#4303)
Alan-TheGentleman Sep 7, 2026
132d7ca
fix(orchestrator): fall back to the risk tier when the native review …
Alan-TheGentleman Sep 7, 2026
5280a60
Merge pull request #4305 from Gentleman-Programming/fix/verification-…
Alan-TheGentleman Sep 7, 2026
4370a4a
fix(sdd): validate session carriers before owned writes (#4307)
Alan-TheGentleman Sep 7, 2026
a609f88
feat(telemetry): add the gentle-telemetry collector and deploy kit (#…
Alan-TheGentleman Sep 7, 2026
51dcedb
fix(opencode): select managed config authority
pablon Sep 7, 2026
ab89a4a
fix(opencode): add Gentle AI ownership marker to prevent JSON/JSONC d…
pablon Sep 7, 2026
87f910e
feat(telemetry): add opt-out usage telemetry client (#4317)
Alan-TheGentleman Sep 7, 2026
cb76444
fix(telemetry): make the collector installer's Grafana step work on a…
Alan-TheGentleman Sep 7, 2026
81cc8f3
fix(test): regenerate golden file with Gentle AI ownership marker
pablon Sep 7, 2026
3b3ca3d
fix(sdd): avoid unscoped task failure continuations (#4322)
Alan-TheGentleman Sep 7, 2026
7f5676a
fix(opencode): separate managed writes from layered runtime reads
Alan-TheGentleman Sep 7, 2026
bf1249a
Merge main preserving OpenCode ownership and task-result baselines
Alan-TheGentleman Sep 7, 2026
6b70061
Merge contributor golden update preserving author history
Alan-TheGentleman Sep 7, 2026
4e4470b
Merge pull request #4315 from pablon/fix/opencode-effective-config-se…
Alan-TheGentleman Sep 7, 2026
ecf6a56
fix(security): require explicit remote authorization in primary guidance
Alan-TheGentleman Sep 7, 2026
100b125
Merge main before remote authorization verification
Alan-TheGentleman Sep 7, 2026
3c48747
docs: refresh contributors from merged pull request history
ElCaaarnal Sep 7, 2026
6af4087
fix(security): preserve permission order and ask before remote commands
Alan-TheGentleman Sep 7, 2026
074c78f
test(security): require unconditional guidance in theme-only installs
Alan-TheGentleman Sep 7, 2026
33a4e5e
docs: state the full contributor ordering rule
ElCaaarnal Sep 7, 2026
0cbe89a
docs: mark contributor avatars as decorative images
ElCaaarnal Sep 7, 2026
57efc6b
Merge pull request #4328 from ElCaaarnal/docs/contributors-update
ElCaaarnal Sep 7, 2026
e465989
Merge pull request #4327 from Gentleman-Programming/fix/4324-remote-e…
Alan-TheGentleman Sep 8, 2026
ee857b0
fix(security): project remote authorization into managed executors
Alan-TheGentleman Sep 8, 2026
76026d9
Merge remote-tracking branch 'origin/main' into fix/4324-executor-rem…
Alan-TheGentleman Sep 8, 2026
f197fc6
Merge pull request #4344 from Gentleman-Programming/fix/4324-executor…
Alan-TheGentleman Sep 8, 2026
7ef6f50
docs(readme): update release facts for v2.7.0 (#4349)
Alan-TheGentleman Sep 8, 2026
ee24cc1
fix(ci): make the Windows Full Suite green again (#4351)
Alan-TheGentleman Sep 8, 2026
a12e132
fix(ci): run promotion GoReleaser steps with the promoted source iden…
Alan-TheGentleman Sep 8, 2026
76ce25b
test(telemetry): use the test binary as the sender recorder on every …
Alan-TheGentleman Sep 8, 2026
3415adf
fix(telemetry): bind the Apache vhost blocks to the address the host …
Alan-TheGentleman Sep 8, 2026
4816fcc
fix(telemetry): never count CI runs or dev builds (#4362)
Alan-TheGentleman Sep 8, 2026
c86693e
fix(telemetry): run the collector as a static system user (#4368)
Alan-TheGentleman Sep 8, 2026
d2e3443
fix(telemetry): make the Grafana dashboard live and render every pane…
Alan-TheGentleman Sep 8, 2026
38f4870
fix(review): route inconclusive refutation into bounded correction an…
Clowraider Sep 8, 2026
acc6246
feat(tui): explain and configure RDD during installation (#4384)
decode2 Sep 9, 2026
4770fb6
feat(system): add Fedora Silverblue rpm-ostree support (#4092)
masch Sep 9, 2026
5c18484
feat(sdd): declare exact Pi research evidence grants (#4420)
Alan-TheGentleman Sep 9, 2026
8cad87d
fix(review): enforce escalation evidence parity
dnlrsls Sep 10, 2026
c1c5882
fix(review): explain consent with concise risk-based copy (#4418)
decode2 Sep 10, 2026
579eb2e
fix(review): preserve escalation across recovery status
dnlrsls Sep 10, 2026
7d3eec9
Merge pull request #4383 from Clowraider/fix/refuter-inconclusive-esc…
dnlrsls Sep 10, 2026
9b9b389
fix(review): anchor managed-assets continuation to the invoking execu…
FranklinF25 Sep 10, 2026
b4eced8
fix(review): use one exact platform-specific shell encoding for the c…
FranklinF25 Sep 10, 2026
d3fee66
test(review): assert continuation convergence end to end
FranklinF25 Sep 10, 2026
bd46c3f
test(review): execute the emitted continuation through real CLI dispatch
FranklinF25 Sep 10, 2026
00e306a
test(review): decode POSIX escape splices when splitting the continua…
FranklinF25 Sep 10, 2026
9a0391f
test(review): preserve literal backslashes when splitting the continu…
FranklinF25 Sep 10, 2026
1911047
fix(engram): configure Codex shared files without CLI (#4404)
decode2 Sep 10, 2026
a1e11cc
fix(review): keep the anchored continuation honest across consumers
FranklinF25 Sep 10, 2026
4e47e44
chore(bench): restore the full-corpus results.json
FranklinF25 Sep 10, 2026
f3b9a67
fix(sdd): unblock pending apply with historical verification (#4442)
decode2 Sep 10, 2026
5f1815f
fix(review): preserve selected untracked correction scope (#4445)
Alan-TheGentleman Sep 10, 2026
b8b11cd
feat(collector): store runtime observations
Alan-TheGentleman Sep 10, 2026
d0ee4f4
feat(telemetry): add anonymous runtime aggregates
Alan-TheGentleman Sep 10, 2026
a9cab7d
feat(cli): send one-shot runtime telemetry
Alan-TheGentleman Sep 10, 2026
027596d
chore: track runtime telemetry chain
Alan-TheGentleman Sep 10, 2026
9ca4d83
style(collector): format dashboard tests
Alan-TheGentleman Sep 10, 2026
0bec567
fix(filemerge): preserve nested TOML keys (#2035)
dnlrsls Sep 10, 2026
266cf32
chore(telemetry): record parser callback reachability
Alan-TheGentleman Sep 10, 2026
bb158fe
merge: update telemetry contract
Alan-TheGentleman Sep 10, 2026
a39bd99
fix(telemetry): accept Windows managed file modes
Alan-TheGentleman Sep 10, 2026
f5a4ea7
chore(telemetry): record reconciler reachability
Alan-TheGentleman Sep 10, 2026
f7d4bd2
merge: update telemetry delivery
Alan-TheGentleman Sep 10, 2026
8db5714
test(telemetry): defer collector compatibility
Alan-TheGentleman Sep 10, 2026
ca968df
merge: update telemetry delivery tests
Alan-TheGentleman Sep 10, 2026
4a2cdd3
test(collector): verify runtime sender compatibility
Alan-TheGentleman Sep 10, 2026
53d75bb
Merge pull request #4450 from Gentleman-Programming/feat/telemetry-ru…
Alan-TheGentleman Sep 10, 2026
91dfba1
Merge pull request #4449 from Gentleman-Programming/feat/telemetry-ru…
Alan-TheGentleman Sep 10, 2026
709983b
fix(review): harden managed-assets continuation validation
dnlrsls Sep 10, 2026
7796415
Merge pull request #4448 from Gentleman-Programming/feat/telemetry-ru…
Alan-TheGentleman Sep 10, 2026
4cd52fd
merge: update telemetry tracker onto current main
Alan-TheGentleman Sep 10, 2026
539a731
Merge pull request #4447 from Gentleman-Programming/feat/telemetry-ru…
Alan-TheGentleman Sep 10, 2026
ac0d566
fix(review): declare continuation validation refusals
dnlrsls Sep 10, 2026
d86b1d9
Merge remote-tracking branch 'origin/main' into fix/managed-assets-co…
dnlrsls Sep 10, 2026
e200f7d
fix(sdd): refuse unsatisfiable remediation acquire (#4454)
Alan-TheGentleman Sep 10, 2026
dcb2d90
fix(sdd): add audited supersede transition
sinapsecl-dev Sep 10, 2026
18689d5
fix(uninstall): scope opencode-gentle-logo removal to the OpenCode ag…
danielgap Sep 10, 2026
3182919
fix(bench): reject multiline managed-assets continuations
dnlrsls Sep 10, 2026
d8ff2e2
feat(telemetry): redesign usage dashboard around adoption and runtime…
Alan-TheGentleman Sep 10, 2026
dd4f2bb
fix(telemetry): align runtime agent_class vocabulary with installed a…
Alan-TheGentleman Sep 10, 2026
ac3128d
merge: telemetry runtime agent registry
Alan-TheGentleman Sep 10, 2026
dee40e3
merge: telemetry usage dashboard
Alan-TheGentleman Sep 10, 2026
3b5237d
merge: dashboard duration fix
Alan-TheGentleman Sep 10, 2026
49c4329
fix(telemetry): report measured duration by kind on the usage dashboard
Alan-TheGentleman Sep 10, 2026
2bd8c0d
merge: opencode runtime attribution
Alan-TheGentleman Sep 10, 2026
a08ce27
feat(telemetry): attribute OpenCode runtime rows to the producing agent
Alan-TheGentleman Sep 10, 2026
103df7f
fix(telemetry): keep pi-only subagents in the runtime agent vocabulary
Alan-TheGentleman Sep 10, 2026
08efe8b
merge: pi-only subagents in runtime vocabulary
Alan-TheGentleman Sep 10, 2026
22159d2
fix(opencode): keep SDD phase commands in primary orchestrator sessio…
ardelperal Sep 10, 2026
58a57d5
fix(sdd): require distinct scope for supersede
sinapsecl-dev Sep 10, 2026
c65201b
merge: update supersede transition onto current main
Alan-TheGentleman Sep 10, 2026
6c151c9
test(bench): use contract-valid agent flag
dnlrsls Sep 10, 2026
420bd5b
fix(telemetry): polish usage dashboard layout, units and host bars
Alan-TheGentleman Sep 10, 2026
f7540e9
merge: dashboard polish
Alan-TheGentleman Sep 10, 2026
662fe5f
fix(sdd): carry supersede into compact admission
Alan-TheGentleman Sep 10, 2026
8b2a3ae
fix(review): expose admitted results before burn (#4458)
Alan-TheGentleman Sep 10, 2026
4cfecda
feat(telemetry): add subagent, popularity, active-user and live-activ…
Alan-TheGentleman Sep 10, 2026
547d531
merge: dashboard subagent and live sections
Alan-TheGentleman Sep 10, 2026
0807afe
merge: claude code runtime producer
Alan-TheGentleman Sep 10, 2026
7ff5575
feat(telemetry): send Claude Code subagent runtime observations
Alan-TheGentleman Sep 10, 2026
1b0c037
merge: refresh supersede transition onto current main
Alan-TheGentleman Sep 10, 2026
87cf7bc
Merge pull request #4438 from FranklinF25/fix/managed-assets-continua…
dnlrsls Sep 10, 2026
b9787ec
fix(telemetry): accept approved prior plugin digests when upgrading t…
Alan-TheGentleman Sep 10, 2026
3e93906
merge: opencode plugin upgrade ownership
Alan-TheGentleman Sep 10, 2026
f7572b5
feat(telemetry): send Codex subagent runtime observations
Alan-TheGentleman Sep 10, 2026
f2dfd4a
fix(telemetry): map Claude model aliases and report subagent usage fr…
Alan-TheGentleman Sep 10, 2026
5ce1bab
fix(telemetry): apply configured OpenCode effort to every known agent
Alan-TheGentleman Sep 10, 2026
b0fe284
Merge pull request #4456 from sinapsecl-dev/fix/sdd-nonterminal-remed…
Alan-TheGentleman Sep 10, 2026
54530dc
merge: codex runtime producer
Alan-TheGentleman Sep 10, 2026
7ecaaeb
merge: claude alias and usage fixes
Alan-TheGentleman Sep 10, 2026
abe4666
merge: opencode effort lookup fix
Alan-TheGentleman Sep 10, 2026
f8a721a
fix(telemetry): attribute Codex subagents from the thread spawn agent…
Alan-TheGentleman Sep 10, 2026
36c1d28
merge: codex agent attribution
Alan-TheGentleman Sep 10, 2026
7457c7d
fix(telemetry): read hook stdin until one JSON object instead of EOF
Alan-TheGentleman Sep 10, 2026
f3246a6
merge: hook stdin reader
Alan-TheGentleman Sep 10, 2026
df21d32
fix(codex): use valid underscore task names in SDD orchestrator (#4464)
decode2 Sep 11, 2026
88451a9
fix(opencode): fail closed on unrepresentable consent choices
dnlrsls Sep 11, 2026
8362d64
fix(opencode): explicitly set closed question controls
dnlrsls Sep 11, 2026
48d956b
fix(opencode): migrate preserved consent route
dnlrsls Sep 11, 2026
a888c9a
Merge pull request #4472 from dnlrsls/fix/opencode-rdd-consent-choice
dnlrsls Sep 11, 2026
7b52f3f
test(telemetry): neutralize CI vetoes in hook bridge tests and annota…
Alan-TheGentleman Sep 11, 2026
350f315
Merge pull request #4478 from Gentleman-Programming/feat/telemetry-ru…
Alan-TheGentleman Sep 11, 2026
f5a1da4
fix(telemetry): give the Grafana SQLite datasource a busy timeout
Alan-TheGentleman Sep 11, 2026
3050dc4
Merge pull request #4483 from Gentleman-Programming/fix/telemetry-gra…
Alan-TheGentleman Sep 11, 2026
0b297dd
fix(pi): report retained resources after uninstall (#4485)
Alan-TheGentleman Sep 11, 2026
9099228
fix(engram): clarify ambiguous_project recovery distinction in protocol
Clowraider Sep 4, 2026
59e6705
fix(engram): exclude project from slim session-start recovery and str…
Clowraider Sep 4, 2026
d81cfc8
fix(pi): route native review roles through persisted assignments (#4486)
Alan-TheGentleman Sep 11, 2026
a750258
fix(windows): prevent consoles for background Git processes (#4476)
decode2 Sep 11, 2026
e92748f
fix(sdd): keep informational edit-root notes out of blockedReasons
Alan-TheGentleman Sep 11, 2026
809df30
docs: restructure README as a product overview
ElCaaarnal Sep 9, 2026
d3b29ff
docs: add the Windows install command and make the README responsive
ElCaaarnal Sep 10, 2026
2bd739a
docs: stack the feature grid into a single column
ElCaaarnal Sep 10, 2026
528db99
Revert "docs: stack the feature grid into a single column"
ElCaaarnal Sep 10, 2026
0c7448f
docs: open the hero slot and correct false Pi and agent claims
ElCaaarnal Sep 10, 2026
fa3718d
docs: add the 16-agents feature image
ElCaaarnal Sep 10, 2026
b3a7825
docs: add the Gentle-Shell feature image
ElCaaarnal Sep 10, 2026
504d139
docs: add the SDD feature image
ElCaaarnal Sep 10, 2026
dd97132
docs: add the deterministic-by-design feature image
ElCaaarnal Sep 10, 2026
68e8f04
docs: normalize the feature images to one aspect ratio
ElCaaarnal Sep 10, 2026
1275644
docs: show the finished SDD cycle instead of only its planning
ElCaaarnal Sep 10, 2026
47accc6
docs: add the RDD feature image
ElCaaarnal Sep 10, 2026
1610eb2
docs: add the Engram feature image β€” the grid is complete
ElCaaarnal Sep 10, 2026
ff8806b
docs: put each feature image at the top of its cell
ElCaaarnal Sep 10, 2026
6aca776
docs(readme): clarify workflows and Pi experience
ElCaaarnal Sep 10, 2026
a79b0bd
docs(readme): sharpen feature value proposition
ElCaaarnal Sep 10, 2026
566d8f9
docs(readme): simplify Gentle Shell positioning
ElCaaarnal Sep 10, 2026
97f2f13
Update SDD process steps in README
ElCaaarnal Sep 10, 2026
11fc736
docs(readme): replace SDD and RDD screenshots with brand diagrams
ElCaaarnal Sep 11, 2026
01ea9bc
docs(readme): replace the Engram screenshot with a brand diagram
ElCaaarnal Sep 11, 2026
0eaa19e
docs(readme): replace the deterministic screenshot with a brand diagram
ElCaaarnal Sep 11, 2026
5e836ea
docs(assets): drop the four screenshots the diagrams replaced
ElCaaarnal Sep 11, 2026
801a690
docs(consulting): give the engagement pitch a destination
ElCaaarnal Sep 11, 2026
d521b5e
Merge pull request #4500 from Gentleman-Programming/fix/4372-note-not…
Alan-TheGentleman Sep 11, 2026
57e0c05
fix(review): name the truthful stale-target cause from self-describin…
Alan-TheGentleman Sep 11, 2026
e4a1824
fix(review): publish the evidence token on STATUS fresh-target START …
Alan-TheGentleman Sep 11, 2026
287aaa8
fix(review): keep the stop hook quiet while a consent answer waits ou…
Alan-TheGentleman Sep 11, 2026
8e564b4
Merge pull request #4514 from Gentleman-Programming/fix/4494-self-des…
Alan-TheGentleman Sep 12, 2026
5409330
fix(review): offer the committed-range START for an empty workspace c…
Alan-TheGentleman Sep 12, 2026
3a9fe89
Merge pull request #4515 from Gentleman-Programming/fix/4412-derived-…
Alan-TheGentleman Sep 12, 2026
01e6fac
fix(sdd): separate status inspection from consent preparation (#4505)
Alan-TheGentleman Sep 12, 2026
2304e66
fix(pi): retire legacy prompt blocks across lifecycle
Alan-TheGentleman Sep 12, 2026
93a2c15
fix(sdd): make research persistence orchestrator-owned
Alan-TheGentleman Sep 12, 2026
9faa282
Merge pull request #4518 from Gentleman-Programming/fix/3508-pi-legac…
Alan-TheGentleman Sep 12, 2026
21d9ffa
Merge pull request #4519 from Gentleman-Programming/fix/4513-research…
Alan-TheGentleman Sep 12, 2026
433e5a4
fix(sdd): align research ownership across adapters
Alan-TheGentleman Sep 12, 2026
4008a79
Merge pull request #4522 from Gentleman-Programming/fix/4513-adapter-…
Alan-TheGentleman Sep 12, 2026
2470ec3
Merge pull request #4511 from ElCaaarnal/docs/readme-structure
ElCaaarnal Sep 12, 2026
cfc87f6
fix(sdd): enforce runtime preflight authority
Alan-TheGentleman Sep 13, 2026
7c1e509
fix(engram): require authoritative runtime session identity
dnlrsls Sep 13, 2026
a71939b
fix(engram): refresh authoritative session goldens
dnlrsls Sep 13, 2026
9e08dc4
Merge main into feat/engram-session-id-propagation
dnlrsls Sep 13, 2026
9d3dc29
feat(community-tools): add RTK source contract
dnlrsls Sep 13, 2026
3132e4f
feat(community-tools): add safe RTK acquisition
dnlrsls Sep 13, 2026
078f314
Merge pull request #4001 from alexandervazquez98/feat/engram-session-…
dnlrsls Sep 13, 2026
1e427a7
fix(community-tools): avoid runtime identity guard collision
dnlrsls Sep 13, 2026
2246591
Merge pull request #4531 from Gentleman-Programming/fix/sdd-preflight…
Alan-TheGentleman Sep 13, 2026
97b6ce6
test(windows): make full-suite fixtures portable
Alan-TheGentleman Sep 13, 2026
0cdd755
fix(windows): stabilize consent marker publication
Alan-TheGentleman Sep 13, 2026
0eece69
test(windows): normalize consent snapshot paths
Alan-TheGentleman Sep 13, 2026
890ca94
Merge pull request #4535 from Gentleman-Programming/fix/windows-full-…
Alan-TheGentleman Sep 13, 2026
f927da7
fix(review): classify OpenCode reviewer task outcomes explicitly
Legnatbird Sep 13, 2026
211a256
fix(telemetry): attribute runtime models by public family pattern
Alan-TheGentleman Sep 13, 2026
255212f
fix(telemetry): document family-prefix pass-through and drop generic …
Alan-TheGentleman Sep 13, 2026
77a3a23
fix(telemetry): make the model id pattern unambiguous and accept revi…
Alan-TheGentleman Sep 13, 2026
7aad6a5
Merge pull request #4537 from Gentleman-Programming/fix/telemetry-gen…
Alan-TheGentleman Sep 13, 2026
9ffd9be
fix(telemetry): report Claude Code Stop usage with idempotent delivery
Alan-TheGentleman Sep 13, 2026
a3d11a8
Merge pull request #4540 from Gentleman-Programming/fix/telemetry-cla…
Alan-TheGentleman Sep 13, 2026
0bbf049
test(community-tools): baseline RTK acquisition helpers
dnlrsls Sep 13, 2026
25c1dc7
fix(review): harden OpenCode task wrapper parsing to the shipped grammar
Legnatbird Sep 13, 2026
7a45a34
fix(opencode): keep the SDD preflight on the question tool with runti…
Alan-TheGentleman Sep 13, 2026
e8afa4c
test(opencode): exercise the SDD preflight plugin through bun
Alan-TheGentleman Sep 13, 2026
131a328
Merge pull request #4530 from dnlrsls/feat/rtk-community-tool-foundation
dnlrsls Sep 13, 2026
e3f53de
Merge pull request #4550 from Gentleman-Programming/fix/opencode-pref…
Alan-TheGentleman Sep 13, 2026
a160daf
fix(review): require complete Task frames before reporting host states
Legnatbird Sep 13, 2026
bae15d4
fix(review): admit the complete no-result frame for non-completed states
Legnatbird Sep 13, 2026
266574b
Merge pull request #4179 from Clowraider/fix/engram-session-start-rec…
decode2 Sep 13, 2026
f2b6370
Merge pull request #4545 from Legnatbird/fix/3477-opencode-reviewer-r…
dnlrsls Sep 14, 2026
9aa96bb
fix(sdd): verify generated research projections against the capabilit…
Legnatbird Sep 14, 2026
1db8f95
fix(sdd): harden research projection extraction per review findings
Legnatbird Sep 14, 2026
b4bbd62
chore(ci): baseline test-exercised research authority APIs
Legnatbird Sep 14, 2026
b11eaff
fix(sdd): close research projection verification gaps from review
Legnatbird Sep 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .claude/scheduled_tasks.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"sessionId":"19f52d59-7d48-41cc-91fb-c81af53d251a","pid":89965,"acquiredAt":1776005010875}
268 changes: 268 additions & 0 deletions .deadcode-baseline.txt

Large diffs are not rendered by default.

Binary file added .engram/chunks/1ad74530.jsonl.gz
Binary file not shown.
Binary file added .engram/chunks/aaf7a13f.jsonl.gz
Binary file not shown.
Binary file added .engram/chunks/be4ddc87.jsonl.gz
Binary file not shown.
Binary file added .engram/chunks/d21f9e56.jsonl.gz
Binary file not shown.
Binary file added .engram/chunks/fd2ecf8b.jsonl.gz
Binary file not shown.
3 changes: 3 additions & 0 deletions .engram/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"project_name": "gentle-ai"
}
45 changes: 45 additions & 0 deletions .engram/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"version": 1,
"chunks": [
{
"id": "1ad74530",
"created_by": "alanbuscaglia",
"created_at": "2026-03-27T11:12:50Z",
"sessions": 165,
"memories": 408,
"prompts": 33
},
{
"id": "fd2ecf8b",
"created_by": "alanbuscaglia",
"created_at": "2026-03-27T22:09:55Z",
"sessions": 0,
"memories": 8,
"prompts": 1
},
{
"id": "be4ddc87",
"created_by": "alanbuscaglia",
"created_at": "2026-03-28T22:27:54Z",
"sessions": 1,
"memories": 14,
"prompts": 1
},
{
"id": "aaf7a13f",
"created_by": "alanbuscaglia",
"created_at": "2026-04-01T22:19:17Z",
"sessions": 7,
"memories": 54,
"prompts": 151
},
{
"id": "d21f9e56",
"created_by": "alanbuscaglia",
"created_at": "2026-05-04T21:43:16Z",
"sessions": 74,
"memories": 278,
"prompts": 395
}
]
}
11 changes: 11 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Normalize line endings to LF for all text files
* text=auto eol=lf

# Explicit overrides for binary files
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.zip binary
*.tar.gz binary
40 changes: 40 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,19 +39,46 @@ What kind of change does this PR introduce?

---

## πŸ€– AI Assistance

Select exactly one option. Do not check both options.

- [ ] **None** β€” No material AI assistance was used.
- [ ] **Material assistance used** β€” Complete all applicable declaration fields below.

**Tool/model (if known):**

**Material scope:**

**Verification performed:**

Trivial formatting, spelling, minor autocomplete, search/navigation, and trivial, non-substantive mechanical transformations do not need to be itemized. See [AI_POLICY.md](../AI_POLICY.md) for the canonical policy.

---

## πŸ§ͺ Test Plan

**Unit Tests**
```bash
go test ./...
```

**Go Format**
```bash
go run ./internal/gofmtcheck
```

**E2E Tests** (Docker required)
```bash
cd e2e && ./docker-test.sh
```

**Benchmark Validation**

See the [benchmark guide](../bench/README.md). Benchmark validation applies to review-lifecycle, gates, recovery, delivery, benchmark implementation/corpus/classifier, and benchmark-claim changes. For unrelated changes, explain `N/A` in the Test Plan.

- [ ] Unit tests pass (`go test ./...`)
- [ ] Go format passes (`go run ./internal/gofmtcheck`)
- [ ] E2E tests pass (`cd e2e && ./docker-test.sh`)
- [ ] Manually tested locally

Expand All @@ -65,26 +92,39 @@ The following checks run automatically on this PR:

| Check | Status | Description |
|-------|--------|-------------|
| Check PR Cognitive Load | ⏳ | PR should stay within 400 changed lines (`additions + deletions`) or use `size:exception` |
| Check Issue Reference | ⏳ | PR body must contain `Closes/Fixes/Resolves #N` |
| Check Issue Has `status:approved` | ⏳ | Linked issue must have been approved before work began |
| Check PR Has `type:*` Label | ⏳ | Exactly one `type:*` label must be applied |
| Unit Tests | ⏳ | `go test ./...` must pass |
| Go Format | ⏳ | `go run ./internal/gofmtcheck` must pass |
| E2E Tests | ⏳ | `cd e2e && ./docker-test.sh` must pass |

---

## βœ… Contributor Checklist

- [ ] PR is linked to an issue with `status:approved`
- [ ] PR stays within 400 changed lines, or I have requested/obtained maintainer-applied `size:exception` with rationale documented
- [ ] I have added the appropriate `type:*` label to this PR
- [ ] Unit tests pass (`go test ./...`)
- [ ] Go format passes (`go run ./internal/gofmtcheck`)
- [ ] E2E tests pass (`cd e2e && ./docker-test.sh`)
- [ ] Benchmark validation completed, or this change is not applicable to the benchmark (explain why in the Test Plan).
- [ ] I have updated documentation if necessary
- [ ] My commits follow [Conventional Commits](https://www.conventionalcommits.org/) format
- [ ] I understand, reviewed, and take responsibility for the complete submission
- [ ] I selected exactly one AI-assistance option and, if material assistance was used, completed all applicable declaration fields
- [ ] My commits do not include `Co-Authored-By` trailers

---

## πŸ’¬ Notes for Reviewers

<!-- Optional: anything you want reviewers to pay special attention to. -->

For production Go changes in `internal/cli`, `internal/reviewtransaction`, or `internal/sddstatus`:

- [ ] Identify any qualifying security, integrity, admission, repair, or governance guard and challenge its legitimate input population against real-world evidence.
- [ ] Confirm its `guard:population` direction and claim are adjacent and accurate, and that `.guard-population-baseline.txt` changed only when the guard contract intentionally changed.
- [ ] Do not treat a passing declaration/registry check as proof that no qualifying guard was omitted or that the population claim is semantically complete.
28 changes: 28 additions & 0 deletions .github/scripts/parse-linked-issues.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
'use strict';

// Shared parser for closing issue references in PR bodies.
// Single seam used by every pr-check.yml gate that reads linked issues:
// both check-issue-reference and check-issue-approved consume this parse.

const CLOSING_REFERENCE_PATTERN = /(?:closes|fixes|resolves)\s+#(\d+)/gi;

// An HTML comment runs from `<!--` to the next `-->`, or to the end of the
// body when unclosed. The unclosed case matches how GitHub renders Markdown
// (the HTML spec closes an open comment at end of input), so everything after
// an unclosed `<!--` is invisible to reviewers and must not count.
const HTML_COMMENT_PATTERN = /<!--[\s\S]*?(?:-->|$)/g;

// Removes HTML comments so only reviewer-visible text remains.
function stripHtmlComments(body) {
return (body || '').replace(HTML_COMMENT_PATTERN, '');
}

// Returns the linked issue numbers referenced by closing keywords in the
// visible (non-comment) PR body, in order of first appearance.
function parseLinkedIssues(body) {
const visible = stripHtmlComments(body);
const matches = [...visible.matchAll(CLOSING_REFERENCE_PATTERN)];
return matches.map((m) => parseInt(m[1], 10));
}

module.exports = { parseLinkedIssues, stripHtmlComments };
61 changes: 61 additions & 0 deletions .github/scripts/parse-linked-issues.test.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
'use strict';

const { test } = require('node:test');
const assert = require('node:assert/strict');

const { parseLinkedIssues } = require('./parse-linked-issues.cjs');

test('a closing reference that only appears inside an HTML comment is not a linked issue', () => {
const body = [
'## Summary',
'',
'<!--',
'Link the approved issue this PR resolves, e.g.:',
'Closes #42',
'-->',
'',
'Some visible description without any reference.',
].join('\n');

assert.deepEqual(parseLinkedIssues(body), []);
});

test('a real reference outside a comment plus the template example inside one finds exactly the real one', () => {
const body = [
'Closes #1770',
'',
'<!--',
'Example: Closes #42',
'-->',
].join('\n');

assert.deepEqual(parseLinkedIssues(body), [1770]);
});

test('a single-line HTML comment is also ignored', () => {
const body = 'Fixes #7\n<!-- Closes #42 --> trailing visible text';

assert.deepEqual(parseLinkedIssues(body), [7]);
});

test('multiple visible closing references are all preserved, in order', () => {
const body = 'Closes #10\nFixes #11\nResolves #12';

assert.deepEqual(parseLinkedIssues(body), [10, 11, 12]);
});

// Documented behavior: an unclosed `<!--` hides everything through the end of
// the body. This matches how GitHub renders Markdown (the HTML spec closes an
// open comment at end of input), so a reference after an unclosed `<!--` is
// invisible to reviewers and must not count as a linked issue.
test('an unclosed HTML comment hides the rest of the body, matching rendered output', () => {
const body = 'Closes #1770\n<!-- forgot to close this comment\nCloses #42';

assert.deepEqual(parseLinkedIssues(body), [1770]);
});

test('an empty or missing body yields no linked issues', () => {
assert.deepEqual(parseLinkedIssues(''), []);
assert.deepEqual(parseLinkedIssues(null), []);
assert.deepEqual(parseLinkedIssues(undefined), []);
});
Loading
Loading