Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
14 commits
Select commit Hold shift + click to select a range
3fbce01
docs(reins): knowledge workspaces spec and retrospective (CLEAN-48)
maksymhryzodub-prog Aug 27, 2026
7a1dcb7
docs(reins): implementation plan for knowledge base isolation (CLEAN-48)
maksymhryzodub-prog Aug 27, 2026
d25d186
chore: upgrade spec-kit integration to 1.0.1 (CLEAN-48)
maksymhryzodub-prog Aug 27, 2026
3e8895a
docs(reins): dependency-ordered task list for knowledge base isolatio…
maksymhryzodub-prog Aug 27, 2026
7c3c589
feat(reins): retrieval-instance sub-slice and per-base client address…
maksymhryzodub-prog Aug 27, 2026
0e9f407
feat(reins): base-scoped retrieval, graph and tool isolation with res…
maksymhryzodub-prog Aug 27, 2026
6fc962d
feat(reins): searchable paged knowledge list and agent-side bindings …
maksymhryzodub-prog Aug 27, 2026
78bb663
feat(reins): remove dead settings, fold retrieval tuning, honest base…
maksymhryzodub-prog Aug 27, 2026
4149f6e
fix(reins): active tab highlight, default section, instant entity pic…
maksymhryzodub-prog Aug 27, 2026
ffcd25b
feat(reins): derived base readiness, per-source status surface, singl…
maksymhryzodub-prog Aug 27, 2026
45d7547
docs(reins): verification log and task closure for knowledge isolatio…
maksymhryzodub-prog Aug 27, 2026
70ef746
fix(reins): resolve index status badge by its registered layer name (…
maksymhryzodub-prog Aug 28, 2026
45bce76
feat(reins): the module explains itself — purpose, Index, and each ta…
maksymhryzodub-prog Aug 28, 2026
c1e5c02
fix(reins): satisfy nuxt typecheck on the custom-slot tab href (CLEAN…
maksymhryzodub-prog Aug 28, 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
2 changes: 1 addition & 1 deletion .specify/feature.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"feature_directory": "specs/006-agent-workspace-tabs"
"feature_directory": "specs/007-knowledge-workspaces-research"
}
2 changes: 1 addition & 1 deletion .specify/init-options.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@
"here": true,
"integration": "claude",
"script": "py",
"speckit_version": "0.16.5.dev0"
"speckit_version": "1.0.1"
}
2 changes: 1 addition & 1 deletion .specify/integration.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"version": "0.16.5.dev0",
"version": "1.0.1",
"integration_state_schema": 1,
"installed_integrations": [
"claude"
Expand Down
22 changes: 11 additions & 11 deletions .specify/integrations/claude.manifest.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
{
"integration": "claude",
"version": "0.16.5.dev0",
"installed_at": "2026-08-20T13:24:52.164068+00:00",
"version": "1.0.1",
"installed_at": "2026-08-27T12:40:23.231463+00:00",
"files": {
".claude/skills/speckit-analyze/SKILL.md": "96d497fdcd3bfbb691fb290f31cd6a8729aafb2cd976d1113215f5ee94530a43",
".claude/skills/speckit-clarify/SKILL.md": "6b97352c3c828279f6a9d5d206a6b3eba44359a13a3d581ea36a227c39dc71c2",
".claude/skills/speckit-constitution/SKILL.md": "d0c232e45f74fa777acaf91037aea46bc7c268efeb9b1513f37a41594be761d4",
".claude/skills/speckit-implement/SKILL.md": "8be58f234bf25ba066f1a21e104b51568369449e11d4e793e71b70ec3eac7f1b",
".claude/skills/speckit-converge/SKILL.md": "0655f40bc6f9c7dd3bdb923707a53f5fed5e66ff0a43e8c0f44da217c3002f65",
".claude/skills/speckit-plan/SKILL.md": "2dfe227110d884762449b9e90bf6fb891fb4379131bfe1b85af7f3fc01017601",
".claude/skills/speckit-checklist/SKILL.md": "8aabab72635702f0e8dfccee83bab74c38275e7d9029db8be58940cc3b10d8e4",
".claude/skills/speckit-analyze/SKILL.md": "a11a65861668519a3e85cf9120c548b33df9446d222733ce7285b01628add03a",
".claude/skills/speckit-clarify/SKILL.md": "c1921b3f92c0b59be50fdf9611cb38235cdfcb3effb7cd3b79d5f989642a5311",
".claude/skills/speckit-constitution/SKILL.md": "21f82a5f88ad905ef2262d57c449cafe6b27a05f750a6135417505249821e9ec",
".claude/skills/speckit-implement/SKILL.md": "03d69ede00a9a0c6c77bdabad1fb788cb4c00bb66fdc4a50afc5580d22533de1",
".claude/skills/speckit-converge/SKILL.md": "f19cad806e42e8242218c01e3a9eeb756aebe83f88ec6b15c7311fdde1efddb9",
".claude/skills/speckit-plan/SKILL.md": "d0aabc579afbfba77659808718c6ddbc9d2a085ce2c3e042cc32a3418149b382",
".claude/skills/speckit-checklist/SKILL.md": "3d8dd9f8d5bdac0621eeb8a6794d55c6f4fd83dc9ba822cfa391b1eed93374eb",
".claude/skills/speckit-specify/SKILL.md": "42fe016b9183bb8fa7ce7c65e04ea8d382f7f2abfc94849aeead999247675886",
".claude/skills/speckit-tasks/SKILL.md": "fbebbb7540d9c0e5a048809c1f65c752f3405d424d801b61d50831cd26ec51bf",
".claude/skills/speckit-taskstoissues/SKILL.md": "a275e1490d04da4563601e3bfecf63131c17d8852b02ac23fd0e0f72727c3c44"
".claude/skills/speckit-tasks/SKILL.md": "ea44827ab71d0bf9e8a61e2f0dec71f1798842b9777ab49377fe26cb3e932389",
".claude/skills/speckit-taskstoissues/SKILL.md": "9770fd9cd6262bd067489e47f363751c50c40b2590f410fd8839bea0458d3380"
}
}
19 changes: 10 additions & 9 deletions .specify/integrations/speckit.manifest.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
{
"integration": "speckit",
"version": "0.16.5.dev0",
"version": "1.0.1",
"installed_at": "2026-07-28T17:42:13.658910+00:00",
"files": {
".specify/scripts/bash/common.sh": "6ff86bf39f6b4684b0f80927dc7a1dadec26b4671988a3fe4d6c2523cbd3aa22",
".specify/scripts/bash/setup-plan.sh": "4469b22960f43c07c33dca00de6dedb252145e9a9ce8fbb0e63be82e02b082ab",
".specify/scripts/bash/setup-tasks.sh": "cf21ba2212b4dd5b435c5ea8527500cfd27768b86c0bbc7ebc3207759f118d27",
".specify/scripts/bash/check-prerequisites.sh": "a7d8a14ecf87332b600cd966b5d0e7cb9d594abce7e4d1ee4372b2b5b3efff06",
".specify/scripts/bash/create-new-feature.sh": "ad09a94a2c1107e25e5386a834da1d7a31f9abb06ab8bfd323a7b84038221e39",
".specify/scripts/bash/common.sh": "de9a49210b1a136e4e7b2bc0c16010a773bace22ef6fa19419b6bc652d50bc3c",
".specify/scripts/bash/setup-plan.sh": "061cec0c6d71f8f88008b4d3d7f5bbc2bfbdb85d734d9e73fc5f07a3c60c88a6",
".specify/scripts/bash/setup-tasks.sh": "4a33dd1e6c32ddc7d570f4b538572c54069192573eed0ec654d9fb826e31a4fe",
".specify/scripts/bash/check-prerequisites.sh": "a7020699e6b6011aae09cffd7b20890b1321df7a12d8fe2814841ae99cba910f",
".specify/scripts/bash/create-new-feature.sh": "fe99ea8da184380056ce8512ca5d37f67fb499ee4234835c15dcf7c4fb75451c",
".specify/templates/constitution-template.md": "ce7549540fa45543cca797a150201d868e64495fdff39dc38246fb17bd4024b3",
".specify/templates/checklist-template.md": "709d8ab8384a3a49f5e0f64479f71553ef6d6f8bb4f00281b05f47837993b536",
".specify/templates/checklist-template.md": "856532b3cb66171c662cc16f16b31a5856e4655a8666aad1e545bbfc7f603ca1",
".specify/templates/tasks-template.md": "fc29a233f6f5a27ca31f1aa46b596af6500c627441c6e62b2bc4a1d721525842",
".specify/templates/spec-template.md": "3945437fc35cd30a5b2bf7beea680337c3516826d3efa5a6b92c4a7eca1ba28e",
".specify/templates/plan-template.md": "7e637502d41eccf0ca672496636365691fdca62ef37b27ec07fcb412dbfa90d4",
Expand All @@ -23,8 +23,9 @@
".specify/scripts/python/check_prerequisites.py": "f3ef2b79a1d0dba1651a21b84e34ead4991fcbe4d07a1da29a4a8339706bf965",
".specify/scripts/python/common.py": "403e1db103336f471deec193cd6276f33550e14b686cd41295dba9b307a14ea2",
".specify/scripts/python/create_new_feature.py": "89ecff00e1db79a15547aa6480dc37f6bce977f79cc9d8ab7174ae1086d1a64e",
".specify/scripts/python/resolve_template.py": "2e80e872519609b21480e16f1b1ad7620e4469b4faf88af1ecefa8f778c768a0",
".specify/scripts/python/setup_plan.py": "272d106ce8e5325dd6f4e741f6a5efd1bb0290f415b448fecc8d877d606d321b",
".specify/scripts/python/setup_tasks.py": "9133333ba0971723d165d5575493404b43ec8d227e96ddbd3a9f63ad2cf174fe"
".specify/scripts/python/setup_tasks.py": "9133333ba0971723d165d5575493404b43ec8d227e96ddbd3a9f63ad2cf174fe",
".specify/scripts/python/resolve_template.py": "2e80e872519609b21480e16f1b1ad7620e4469b4faf88af1ecefa8f778c768a0",
".specify/scripts/bash/resolve-template.sh": "829e227096abc8bf0889889ec9f792f503ca5d395b7836a8a7eb739ee75214e7"
}
}
51 changes: 43 additions & 8 deletions .specify/scripts/bash/check-prerequisites.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
# --require-tasks Require tasks.md to exist (for implementation phase)
# --include-tasks Include tasks.md in AVAILABLE_DOCS list
# --paths-only Only output path variables (no validation)
# --template NAME Include composed template content in JSON output
# --help, -h Show help message
#
# OUTPUTS:
Expand All @@ -26,9 +27,10 @@ JSON_MODE=false
REQUIRE_TASKS=false
INCLUDE_TASKS=false
PATHS_ONLY=false
TEMPLATE_NAME=""

for arg in "$@"; do
case "$arg" in
while [[ $# -gt 0 ]]; do
case "$1" in
--json)
JSON_MODE=true
;;
Expand All @@ -41,6 +43,14 @@ for arg in "$@"; do
--paths-only)
PATHS_ONLY=true
;;
--template)
shift
if [[ $# -eq 0 ]]; then
echo "ERROR: --template requires a template name" >&2
exit 1
fi
TEMPLATE_NAME="$1"
;;
--help|-h)
cat << 'EOF'
Usage: check-prerequisites.sh [OPTIONS]
Expand All @@ -52,6 +62,7 @@ OPTIONS:
--require-tasks Require tasks.md to exist (for implementation phase)
--include-tasks Include tasks.md in AVAILABLE_DOCS list
--paths-only Only output path variables (no prerequisite validation)
--template NAME Include composed template content in JSON output
--help, -h Show this help message

EXAMPLES:
Expand All @@ -68,10 +79,11 @@ EOF
exit 0
;;
*)
echo "ERROR: Unknown option '$arg'. Use --help for usage information." >&2
echo "ERROR: Unknown option '$1'. Use --help for usage information." >&2
exit 1
;;
esac
shift
done

# Source common functions
Expand Down Expand Up @@ -156,6 +168,16 @@ if $INCLUDE_TASKS && [[ -f "$TASKS" ]]; then
docs+=("tasks.md")
fi

TEMPLATE_CONTENT=""
if [[ -n "$TEMPLATE_NAME" ]]; then
if TEMPLATE_CONTENT=$(resolve_template_content "$TEMPLATE_NAME" "$REPO_ROOT"; status=$?; printf x; exit "$status"); then
TEMPLATE_CONTENT="${TEMPLATE_CONTENT%x}"
else
echo "ERROR: Could not resolve required $TEMPLATE_NAME from the template override stack for $REPO_ROOT" >&2
exit 1
fi
fi

# Output results
if $JSON_MODE; then
# Build JSON array of documents
Expand All @@ -165,18 +187,31 @@ if $JSON_MODE; then
else
json_docs=$(printf '%s\n' "${docs[@]}" | jq -R . | jq -s .)
fi
jq -cn \
--arg feature_dir "$FEATURE_DIR" \
--argjson docs "$json_docs" \
'{FEATURE_DIR:$feature_dir,AVAILABLE_DOCS:$docs}'
if [[ -n "$TEMPLATE_NAME" ]]; then
jq -cn \
--arg feature_dir "$FEATURE_DIR" \
--argjson docs "$json_docs" \
--arg template_content "$TEMPLATE_CONTENT" \
'{FEATURE_DIR:$feature_dir,AVAILABLE_DOCS:$docs,TEMPLATE_CONTENT:$template_content}'
else
jq -cn \
--arg feature_dir "$FEATURE_DIR" \
--argjson docs "$json_docs" \
'{FEATURE_DIR:$feature_dir,AVAILABLE_DOCS:$docs}'
fi
else
if [[ ${#docs[@]} -eq 0 ]]; then
json_docs="[]"
else
json_docs=$(for d in "${docs[@]}"; do printf '"%s",' "$(json_escape "$d")"; done)
json_docs="[${json_docs%,}]"
fi
printf '{"FEATURE_DIR":"%s","AVAILABLE_DOCS":%s}\n' "$(json_escape "$FEATURE_DIR")" "$json_docs"
if [[ -n "$TEMPLATE_NAME" ]]; then
printf '{"FEATURE_DIR":"%s","AVAILABLE_DOCS":%s,"TEMPLATE_CONTENT":"%s"}\n' \
"$(json_escape "$FEATURE_DIR")" "$json_docs" "$(json_escape "$TEMPLATE_CONTENT")"
else
printf '{"FEATURE_DIR":"%s","AVAILABLE_DOCS":%s}\n' "$(json_escape "$FEATURE_DIR")" "$json_docs"
fi
fi
else
# Text output
Expand Down
Loading
Loading