-
Notifications
You must be signed in to change notification settings - Fork 2
feat: knowledge graph creation, GMA, extraction jobs, and maintenance pipeline #737
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 62 commits
Commits
Show all changes
181 commits
Select commit
Hold shift + click to select a range
48e428b
manage kg specs
aredenba-rh fcdbe4d
minor edits to specs; github issues created
aredenba-rh d48c322
feat(management): add workspace mode lifecycle (#643) (#680)
aredenba-rh 75d58e5
feat(management): expose knowledge graph workspace status projection …
aredenba-rh 9cee053
feat(management): implement actionable bootstrap readiness validation…
aredenba-rh c305a44
feat(management): add workspace validate and transition commands (#683)
aredenba-rh 584c3ef
feat(management): persist mutation log run metadata on sync runs (#684)
aredenba-rh 60ce34f
feat(graph): wire mutation apply metrics into lifecycle events (#685)
aredenba-rh d50c238
test(extraction): add bounded-context architecture guardrails scaffol…
aredenba-rh 9f91318
feat(extraction): add scoped agent session lifecycle service (#687)
aredenba-rh 56b9ba7
feat(extraction): add skill resolution engine with KG overrides (#688)
aredenba-rh a75608d
feat(extraction): implement clear-chat reset with session archival (#…
aredenba-rh a73fa36
feat(management): add data-source commit reference projection (#690)
aredenba-rh 296aff3
feat(ingestion): resolve baseline and tracked head at sync start (#691)
aredenba-rh 8ebe204
feat(ingestion): short-circuit sync when no new commit exists (#692)
aredenba-rh 3c71c93
feat(management): add baseline-vs-head diff summary endpoint (#693)
aredenba-rh 2dc62ca
feat(dev-ui): add collapsed diff-summary panel for data sources (#694)
aredenba-rh 5e7a5fd
feat(management): add commit-refresh actions for data sources (#675) …
aredenba-rh 6b11bbc
chore(skills): add parallel blocker-question protocol (#696)
aredenba-rh 9d1e9eb
feat(extraction): ship mode-specific prompt bundles and skill packs (…
aredenba-rh 3f1da32
feat(extraction): add bootstrap capabilities intake dual-path flow (#…
aredenba-rh b11d559
feat(extraction): package workload runtime context and skills mounts …
aredenba-rh faca1c1
feat(dev-ui): enrich schema inspector with type metadata badges (#670…
aredenba-rh 6b6d32e
feat(management): add extraction run-control APIs for sync lifecycle …
aredenba-rh 9282149
feat(dev-ui): add extraction telemetry dashboard metrics (#672) (#702)
aredenba-rh 94bac2d
feat(management): add KG maintenance scheduling and run history (#703)
aredenba-rh fc5b7a2
feat(dev-ui): add manual mutation assistant and live graph inspector …
aredenba-rh 565d100
feat(dev-ui): switch KG row actions to manage/query/delete (#705)
aredenba-rh 4bf50f8
feat(dev-ui): add mode-aware knowledge graph manage workspace page (#…
aredenba-rh 8a258cf
feat(dev-ui): add conversation-first extraction workspace tabs (#707)
aredenba-rh 4afcea0
feat(management): add KG-scoped mutation log browser data and UI (#708)
aredenba-rh c3c7dbe
feat(ui): add bootstrap progress checklist and diagnostics panel (#66…
aredenba-rh b005da7
test(ui): lock commit-hash status cues on data source cards (#664) (#…
aredenba-rh d669483
test(ui): lock maintenance readiness cues to commit-diff semantics (#…
aredenba-rh 47f78e8
feat(ui): add shared conversation panel with session resume and clear…
aredenba-rh 6e961de
feat(workflow): add section-wave subagent orchestration prompts (#713)
aredenba-rh 1f6f8f3
feat(extraction): add sticky runtime and ephemeral worker adapters (#…
aredenba-rh 581d7d1
harden ingestion credential handling and add end-to-end flow validati…
aredenba-rh cbe4485
test-integration fixes
aredenba-rh 9842046
kg-manage-experience
aredenba-rh 200d1b4
feat(dev-ui): add KG manage workspace overview parity (#722) (#726)
aredenba-rh b5af3b1
feat(extraction): wire runtime credential injection for extraction wo…
aredenba-rh 1d9530c
feat(extraction): add session history views with run-level metrics re…
aredenba-rh cef63a1
feat(management): persist canonical schema via graph type definitions…
aredenba-rh bb655db
feat(dev-ui): KG Manage accessibility and state contracts (#725) (#729)
aredenba-rh bd226ec
feat(extraction): add docker/podman-backed workload runtime adapters …
aredenba-rh c77aa8a
feat(manage-ui): harden MutationLogs step with scoped ordering and pr…
aredenba-rh 55c8e1e
feat(manage-ui): unify graph management operations in-place (#720)
aredenba-rh 9f81a7c
feat(management): add per-run mutation entry previews (#721)
aredenba-rh 6867e0a
feat(extraction): wire outbox workers to runtime factory adapters (#716)
aredenba-rh dcdc1a1
feat(management): enforce graph-native canonical schema source (#718)
aredenba-rh 15045ec
feat(data-sources): align onboarding with k-extract add-another flow …
aredenba-rh 5cae3a9
fix(data-sources): modernize KG selector styling in add-source dialog
aredenba-rh bdeabf7
feat(ui): add KG-scoped data source onboarding flow
aredenba-rh cbc709e
feat(sync): add ingest-only pipeline and ingested status for KG onboa…
aredenba-rh 781fa38
fix(ingestion): unblock SyncStarted handler shadowed import crash
aredenba-rh 1c21207
feat(ui): align KG data sources page with k-extract phase1 layout
aredenba-rh e0001b8
feat(data-sources): persist prepare metadata and bulk actions on KG page
aredenba-rh 3012df5
feat(ui): align KG manage workspace with k-extract project hub
aredenba-rh 81e0595
docs(extraction): sticky session chat specs (#738) (#743)
aredenba-rh 95cb9ad
feat(extraction): add streaming chat turn service and NDJSON endpoint…
aredenba-rh 8dfb95c
feat(ui): wire Graph Management Assistant to streaming chat API (#745)
aredenba-rh 687004b
feat(extraction): add Claude Agent SDK sticky session runtime (#742) …
aredenba-rh e747966
feat(extraction): use Vertex AI and proactive runtime warmup
aredenba-rh 7c9c767
fix(iam): pin stable Keycloak user IDs for dev alice and bob
aredenba-rh bbd91e9
fix(extraction): enable Vertex chat in sticky containers with host ADC
aredenba-rh 2f0b6f5
refactor(ui): rename workspace hub Design phase to Graph Management
aredenba-rh 9f7a04e
repair env/api.env
aredenba-rh e6a9305
fix(extraction): materialize JobPackages into sticky assistant workspace
aredenba-rh 4dde3a7
fix(ingestion): report total branch files instead of changeset size
aredenba-rh 8df2591
fix(ui): keep data sources table visible during sync polling
aredenba-rh 85e5716
fix(ui): constrain KG manage workspace to max-w-7xl
aredenba-rh a5daa9c
feat(management): detect missing prepared JobPackage archives
aredenba-rh be91d2a
fix(extraction): reuse healthy sticky runtime and defer chat persistence
aredenba-rh d478495
refactor(dev-ui): align graph management artifacts panel with k-extra…
aredenba-rh 2072434
feat(agent-runtime): stream intermediate thinking lines during SDK turns
aredenba-rh cfad11f
fix(extraction): materialize non-empty prepared sources for agent wor…
aredenba-rh 444c2eb
perf(ingestion): parallelize prepare sync processing
aredenba-rh a34a7ea
feat(ui): add entity and relationship schema artifacts to graph manag…
aredenba-rh ab37405
fix(extraction): improve live thinking stream and raise sticky turn t…
aredenba-rh 8babd8d
fix(extraction): flush live thinking stream and raise sticky agent ma…
aredenba-rh dd0be37
fix(agent-runtime): capture streamed SDK replies after tool-heavy turns
aredenba-rh 6056518
fix(agent-runtime): fail empty SDK turns instead of fake success reply
aredenba-rh d3895d4
fix(agent-runtime): stop heartbeat from cancelling SDK message reads
aredenba-rh 8f084bf
feat(extraction): add schema authoring tools and skills for graph ass…
aredenba-rh db44c10
feat(manage-kg): load design artifacts from DB and persist agent grap…
aredenba-rh 9bd5df7
fix(dev-ui): focus new URL field when adding data source rows
aredenba-rh cf73af8
fix(dev-ui): stop phantom footer scroll on graph management page
aredenba-rh 2481918
fix(dev-ui): remove outer scroll on graph management step
aredenba-rh 376813b
fix(extraction): sign workload tokens as JWTs for sticky session auth
aredenba-rh 4517fe4
fix(dev-ui): eliminate phantom page scroll below app shell
aredenba-rh 022bfc1
feat(manage-kg): improve GMA chat UX and repository workspace paths
aredenba-rh 1058404
fix(dev-ui): sync pnpm lockfile for markdown chat dependencies
aredenba-rh f4e3aef
fix(dev-ui): compact schema entities panel on graph management
aredenba-rh 4687527
fix(dev-ui): auto-grow GMA composer to fit full draft message
aredenba-rh 86765c6
fix(dev-ui): tighten graph management layout and mode controls
aredenba-rh d8c9073
feat(management): support prepopulated relationship types
aredenba-rh 43f5e4e
fix(dev-ui): preserve scroll positions on graph management updates
aredenba-rh 6734182
feat(extraction): equip GMA for instance prepopulation and longer turns
aredenba-rh 2f041de
feat(extraction): add GMA bulk prepopulation and strict mutation pref…
aredenba-rh 1ee4415
feat(graph): bidirectional relationship pairs with twin edge instance…
aredenba-rh 825b0c2
feat(extraction): allow one-hour GMA sticky turn timeout (#760)
aredenba-rh e7824f7
feat(extraction): complete GMA bootstrap guidance and runtime improve…
aredenba-rh 0859188
feat(extraction): default GMA to execute-first prepopulation via gene…
aredenba-rh d51f70c
feat(extraction): require entities-first script-driven prepopulation
aredenba-rh ae18502
feat(extraction): streamline GMA prepopulation and fix writable works…
aredenba-rh 1856330
feat(graph): make source_path optional on node and edge CREATE
aredenba-rh 7ff7727
refactor(extraction): drop --source-path from JSONL converters
aredenba-rh b5d6f99
fix(extraction): grant GMA agent write access to sticky session works…
aredenba-rh fa8b3ef
feat(extraction): strengthen GMA prepopulation templates and readiness
aredenba-rh f9cff14
fix(management): report true design artifact instance counts
aredenba-rh ba8f1d6
fix(management): show bidirectional relationships as one design-artif…
aredenba-rh d632287
feat(extraction): add job sets UI, orchestration, and phase3 workspac…
aredenba-rh 9fe1569
agent session service
aredenba-rh 9dc8eae
feat(extraction): run extraction jobs via agentic-ci sandboxes
aredenba-rh 85bb993
fix(extraction): remove stale sticky containers before session restart
aredenba-rh 39c1a79
refactor(extraction): drop unused repo skills mount from sticky runtime
aredenba-rh 39d4028
feat(extraction): let GMA save extraction job sets via workload tools
aredenba-rh 40ea110
feat(extraction): require exhaustive per-instance job set descriptions
aredenba-rh bccf1b7
feat(extraction): template per-instance job descriptions by property …
aredenba-rh 05612f2
fix(ui): keep job status visible during extraction polling refresh
aredenba-rh 1a99164
feat(extraction): job set controls, live activity, and agentic-ci fixes
aredenba-rh 1d91598
feat(extraction): materialize job workdirs and gate on applied mutations
aredenba-rh 7ad79e9
docs(extraction): require explicit IGNORE lines in per-instance descr…
aredenba-rh 8b72781
fix(extraction): default 20 workers and tighten job-set authoring
aredenba-rh 67cc547
fix(extraction): hydrate missing JobPackages before workspace materia…
aredenba-rh a86d892
feat(extraction): archive jobs, schema-driven GMA, and fix GitHub pre…
aredenba-rh 710fc55
feat(dev): add backup/restore and harden GMA prepopulation against gr…
aredenba-rh ad08a82
feat(extraction): streamline GMA prepopulation with run_scanner and a…
aredenba-rh 24be9c5
feat(extraction): allow GMA DELETE mutations and archive sessions as …
aredenba-rh 2a46a3b
feat(extraction): document unique edge labels for GMA and record turn…
aredenba-rh 14e1fd5
feat(extraction): pre-seed job context and reduce agent discovery ove…
aredenba-rh 16a561a
feat(extraction): add one-off mutations mode and graph writes history UI
aredenba-rh 2897324
refactor(dev-ui): remove session pointers from graph management
aredenba-rh fd006a3
Dont show #RelationshipTypes x2.. show real count
aredenba-rh 5ca0f42
feat(extraction,dev-ui): speed bulk GMA mutations and improve manage …
aredenba-rh 53ab5cd
feat(dev-ui): improve schema entity/relationship browsing in graph ma…
aredenba-rh e452e43
feat(gma): per-mode sticky sessions with explicit start/end lifecycle
aredenba-rh 96f3340
kg-backups
aredenba-rh fe56f75
feat(extraction): harden sticky runtimes and add OpenShell sandbox ba…
aredenba-rh 2526ed6
feat(extraction): OpenShell worker sandboxes, GMA inference routing, …
aredenba-rh 9ff91a3
fix(extraction): gateway import, job event filters, and archived stat…
aredenba-rh 8d95716
fix(extraction): release DB sessions during sandbox runs and scale wo…
aredenba-rh 0c619c5
fix(extraction): reconcile stuck runs and seed KG-wide prepare baselines
aredenba-rh 3246575
feat(management): add maintenance pipeline and fix workspace hub status
aredenba-rh 108fee3
feat(extraction): capture instance change snapshots for archived job …
aredenba-rh 4c14113
feat(dev-ui): redesign Maintain step with live job activity and clear…
aredenba-rh e822043
fix(maintenance): complete manual runs synchronously and guard baseli…
aredenba-rh 13d0b97
feat(maintenance): materialize baseline/HEAD snapshots and diffs for …
aredenba-rh 39dd046
fix(maintenance): improve GitHub auth errors for diff collection
aredenba-rh 23829ed
feat(maintenance): split run controls, regenerate jobs, and extend ti…
aredenba-rh d861ee4
feat(maintenance): clarify baseline timing and guard destructive rege…
aredenba-rh d5c2fdd
refactor(maintenance): simplify Maintain commit view and lazy ref ref…
aredenba-rh 425c869
feat(api): bundle OpenShell CLI and gateway-ready entrypoint for stage
aredenba-rh 301c560
feat(deploy): wire OpenShell sidecar, Vault secrets, and stage extrac…
aredenba-rh 3d5624a
feat(deploy): add OpenShell gateway image build and Konflux pipelines
aredenba-rh eb7edfb
fix(deploy): pin stage images to immutable Konflux commit SHAs
aredenba-rh d26f1ea
refactor(deploy): drop deprecated kartograph apps manifests from PR
aredenba-rh 9640afc
fix(extraction): require configured workload JWT signing key outside dev
aredenba-rh 1e68c67
fix(extraction): scope maintenance baseline fetch to tenant data sources
aredenba-rh e5f02aa
fix(extraction): enforce bundled OpenShell policies with hard_require…
aredenba-rh 9be8050
fix(extraction): bind workload JWTs to issuer and audience claims
aredenba-rh f1d5305
fix(extraction): harden sandbox tar extract, session paths, and works…
aredenba-rh f2a8867
fix(extraction): tenant-scope session journal writes by workload token
aredenba-rh 5855d8f
fix(extraction): validate workload JWT scope identifier formats at au…
aredenba-rh 0d3dc5a
fix(extraction): split workload API authorization into read/write/adm…
aredenba-rh e9cd6cc
fix(ci): harden Konflux update-deploy-tag finally tasks
aredenba-rh 6aefdc8
fix(ci): resolve ruff failures and CodeRabbit quick-win review items
aredenba-rh eacb128
fix(ci): ruff format and extraction architecture boundary fixes
aredenba-rh e5bf360
fix(ci): resolve mypy failures blocking Test Python and Konflux api
aredenba-rh 3083465
fix(ci): restrict pytest discovery to tests/ and fix conftest plugins
aredenba-rh b7504b4
fix(tests): repair sync_instances parser and integration fixture wiring
aredenba-rh f854a63
fix(tests): argparse --input flag and canonical schema in integration…
aredenba-rh 76afce3
fix(tests): use --input flag in relationships_to_jsonl unit test
aredenba-rh 5ce42f8
fix(ci): resolve Konflux API build and CodeQL alerts
aredenba-rh 4a75a79
fix: address PR review comments on specs, API, and dev-ui
aredenba-rh b3d69ae
fix(openshell): drop invalid --enforcement flag from policy update
aredenba-rh 4707ea3
fix: resolve mypy pipeline_mode error and clarify agent-runtime error…
aredenba-rh cf22655
fix(graph): use metadata column name in type definition upsert
aredenba-rh 030b3c0
ci: restrict GITHUB_TOKEN permissions in tests workflow
aredenba-rh f3a2cd2
fix(agent-runtime): avoid leaking exception details in turn errors
aredenba-rh File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,206 @@ | ||
| --- | ||
| name: subagent-delivery | ||
| description: > | ||
| Executes a GitHub issue end-to-end with consistent branch, test, PR, and merge behavior. | ||
| Use when implementing units of work with sub-agents, preparing pull requests, resolving merge | ||
| conflicts, or when the user asks to run issue-by-issue delivery into feature/manage-knowledge-graph. | ||
| Supports parallel delivery waves with explicit blocker-question escalation. | ||
| --- | ||
|
|
||
| # Subagent Delivery Protocol | ||
|
|
||
| Follow this protocol for every assigned issue. | ||
|
|
||
| System prompt template for spawned Claude instances: | ||
|
|
||
| - `skills/subagent-delivery/claude-instance-system-prompt.txt` | ||
|
|
||
| ## Parallel Execution Model | ||
|
|
||
| Use this model whenever multiple issues are independent: | ||
|
|
||
| 1. One subagent per issue branch. | ||
| 2. Shared target branch: `feature/manage-knowledge-graph`. | ||
| 3. No shared working branch between agents. | ||
| 4. Each subagent works to PR-ready state independently. | ||
| 5. Merge in dependency order (foundational backend before UI polish when coupled). | ||
|
|
||
| If two issues touch the same files heavily, either: | ||
| - serialize those two issues, or | ||
| - split scope so each agent owns non-overlapping symbols. | ||
|
|
||
| ## Section-Wave Execution Model (Required) | ||
|
|
||
| When the user asks for "whole sections at a time", execute in waves aligned to tracker sections: | ||
|
|
||
| 1. **Section A: Core lifecycle/data** | ||
| - `#643 #644 #645 #646 #659 #660 #661 #662 #663` | ||
| 2. **Section B: Extraction runtime/session** | ||
| - `#649 #650 #651 #652 #653 #654` | ||
| 3. **Section C: Operations/security/integration** | ||
| - `#665 #667 #670 #671 #672 #673` | ||
|
|
||
| Wave rules: | ||
|
|
||
| 1. Run independent issues in parallel with one Claude instance per issue. | ||
| 2. Respect dependencies inside the section (foundation issues first). | ||
| 3. Keep all PRs targeting `feature/manage-knowledge-graph`. | ||
| 4. Do not start the next section until current section is merged or explicitly deferred. | ||
| 5. For each section, maintain a live status board: | ||
| - `queued`, `in_progress`, `blocked`, `in_review`, `merged` | ||
|
|
||
| ## Scope and Inputs | ||
|
|
||
| Before coding, gather: | ||
|
|
||
| 1. Issue number and acceptance criteria. | ||
| 2. Target branch: `feature/manage-knowledge-graph`. | ||
| 3. Current repository state (`git status`, `git branch -vv`). | ||
| 4. Context pack (required): | ||
| - relevant specs under `specs/` | ||
| - bounded context ownership (management/ingestion/extraction/graph/querying/ui) | ||
| - existing tests near touched code | ||
| - architectural constraints from `AGENTS.md` | ||
|
|
||
| If acceptance criteria are ambiguous, ask one focused question before implementation. | ||
|
|
||
| ## Claude Instance Spawn Contract | ||
|
|
||
| For each issue, provide the Claude instance: | ||
|
|
||
| 1. Issue ID + title + acceptance criteria summary. | ||
| 2. Branch naming requirement: | ||
| - `feat/issue-<id>-<short-scope>` or `fix/issue-<id>-<short-scope>` | ||
| 3. Required reads: | ||
| - `AGENTS.md` | ||
| - relevant `specs/*.spec.md` | ||
| - related tests in touched context | ||
| 4. TDD requirement: | ||
| - tests first, then implementation, then verification | ||
| 5. Output contract: | ||
| - branch | ||
| - commit(s) | ||
| - test commands and results | ||
| - PR URL | ||
| - blockers/questions | ||
|
|
||
| ## Blocker Question Protocol (Required) | ||
|
|
||
| Subagents must be able to stop and ask questions immediately. | ||
|
|
||
| Trigger a blocker question when any of these is true: | ||
|
|
||
| 1. More than one valid interpretation of acceptance criteria. | ||
| 2. Missing security/tenancy/authorization decision. | ||
| 3. Required external behavior is unspecified. | ||
| 4. You would otherwise make an irreversible guess. | ||
|
|
||
| When blocked: | ||
|
|
||
| 1. Stop implementation at the decision boundary. | ||
| 2. Ask one concise question in the active agent chat immediately. | ||
| 3. Include: | ||
| - what is ambiguous | ||
| - 2-3 concrete options | ||
| - recommended option and why | ||
| 4. If working from a GitHub issue, mirror the same question as an issue comment so the orchestrator can batch unresolved questions across agents. | ||
| 5. Continue only non-blocked work; do not guess on blocked decisions. | ||
|
|
||
| If a blocker impacts multiple active instances: | ||
|
|
||
| 1. Pause affected issues. | ||
| 2. Continue unaffected issues in parallel. | ||
| 3. Post one consolidated orchestrator decision update. | ||
| 4. Resume paused issues with explicit instruction delta. | ||
|
|
||
| ## Git Workflow | ||
|
|
||
| 1. Ensure local target branch is up to date: | ||
| - `git checkout feature/manage-knowledge-graph` | ||
| - `git pull --ff-only` | ||
| 2. Create a dedicated branch per issue: | ||
| - `feat/issue-<id>-<short-scope>` for features | ||
| - `fix/issue-<id>-<short-scope>` for fixes | ||
| 3. Never mix multiple issues in one branch. | ||
| 4. Keep commits atomic and conventional (`feat:`, `fix:`, `refactor:`, `test:`). | ||
|
|
||
| ## Implementation Workflow (TDD Required) | ||
|
|
||
| 1. Read relevant spec(s) and affected bounded context code first. | ||
| 2. Write/adjust tests for expected behavior before implementation. | ||
| 3. Implement minimal code to satisfy tests. | ||
| 4. Run focused tests first, then broader suite for touched context. | ||
| 5. Run lints/type checks for changed files when applicable. | ||
| 6. If behavior depends on configuration, use settings/DI instead of hardcoding. | ||
| 7. If new ambiguity appears mid-implementation, invoke the Blocker Question Protocol. | ||
|
|
||
| ## PR Workflow | ||
|
|
||
| 1. Push branch to origin with upstream tracking. | ||
| 2. Open PR against `feature/manage-knowledge-graph`. | ||
| 3. Use this body structure: | ||
|
|
||
| ```markdown | ||
| ## Summary | ||
| - <what changed and why> | ||
| - <important architectural/security note> | ||
|
|
||
| ## Testing | ||
| - [x] <unit tests run> | ||
| - [x] <integration tests run if applicable> | ||
| - [ ] <manual verification if pending> | ||
|
|
||
| ## Risks | ||
| - <none> or <known risk + mitigation> | ||
| ``` | ||
|
|
||
| 4. Link the issue in PR body using `Closes #<id>` when appropriate. | ||
| 5. If any assumptions were made, include an explicit assumptions list in PR body. | ||
|
|
||
| ## Merge and Conflict Handling | ||
|
|
||
| 1. Before merge, ensure CI checks are green. | ||
| 2. If branch is stale, rebase or merge target branch cleanly. | ||
| 3. Resolve conflicts preserving: | ||
| - Spec-required behavior | ||
| - Existing user changes | ||
| - Authorization and tenancy boundaries | ||
| 4. Re-run tests after conflict resolution. | ||
| 5. Merge into `feature/manage-knowledge-graph` only after verification. | ||
|
|
||
| ## Orchestrator Monitoring Loop (Required) | ||
|
|
||
| During active waves, run this loop continuously: | ||
|
|
||
| 1. Poll each PR for: | ||
| - mergeability | ||
| - CI status | ||
| - review comments requiring changes | ||
| 2. If merge conflict appears: | ||
| - rebase/merge target branch into issue branch | ||
| - resolve conflicts preserving spec behavior | ||
| - rerun relevant tests | ||
| - push and re-check PR | ||
| 3. If CI fails: | ||
| - fix in same issue branch | ||
| - do not move issue scope | ||
| 4. Update section status board and report progress to user. | ||
|
|
||
| ## Orchestrator Handoff Contract | ||
|
|
||
| Each subagent must hand back: | ||
|
|
||
| 1. Branch name and PR URL. | ||
| 2. Test commands run with pass/fail status. | ||
| 3. Any unresolved questions (if still blocked). | ||
| 4. Any assumptions that were taken and why they are safe. | ||
|
|
||
| ## Non-Negotiables | ||
|
|
||
| - Do not use destructive git commands. | ||
| - Do not skip tests. | ||
| - Do not disable hooks. | ||
| - Do not commit secrets or credentials. | ||
| - Prefer fakes over mocks in unit tests when testing domain/application behavior. | ||
| - Do not invent acceptance criteria beyond the issue/spec without asking. | ||
|
|
67 changes: 67 additions & 0 deletions
67
skills/subagent-delivery/claude-instance-system-prompt.txt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,67 @@ | ||
| You are a focused delivery Claude instance assigned to exactly one Kartograph GitHub issue. | ||
|
|
||
| Mission: | ||
| - Deliver the assigned issue end-to-end with TDD discipline. | ||
| - Open a PR against `feature/manage-knowledge-graph`. | ||
| - Stop and ask immediately when blocked by ambiguity. | ||
|
|
||
| Hard constraints: | ||
| 1. Scope | ||
| - Work only on the assigned issue. | ||
| - Do not expand scope to neighboring issues. | ||
| 2. Branching | ||
| - Start from latest `feature/manage-knowledge-graph`. | ||
| - Use branch `feat/issue-<id>-<short-scope>` or `fix/issue-<id>-<short-scope>`. | ||
| 3. Specs and architecture | ||
| - Read `AGENTS.md` first. | ||
| - Read all relevant `specs/*.spec.md` for your issue. | ||
| - Preserve bounded-context boundaries and authorization rules. | ||
| 4. TDD | ||
| - Write/adjust tests first. | ||
| - Implement minimal code to satisfy tests. | ||
| - Run focused tests; run broader suite as needed by touched context. | ||
| 5. Safety | ||
| - Never use destructive git commands. | ||
| - Never commit secrets. | ||
| - Never skip required checks. | ||
|
|
||
| Blocker protocol (mandatory): | ||
| - Trigger if acceptance criteria are ambiguous, security/tenancy decision is unclear, or behavior is unspecified. | ||
| - Stop at decision boundary and ask one concise question with: | ||
| - ambiguity summary | ||
| - 2-3 concrete options | ||
| - recommended option with rationale | ||
| - Mirror the blocker question on the GitHub issue as a comment. | ||
| - Continue only non-blocked work. | ||
|
|
||
| Execution checklist: | ||
| 1. Parse issue acceptance criteria. | ||
| 2. Inspect affected code and tests. | ||
| 3. Add failing tests for required behavior. | ||
| 4. Implement and make tests pass. | ||
| 5. Run lint/type/test for touched area. | ||
| 6. Commit atomically using conventional commit message. | ||
| 7. Push branch and open PR to `feature/manage-knowledge-graph`. | ||
|
|
||
| PR body format: | ||
| ## Summary | ||
| - what changed and why | ||
| - key architecture/security note | ||
|
|
||
| ## Testing | ||
| - [x] commands run and results | ||
| - [ ] any pending verification | ||
|
|
||
| ## Risks | ||
| - none or explicit risk + mitigation | ||
|
|
||
| Include `Closes #<issue-id>` where appropriate. | ||
|
|
||
| Required handoff output: | ||
| 1. Issue ID | ||
| 2. Branch name | ||
| 3. Commit SHA(s) | ||
| 4. Test commands and pass/fail | ||
| 5. PR URL | ||
| 6. Open blockers/questions (if any) | ||
| 7. Assumptions made |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,38 @@ | ||
| Section wave launch template (one Claude instance per issue) | ||
|
|
||
| Prerequisites: | ||
| - Read: `skills/subagent-delivery/SKILL.md` | ||
| - System prompt: `skills/subagent-delivery/claude-instance-system-prompt.txt` | ||
| - Base branch: `feature/manage-knowledge-graph` | ||
|
|
||
| Per-instance launch packet: | ||
|
|
||
| ISSUE: <id> - <title> | ||
| TARGET BRANCH: feature/manage-knowledge-graph | ||
| WORK BRANCH: feat/issue-<id>-<short-scope> | ||
|
|
||
| Required context files: | ||
| - AGENTS.md | ||
| - <relevant spec files> | ||
| - <relevant code files> | ||
| - <relevant tests> | ||
|
|
||
| Acceptance criteria summary: | ||
| - <criterion 1> | ||
| - <criterion 2> | ||
|
|
||
| Execution requirements: | ||
| 1) TDD: tests first | ||
| 2) Implement minimal passing code | ||
| 3) Run focused tests + lint | ||
| 4) Commit atomically (conventional commit) | ||
| 5) Open PR to feature/manage-knowledge-graph | ||
| 6) Report branch, tests, PR URL, blockers | ||
|
|
||
| Blocker handling: | ||
| - Ask one focused blocker question immediately. | ||
| - Include options + recommendation. | ||
| - Mirror blocker question on issue comment. | ||
|
|
||
| Orchestrator status line format: | ||
| [Issue #<id>] <queued|in_progress|blocked|in_review|merged> | Branch: <branch> | PR: <url-or-pending> |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.